鸿蒙HarmonyOS开发实战—AI功能开发(IM类意图识别,字节跳动HarmonyOS鸿蒙三面凉凉
返回值ResponseResult中responseResult为JSON字符串,体现文本分词的结果:
| 键参数名 | 说明 | 是否必选 | 值类型 | 返回值解析 |
|---|---|---|---|---|
| code | 结果码 | True | Int | 实体识别的结果码。取值包括: 0:成功1:系统正在初始化2:参数错误3:系统忙4:系统异常5:任务超时6:其它错误 |
| message | 错误信息 | True | String | 错误信息描述。 |
| intentions | 意图列表 | False | JSONArray | 详细请参考表2。 |
- 0:成功
- 1:系统正在初始化
- 2:参数错误
- 3:系统忙
- 4:系统异常
- 5:任务超时
- 6:其它错误
message 错误信息 True String 错误信息描述。 intentions 意图列表 False JSONArray 详细请参考表2。
详细意图说明
- 还款通知表示还款通知的意图分析时,“intentions”子参数描述见下表: 表2意图详情 参数名 是否必选 类型 说明 name true String 意图名,值为“repayNotice” attributes false JSONArray 意图属性,用数组表示,数组里的类型为JSONObject +deadline true JSONObject 还款截止时间,结构与实体“time”一致 +moneyInfo fale JSONArray 还款额信息,可能存在多币种,以数组形式存在,数组里的类型为JSONObject ++amount true String 还款总额 ++miniAmount false String 最低还款金额 ++unit true int 单位,0(人民币元)、1(美元) +bank false String 还款银行 +cardSuffix false String 银行卡尾号 +bankCode false String 银行简称代码 +phoneNumber false String 客服电话 +cardType true int 卡类型,其取值列表如下: 0:信用卡 1:借记卡 +accountType true int 账户类型,其取值列表如下: 0:普通个人账户(默认) 1:车贷账户
- 已还款通知 表示已经还款成功的通知,“intentions”子参数描述见下表: 参数名 是否必选 类型 说明 name true String 意图名,值为“repayedNotice” attributes false JSONArray 意图属性,用数组表示,数组里的类型为JSONObject +time false JSONObject 还款的时间,结构与实体“time”一致 +moneyInfo false JSONArray 还款额信息,可能存在多币种,以数组形式存在,数组里的类型为JSONObject ++amount true String 已还款额 ++unit true int 单位,0(人民币元)、1(美元) +bank false String 还款银行,与“银行卡尾号”二者至少存在一个 +cardSuffix false String 银行卡尾号,与“还款银行”二者至少存在一个 +bankCode false String 银行简称代码(对照代码表) +isPayOff false int 是否还清,只依据文本中出现的描述,“1”表示还清,否则无该字段 +arrears false JSONArray 还欠款信息,可能存在多币种,以数组形式存在,数组里的类型为JSONObject ++amount true String 还欠款额 ++unit true int 单位,0(人民币元)、1(美元) +cardType true int 卡类型,其取值列表如下: 0:信用卡 1:借记卡 +accountType true int 账户类型,其取值列表如下: 0:普通个人账户(默认) 1:车贷账户 +deadline false JSONObject 截止时间,结构与实体“time”一致
- 未接来电通知 表示未接来电的意图,“intentions”子参数描述见下表: 参数名 是否必选 类型 说明 attributes true JSONArray 意图属性,用数组表示,数组里的类型为JSONObject +number true String 未接来电号码 +callTime true JSONObject 未接来电时间,结构与实体“time”一致 +name false String 未接来电号码所属的人名
开发步骤
在使用IM类意图识别API时,将实现IM类意图识别的相关的类添加至工程。
import ohos.ai.nlu.ResponseResult; // 接口返回的结果类
import ohos.ai.nlu.NluClient; // 接口客户端类
import ohos.ai.nlu.NluRequestType; // 接口请求类
import ohos.ai.nlu.OnResultListener; // 异步函数,执行成功的回调结果类
import ohos.ai.nlu.util.NluError; // 调用接口返回的成功/错误码信息
复制
使用NluClient静态类进行初始化,通过异步方式获取服务的连接。
- context:应用上下文信息,应为ohos.aafwk.ability.Ability或ohos.aafwk.ability.AbilitySlice的实例或子类实例。
- listener:初始化结果的回调,可以传null。
- isLoadModel:是否加载模型,如果传true,则在初始化时加载模型;如果传false,则在初始化时不加载模型。
NluClient.getInstance().init(context, new OnResultListener(){
@Override
public void onResult(Integer result){
// 初始化成功回调,在服务初始化成功调用该函数
}
}, true);
复制
确认第二步初始化接口调用成功后,调用获取IM类意图识别方法得到分析结果,调用实例。
同一个接口同时提供了同步和异步两种方法,开发者可根据自己需要进行选择。还款通知中的时间不应早于当前时间。
- 同步接口:
String requestJson = “{text:‘您个人信用卡07月账单¥198.00,还款日07月27日【XX银行】’}”;
ResponseResult responseResult = NluClient.getInstance().getChatIntention(requestJson, NluRequestType.REQUEST_TYPE_LOCAL);
if (responseResult != null) {
// 获取接口返回结果
String result = responseResult.getResponseResult();
}
复制
- 异步接口:
String requestJson = “{text:‘您个人信用卡07月账单¥198.00,还款日07月27日【XX银行】’}”;
// 调用接口
NluClient.getInstance().getChatIntention(requestJson, NluRequestType.REQUEST_TYPE_LOCAL, new OnResultListener () {
@Override
public void onResult(ResponseResult respResult) {
// 异步返回
if (respResult != null && respResult.getCode() == NluError.SUCCESS_RESULT) {
// 获取接口返回结果
String result = respResult.getResponseResult();
}
}
});
复制
解绑服务。
/* 功能使用完毕,销毁上下文,释放资源。 */
NluClient.getInstance().destroy(context);
最后,为了能让大家更好的去学习提升鸿蒙 (Harmony OS) 开发技术,小编连夜整理了一份30个G纯血版学习资料(含视频、电子书、学习文档等)以及一份在Github上持续爆火霸榜的《纯血版华为鸿蒙 (Harmony OS)开发手册》(共计890页),希望对大家有所帮助。
纯血版鸿蒙 HarmonyOS 4.0 视频学习资料


需要以上视频学习资料小伙伴
《纯血版华为鸿蒙 (Harmony OS)开发手册》
这份手册涵盖了当前鸿蒙 (Harmony OS) 开发技术必掌握的核心知识点
纯血版鸿蒙 (Harmony OS)开发手册部分精彩内容
HarmonyOS 概念:
- 系统定义
- 技术架构
- 技术特性
- 系统安全

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数HarmonyOS鸿蒙开发工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年HarmonyOS鸿蒙开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。


既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上HarmonyOS鸿蒙开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注鸿蒙获取)
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注鸿蒙获取)**
[外链图片转存中…(img-rNpfUvrg-1712812774690)]
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
更多推荐


所有评论(0)