自然语言处理:文档sdk:index.html

JAVA SDK文档

您好,欢迎使用北京谛听机器人自然语言处理服务。本文档主要针对JAVA开发者,描述北京谛听机器人 自然语言处理接口服务的相关技术内容。如果您对文档内容有任何疑问,可以通过以下几种方式联系我们:

  1. 在开放平台控制台内提交工单,
  2. 如有疑问,进入AI社区交流:https://forum.ditingai.com
接口名称 接口能力简要描述
转为拼音 将符合标准的汉语转为汉语拼音
提取关键词 提取内容的关键关键词
自动摘要(关键句个数) 查询词汇的词,实现文本的可计算
提取词语 句话最大限度的找出新词并提取出来
对文本进行分词 对文本进行分词
提取短语_短语个数 提取短语的个数短语个数

使用JAVA SDK开发骤如下:

  1. 在[[官方网站] www.ditingai.com]下载JAVA SDK压缩包
  2. 在官方网站下载JAVA SDK压缩包。
  3. 将下载的aip-java-sdk-version.zip解压后,复制到工程文件夹中。
  4. 新建文件xx.java
  5. 引入AipNlp.java

新建xx.java

AipNlp是自然语言处理的JAVA SDK客户端,为使用自然语言处理的开发人员提供了一系列的交互方法。

参考如下代码新建一个ServiceTests.java:

package com.diting.aip;

import com.diting.aip.nlp.AipNlp;
import org.json.JSONObject;

public class ServiceTests {
    //设置APPID/AK/SK
    public static final String APP_ID = "你的appID";
    public static final String API_KEY = "你的appKey";
    public static final String SECRET_KEY = "你的secretKey";

    
    public void getPinYin() {

        // 初始化一个AipNlp
        AipNlp client = new AipNlp(APP_ID, API_KEY, SECRET_KEY);

        // 可选:设置网络连接参数
        client.setConnectionTimeoutInMillis(2000);
        client.setSocketTimeoutInMillis(60000);
        // 调用接口
        String text = "谛听AI是一家高科技公司";
        //有些字没有拼音(如标点),是否保留它们的拼音(true用none表示,false用原字符表示)
        boolean remainNone = false;
        //分隔符
        String separator = ",";
        JSONObject res = client.convertToPinyin(text, remainNone, separator);
        System.out.println(res.toString());

    }


}

在上面代码中,常量APP_IDAPI_KEYSECRET_KEY是在创建完用后,系统分配给用户的,均为字符串,用于标识用户,为访问做签名验证,在AI服务控制台中的应用列表中查看。

配置AipNlp

如果用户需要配置NlpApi的网络请求参数(一般不需要配置),可以在构造AipNlp之后调用接口设置参数,目前只支持以下参数:

接口 说明
setConnectionTimeoutInMillis 建立连接的超时时间(单位:毫秒)
setSocketTimeoutInMillis 通过打开的连接传输数据的超时时间(单位:毫秒)

文字转拼音接口用户输入一句符合汉语标准的语句,词,短语,转化为汉语拼音、

String text = "谛听AI是一家高科技公司";
//有些字没有拼音(如标点),是否保留它们的拼音(true用none表示,false用原字符表示)
boolean remainNone = false;
//分隔符
String separator = ",";
JSONObject res = client.convertToPinyin(text, remainNone, separator);

文字转拼音 请求参数详情

参数名称 是否必选 类型 说明
text string 待转换的内容
separator string 分隔符 如:。??!!;;
remainNone string 是否保留标点

文字转拼音 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data.text 转换的结果

文字转拼音 返回示例

{
  "msg": "success",
  "code": 200,
  "data": {"text":"di?ting?A?I?shi?yi?jia?gao?ke?ji?gong?si"}
}
text = "北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然";
size = 5;//数量
JSONObject jsonObject = client.extractKeyword(text, 5);

提取关键字 请求参数详情

参数名称 是否必选 类型 说明
text string 待提取的内容
size int 提取的关键字数量

提取关键字 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

提取关键字 返回示例

{
  "msg": "success",
  "code": 200,
  "data": "[自然, 人机, 语言, 有限公司, 交互]"
}
text = "北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然";
size = 5;//数量
JSONObject jsonObject = client.extractKeyword(text, 5);

提取词语 请求参数详情

参数名称 是否必选 类型 说明
text string 待提取的内容
size int 需要提取词语的数量
remainNone boolean 是否只提取词典中没有的词语

提取词语 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

提取词语 返回示例

{
  "msg": "success",
  "code": 200,
  "data": "[自然, 人机, 语言, 公司, 交互]"
}
text = "北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然";
algorithmConsts = AlgorithmConsts.MAXIMUM_MATCHING;;//算法
JSONObject jsonObject = client.seg(text, algorithmConsts );

分词 请求参数详情

参数名称 是否必选 类型 说明
text string 待提取的内容
algorithm string 指定算法,null默认双向最大匹配算法

分词 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

分词 返回示例

{
  "msg": "success",
  "code": 200,
  "data": "[谛听, 机器人, 有限公司, 人机, 自然语言, 交互, 变得, 流畅, 自然]"
}
text = "北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然";
algorithmConsts = AlgorithmConsts.MAXIMUM_MATCHING;;//算法
JSONObject jsonObject = client.segWithStopWords(text, algorithmConsts );

分词 请求参数详情

参数名称 是否必选 类型 说明
text string 待提取的内容
algorithm string 指定算法,null默认双向最大匹配算法

分词 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

分词 返回示例

{
  "msg": "success",
  "code": 200,
  "data": "[北京, 谛听, 机器人, 有限公司, 让, 人机, 自然语言, 交互, 变得, 更加, 流畅, 自然]"
}
text = "北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然";
size= 5;//数量
JSONObject jsonObject = client.extractPhrase(text, size);

提取短语 请求参数详情

参数名称 是否必选 类型 说明
text string 待提取的内容
size int 词语数量

提取短语 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

提取短语 返回示例

{
  "msg": "success",
  "code": 200,
  "data": "[交互变得, 人机自然, 北京谛听, 变得更加, 更加流畅, 机器人有限公司, 流畅自然, 自然语言, 语言交互, 谛听机器人]"
}
text = "北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然";
size= 5;//数量
JSONObject jsonObject = client.extractWords(text, size);

提取词语 请求参数详情

参数名称 是否必选 类型 说明
text string 待提取的内容
size int 词语数量

提取词语 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

提取词语 返回示例

{
  "msg": "success",
  "code": 200,
  "data": "[人机, 自然, 北京, 谛听, 流畅]"
}
text = "北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然。北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然。北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然。";
size = 1;//数量
separator = ":[,。] ";
JSONObject jsonObject = client.extractSummary(text, size,separator);

自动摘要 请求参数详情

参数名称 是否必选 类型 说明
text string 长文本
size int 摘要的个数
separator string 分割目标文档时的句子分割符,正则格式, 如:[。??!!;;]

自动摘要 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

自动摘要 返回示例

{
  "msg": "success",
  "code": 200,
  "data": "[北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然]"
}
text = "北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然。北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然。北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然。";
size = 1;//数量
separator = ":[,。] ";
JSONObject jsonObject = client.extractSummaryLength(text, size,separator);

自动摘要 请求参数详情

参数名称 是否必选 类型 说明
text string 长文本
size int 关键句个数
separator string 分割目标文档时的句子分割符,正则格式, 如:[。??!!;;]

自动摘要 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

自动摘要 返回示例

{
  "msg": "success",
  "code": 200,
  "data": "[北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然]"
}
text = "北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然。北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然。北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然。";
size = 1;//数量
JSONObject jsonObject = client.extractSummaryNum(text, size);

自动摘要 请求参数详情

参数名称 是否必选 类型 说明
text string 长文本
size int 关键句个数

自动摘要 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

自动摘要 返回示例

{
  "msg": "success",
  "code": 200,
  "data": "[让人机自然语言交互变得更加流畅自然]"
}
text = "北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然。北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然。北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然。";
size = 20;//长度
JSONObject jsonObject = client.getSummary(text, size);

自动摘要 请求参数详情

参数名称 是否必选 类型 说明
text string 长文本
size int 关键句长度

自动摘要 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

自动摘要 返回示例

{
  "msg": "success",
  "code": 200,
  "data": {"text": "让人机自然语言交互变得更加流畅自然。"}
}
text = "陆小凤";
JSONObject jsonObject = client.segSurname(text);

人名获取姓氏 请求参数详情

参数名称 是否必选 类型 说明
text string 文本

人名获取姓氏 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

人名获取姓氏 返回示例

{
  "msg": "success",
  "code": 200,
  "data": "陆"
}
text = "陆小凤";
JSONObject jsonObject = client.name(text);

人名判定 请求参数详情

参数名称 是否必选 类型 说明
text string 文本

人名判定 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

人名判定 返回示例

{
  "msg": "success",
  "code": 200,
  "data": true
}
text = "陆";
JSONObject jsonObject = client.surname(text);

判断百家姓 请求参数详情

参数名称 是否必选 类型 说明
text string 文本

判断百家姓 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

判断百家姓 返回示例

{
  "msg": "success",
  "code": 200,
  "data": true
}
text = "北京諦聽機器人有限公司,讓人機自然語言交互變得更加流暢自然";
JSONObject jsonObject = client.traditionalSegment(text);

繁体分词 请求参数详情

参数名称 是否必选 类型 说明
text string 文本

繁体分词 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

繁体分词 返回示例

{
  "msg": "success",
  "code": 200,
  "data": "[北京/ns, 諦聽/v, 機器人/n, 有限公司/n, ,/w, 讓/v, 人機/n, 自然/d, 語言/n, 交互/d, 變得/vi, 更加/d, 流暢/a, 自然/d]"
}
text = "北京諦聽機器人有限公司,讓人機自然語言交互變得更加流暢自然";
JSONObject jsonObject = client.toSimplifiedChinese(text);

繁转简 请求参数详情

参数名称 是否必选 类型 说明
text string 文本

繁转简 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

繁转简 返回示例

{
  "msg": "success",
  "code": 200,
  "data": {"text": "北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然"}
}
text = "北京谛听机器人有限公司,让人机自然语言交互变得更加流畅自然";
JSONObject jsonObject = client.toTraditionalChinese(text);

简转繁 请求参数详情

参数名称 是否必选 类型 说明
text string 文本

简转繁 返回数据参数详情

参数名称 必需 详细说明
msg 返回发信息说明
Code 状态码
Data 提取的内容

简转繁 返回示例

{
  "msg": "success",
  "code": 200,
  "data": {"text": "北京諦聽機器人有限公司,讓人機自然語言交互變得更加流暢自然"}
}

示例:

String algorithmConsts = AlgorithmConsts.MAXIMUM_MATCHING; 分词算法常量
  • 自然语言处理/文档sdk/index.html.txt
  • 最后更改: 2019/08/14 17:21
  • 由 diting