赞
踩
<!--百度云文本纠错--> <dependency> <groupId>com.baidu.aip</groupId> <artifactId>java-sdk</artifactId> <version>4.16.13</version> <exclusions> <exclusion> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> </exclusion> </exclusions> </dependency> <!-- jdk版本1.8,请在maven中加入alpn-boot的支持,否则无法开启http2.0支持--> <dependency> <groupId>org.mortbay.jetty.alpn</groupId> <artifactId>alpn-boot</artifactId> <version>8.1.13.v20181017</version> </dependency> <!-- alibaba fastjson--> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.51</version> </dependency>
返回的数据结构:
VecFragment类详情:
import lombok.Data; /** * @author wangghua * @ClassName VecFragment * @描述: 替换片段信息 * @datetime 2023年 01月 04日 13:34 */ @Data public class VecFragment { /** * 原片段 */ private String oriFrag; /** * 替换片段 */ private String correctFrag; /** * 起始(长度单位) */ private Integer beginPos; /** * 结尾(长度单位) */ private Integer endPos; }
import com.alibaba.fastjson.JSON; import com.baidu.aip.nlp.AipNlp; import org.json.JSONArray; import org.json.JSONObject; import java.util.HashMap; import java.util.List; /** * @author wangghua * @ClassName BaiduMain * @描述: * @datetime 2023年 01月 04日 9:55 */ public class BaiduMain { //设置APPID/AK/SK,在第一步的准备工作那里获取 public static final String APP_ID = "你的APPID"; public static final String API_KEY = "你的API_KEY"; public static final String SECRET_KEY = "你的SECRET_KEY"; /** * main方法 * @param args * @throws Exception */ public static void main(String[] args) throws Exception{ // 初始化一个AipNlp AipNlp client = new AipNlp(APP_ID, API_KEY, SECRET_KEY); String text = "白度一下今天的问踢"; // 传入可选参数调用接口 HashMap<String, Object> options = new HashMap<String, Object>(); // 文本纠错 JSONObject res = client.ecnet(text, options); JSONObject resultJson = res.getJSONObject("item"); String resultOriginal = resultJson.getString("correct_query"); JSONArray listQuery = resultJson.getJSONArray("vec_fragment");//获取到的结果是一个纠错的词汇JSONArray集合 String strArray = JSONObject.valueToString(listQuery);//将词汇集合转为字符串 List<VecFragment> vecFragmentList = JSON.parseArray(strArray, VecFragment.class);//将转为的字符串重新转为List集合 if (vecFragmentList.size() > 0 ){ for (VecFragment fragment:vecFragmentList) { System.out.println("错误词汇 = " + fragment.getOriFrag()); System.out.println("替换词汇 = " + fragment.getCorrectFrag()); } }else { System.out.println("没有需要替换的词汇"); } System.out.println("替换前文本:"+text); System.out.println("替换后文本:"+resultOriginal); System.out.println(res.toString(2));//这是返回的所有数据结构打印 } }
运行结果:
参考官方文档:https://cloud.baidu.com/doc/NLP/s/Nk6z52ci5
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。