public class JavaAipKg {
public static final String APP_ID = "***";
public static final String API_KEY = "*****";
public static final String SECRET_KEY = "************";
public static JSONObject kg(String data,String token) {
AipClientConfiguration cfg = new AipClientConfiguration();
cfg.setConnectionTimeoutMillis(60000);
cfg.setSocketTimeoutMillis(60000);
try
{
AipRequest request = new AipRequest();
request.setHttpMethod(HttpMethodName.POST);
request.setUri(new URI("https://aip.baidubce.com/rpc/2.0/kg/v1/cognitive/entity_annotation?access_token="+token));
request.addBody("data",String.format(data,"utf8"));
request.setConfig(cfg);
HashMap<String,String> header = new HashMap<>();
header.put("content-type","application/json");
request.setHeaders(header);
request.setBodyFormat(EBodyFormat.RAW_JSON);
int statusCode = 500;
AipResponse response = null;
for (int cnt = 0; statusCode == 500 && cnt < 3; ++cnt) {
response = AipHttpClient.post(request);
statusCode = response.getStatus();
}
String res = response.getBodyStr();
return res != null && !res.equals("") ? new JSONObject(res) : Util.getGeneralError(statusCode, "Server response code: " + statusCode);
} catch(
URISyntaxException var8)
{
var8.printStackTrace();
return Util.getGeneralError(-1, "unknown error");
}
}
public static void main(String[] args) {
//知识图谱的测试
JSONObject jsonObject = kg("{\"data\": \"腾讯公司\"}","24.6c3a2f3793ffa2083511bdebe659cbec.2592000.1530376229.282335-11332398");
System.out.println(jsonObject.toString());
// {"log_id":1265057372545737422,"entity_annotation":[
// {"offset":"2","confidence":"0.790435","concept":{
// "level1":"语言文化","level2":"文字词汇"},
// "_bdbkKgId":"7096572","_bdbkUrl":"http://baike.baidu.com/item/data/7096572",
// "mainReqRankList":"","status":"LINKED","mention":"data","desc":"英文单词"},
// {"offset":"10","confidence":"0.988495","concept":{
// "level1":"机构组织,计算机","level2":"企业&公司,网站平台"},
// "_bdbkKgId":"112204",
// "_bdbkUrl":"http://baike.baidu.com/item/%E8%85%BE%E8%AE%AF/112204",
// "mainReqRankList":"","status":"LINKED","mention":"腾讯公司","desc":"腾讯公司"}]}
//另外 还可以通过他提供的 kg的操作类 来实现, 有待去研究
AipKnowledgeGraphic kg = new AipKnowledgeGraphic(APP_ID,API_KEY,SECRET_KEY);