百度AI 语言处理之情感倾向分析
boss说研究百度AI的语义分析,给段文字分析是正面的还是反面的。查看文档找到了情感倾向分析的接口,发现是https请求。查看SDK文档,很全面。 http://ai.baidu.com/docs#/NLP-Java-SDK/47ecf957
一、下载语言处理基础技术 Java SDK
下载地址:https://ai.baidu.com/sdk#nlp
三个jar包全部导入Eclipse工程中
二、根据官方文档编写测试类
注意:
1、AipNlp是百度官方编写的自然语言处理的Java客户端,为使用自然语言处理的开发人员提供了一系列的交互方法。
用户可以参考如下代码新建一个AipNlp,初始化完成后建议单例使用,避免重复获取access_token:
通过学习 eclipse如何查看jar包的源代码 在Eclipse中安装插件 jd-eclipse-site-1.0.0-RC2 查看aip-java-sdk-4.4.1.jar的源码,就会发现百度做的很全面。里面也包括了获取accesstoken。但是没发现token过期的判断处理,需要注意!
package com.baidu.ai;
import java.util.HashMap;
import org.json.JSONObject;
import com.baidu.aip.nlp.AipNlp;
/*
* AipNlp是自然语言处理的Java客户端,为使用自然语言处理的开发人员提供了一系列的交互方法。
用户可以参考如下代码新建一个AipNlp,初始化完成后建议单例使用,避免重复获取access_token:
*/
public class Sample {
// 设置APPID/AK/SK
public static final String APP_ID = "你的 App ID";
public static final String API_KEY = "你的 Api Key";
public static final String SECRET_KEY = "你的 Secret Key";
public static void main(String[] args) {
// 新建一个AipNlp,初始化完成后建议单例使用,避免重复获取access_token:
AipNlp client = new AipNlp(APP_ID, API_KEY, SECRET_KEY);
// 可选:设置网络连接参数
client.setConnectionTimeoutInMillis(2000);
client.setSocketTimeoutInMillis(60000);
// 可选:设置代理服务器地址, http和socket二选一,或者均不设置
// client.setHttpProxy("proxy_host", proxy_port); // 设置http代理
// client.setSocketProxy("proxy_host", proxy_port); // 设置socket代理
// 可选:设置log4j日志输出格式,若不设置,则使用默认配置
// 也可以直接通过jvm启动参数设置此环境变量
// System.setProperty("aip.log4j.conf", "path/to/your/log4j.properties");
// 调用接口
String text = "百度是一家高科技公司";
// 传入可选参数调用接口
HashMap<String, Object> options = new HashMap<String, Object>();
//情感倾向分析
JSONObject res = client.sentimentClassify(text, options);
System.out.println(res.toString(2));
}
}