4.4.1 初始化 Client
NlgClient是访问语言生成的工具类,通过构造认证信息类和选择认证方式去初始化 NlgClient,然后用对应实例去访问接口。初始化支持AK/SK认证和Token认证两种方 式。
AK/SK 认证方式
////参考AK/SK认证章节获取ak/sk,参考获取SDK章节获取region、参考获取项目ID章节获取projectId //例如用户的ak值为{ak},sk值为{sk},region值为{region},projectId值为{projectId},则构造Client如下 //AuthInfo authInfo = new AuthInfo("{ak}","{sk}","{region}","{projectId}");
////构造完AuthInfo,初始化对应的Client,此时构造方法第一个参数要选择AuthMode.AKSK //NlgClient client = new NlgClient(AuthMode.AKSK,authInfo);
////支持对客户端设置网络代理进行访问,参数proxyHost表示域名,8080表示端口,username表示用户名,
password表示密码。如果不需要代理,不用设置
//client.setProxyWithAuth("proxyHost",8080,"username","password");
Token 认证方式
////参考获取SDK章节获取region、参考获取项目ID章节获取projectId
//例如用户的用户名为{userName},密码值为{pwd},所属帐号为{domainName},region值为{region},projectId值为 {projectId},则构造Client如下
//一个帐号下可以有多个用户,如果用户使用帐号本身登录,那么userName和domainName 值相等,都传帐号 名即可//
AuthInfo authInfo = new AuthInfo("{userName}","{pwd}","{domainName}","{region}","{projectId}");
////构造完AuthInfo,初始化对应的Client,此时构造方法第一个参数要选择AuthMode.TOKEN //NlgClient client = new NlgClient(AuthMode.TOKEN,authInfo);
////支持对客户端设置网络代理进行访问,参数proxyHost表示域名,8080表示端口,username表示用户名,
password表示密码。如果不需要代理,不用设置
//client.setProxyWithAuth("proxyHost",8080,"username","password");
4.4.2 文本摘要(领域版)
● 请求示例
//按照初始化Client章节选择认证方式构造client,同一个认证Client建议以单例形式构造使用,避免频繁创 建对象。以AKSK方式为例
NlgClient client = new NlgClient(AuthMode.AKSK,authInfo);
SummaryReq req = new SummaryReq();
//文本详细内容 2G/3G/4G等多制式," +
"在多频多模网络发展策略下可以高效利用宝贵的站点资源,大幅降低站点获取难度和减少站点租
SummaryResp resp = client.domainSummary(req);
} catch (NlpException e) {
//失败统一以异常形式抛出,详情见异常类说明。客户端自行处理异常 }
● SummaryReq 类参数说明见表4-28。
表4-28 SummaryReq 类参数说明 参数名
称
是否必 选
类型 说明
content 是 String 文本正文(目前仅支持UTF-8编码),长度为 1~10000。(注:文本语言类型需和lang字段 保持一致)。
title 否 String 文本标题(目前仅支持UTF-8编码),长度为 0~1000。
lang 否 String 支持的文本语言类型,目前支持中文(zh)和 英文(en),默认为中文。
lengthL
imit 否 Float 生成摘要的长度限制。
● length_limit > 1,则返回结果为字数最接 近该值的摘要。
● 0 <= length_limit <= 1,则返回结果为长 度百分比最接近该值的摘要。
默认数值为0.3。
type 否 Integer 支持的领域类型,取值如下(目前只支持通用 领域),默认为通用领域:
0:通用领域
● SummaryResp 类参数说明见表4-29。
表4-29 SummaryResp 类参数说明
参数名称 类型 说明
summary String 根据文本请求体,返回摘要结果。
4.4.3 诗歌生成
● 请求示例
//按照初始化Client章节选择认证方式构造client,同一个认证Client建议以单例形式构造使用,避免频繁创 建对象。以AKSK方式为例
NlgClient client = new NlgClient(AuthMode.AKSK,authInfo);
PoemReq req = new PoemReq();
req.setTitle("咏梅");
req.setType(PoemConstant.EIGHT_LINE_WITH_FIVE_CHAR);
req.setAcrostic(false);
try {
PoemResp resp = client.composePoem(req);
} catch (NlpException e) {
//失败统一以异常形式抛出,详情见异常类说明。客户端自行处理异常 }
● PoemReq 类参数说明见表4-30。
表4-30 PoemReq 类参数说明 参数名
称
是否必 选
类型 说明
title 是 String 诗歌标题,目前仅支持UTF-8编码,仅支持中 文,长度为1-10。
type 是 Integer 诗歌类型,取值如下:
0:五言绝句 1:七言绝句 2:五言律诗 3:七言律诗 acrostic 否 Boolean 是否藏头诗。
● PoemResp 参数说明见表4-31。
表4-31 PoemResp 类参数说明
参数名称 类型 说明
poem List<String> 根据文本请求体,返回生成的诗歌。