HarmonyOS学习路之开发篇—AI功能开发(关键字提取)

简介: 在日常生活中充满了各种各样的信息,这些信息千变万化。文本语言作为信息传递的一种载体,同样面临有用信息和无用信息糅杂在一起的问题。关键字提取帮助用户在众多文本信息中快速提取出关键信息和核心内容,节省时间提高效率。

关键字提取概述

在日常生活中充满了各种各样的信息,这些信息千变万化。文本语言作为信息传递的一种载体,同样面临有用信息和无用信息糅杂在一起的问题。关键字提取帮助用户在众多文本信息中快速提取出关键信息和核心内容,节省时间提高效率。


运作机制

关键字提取API提供了一个提取关键字的接口,通过该API可以在大量信息中提取出文本想要表达的核心内容,可以是具有特定意义的实体,如:人名,地点,电影等。也可以是一些基础但是在文本中很关键的词汇。通过该API可以对提取的关键字按照在文本中所占权重由高到低排序。排序越靠前,权重越高,对文本的核心内容的提取越准确。


约束与限制

当前只支持中文语境。

关键字提取标题文本限制在100个字符以内,正文文本限制在5000个字符以内,关键词提取个数小于等于20。文本为UTF-8格式,格式错误不会报错,但分析结果会不正确。

Engine支持多用户同时接入,但是不支持同一用户并发调用同一个特性。如同一个特性被同一进程同一时间多次调用,则返回系统忙错误;不同进程调用同一特性,则同一时间只有一个进程业务在处理,其他进程进入队列排队。

关键字提取开发

场景介绍

游记摘要

本API可以从用户编辑的游记长文本中提取出能反映其核心思想的关键词汇,关键词按关键到相对非关键的权重顺序输出,帮助用户快速从长文本中提取出关键信息,快速给游记文章关键信息选择对应的标签上传。


新闻标签

用户在浏览文章时,对感兴趣的想做收藏,可以使用本API,提取出关键信息,生成对应的标签。用户下次想继续浏览收藏的文章时,不用打开文章,便可通过生成的标签快速了解到文章的核心内容。


接口说明

可用于从新闻和邮件里提取出关键字,便于用户快速获取新闻和邮件的主题。关键字可以为有意义的实体,比如,人名、电影,也可以为非实体的关键词汇,如,上课、考研。


主要接口


表1 关键词提取主要接口


image.png

image.png

接口输入值说明

requestData的JSON格式如下:

image.pngrequestType表示请求类型,取值可以从ohos.ai.nlu.NluRequestType选择。

类型

说明

static final int

REQUEST_TYPE_LOCAL=0,本地请求。

接口返回值说明


ResponseResult中responseResult为JSON字符串,体现关键字提取的结果:


image.png

参考示例如下:

{
    "code":0,
    "message":"成功",
    "keywords":[
        "上课",
        "一起"
    ]
}

开发步骤

在使用关键字提取API时,将实现关键字提取的相关的类添加至工程。


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<Integer>(){
        @Override
        public void onResult(Integer result){
         // 初始化成功回调,在服务初始化成功调用该函数
        }
}, true);

调用获取关键词提取方法得到分析结果,同一个接口提供了同步和异步两个方法,开发者可根据自己需要选择。


同步

String requestData= "{number:2,body:'今天我们一起去上课吧',title:'一起去上课'}";
ResponseResult respResult = NluClient.getInstance().getKeywords(requestData, NluRequestType.REQUEST_TYPE_LOCAL);
if (null != respResult)
{
// 获取接口返回结果,参考接口文档返回使用
String result = respResult.getResponseResult();
}

title为可选参数 ,不填的时候只分析正文body。


异步

// 待分析文本
String requestData= "{number:2,body:'今天我们一起去上课吧',title:'一起去上课'}";
// 调用接口
NluClient.getInstance().getKeywords(requestData, NluRequestType.REQUEST_TYPE_LOCAL,new OnResultListener<ResponseResult>(){
    @Override
    public void onResult(ResponseResult respResult)
    {
    // 异步返回
    if(null != respResult && NluError.SUCCESS_RESULT == respResult.getCode())
        {
        // 获取接口返回结果,参考接口文档返回使用
        String result = respResult.getResponseResult();
        }
    }
});


使用结束调用destroy()方法释放进程资源,如果持续使用建议在进程结束时释放,释放后需要重复第二步才能再次使用。


相关文章
|
4天前
|
机器学习/深度学习 人工智能 自然语言处理
突破AI大模型工业化开发,生成式AI迎来全链条服务商
突破AI大模型工业化开发,生成式AI迎来全链条服务商
突破AI大模型工业化开发,生成式AI迎来全链条服务商
|
4天前
|
人工智能 自然语言处理 Java
Spring AI,Spring团队开发的新组件,Java工程师快来一起体验吧
文章介绍了Spring AI,这是Spring团队开发的新组件,旨在为Java开发者提供易于集成的人工智能API,包括机器学习、自然语言处理和图像识别等功能,并通过实际代码示例展示了如何快速集成和使用这些AI技术。
Spring AI,Spring团队开发的新组件,Java工程师快来一起体验吧
|
1天前
|
人工智能
如何用AI来提高英语学习效率?
【8月更文挑战第19天】如何用AI来提高英语学习效率?
|
5天前
|
机器学习/深度学习 人工智能 搜索推荐
AI低代码平台:创新开发新选择
Zoho Creator、Airtable、Appian、Creatio Atlas及织信等低代码平台,通过集成AI功能如预测分析、情感分析、自动化文案创作等,显著提升了开发效率与智能化水平。例如,Zoho Creator利用AI预测客户需求并分析情绪;Airtable借助OpenAI模型自动生成代码与文案;Appian通过AI技能自动处理文档与邮件;Creatio Atlas运用AI优化决策流程并提供个性化推荐;织信则集成ChatGPT与Stable Diffusion,实现智能开发与图像生成。这些平台不仅支持多种业务场景,还简化了应用程序开发流程。
20 5
|
5天前
|
人工智能 算法
AI 0基础学习,数学名词解析
AI 0基础学习,数学名词解析
8 2
|
5天前
|
机器学习/深度学习 人工智能 算法
AI人工智能(ArtificialIntelligence,AI)、 机器学习(MachineLearning,ML)、 深度学习(DeepLearning,DL) 学习路径及推荐书籍
AI人工智能(ArtificialIntelligence,AI)、 机器学习(MachineLearning,ML)、 深度学习(DeepLearning,DL) 学习路径及推荐书籍
14 0
|
5天前
|
存储 机器学习/深度学习 人工智能
AI工业变革问题之EPAI软件平台的主要功能内容如何解决
AI工业变革问题之EPAI软件平台的主要功能内容如何解决
6 0
|
6天前
|
人工智能
生成式AI问题之定制化的增强学习定义如何解决
生成式AI问题之定制化的增强学习定义如何解决
13 0
|
7天前
|
机器学习/深度学习 人工智能 Linux
【机器学习】Dify:AI智能体开发平台版本升级
【机器学习】Dify:AI智能体开发平台版本升级
39 0
|
3天前
|
机器学习/深度学习 人工智能 算法
解密巴黎奥运会中的阿里云AI技术
2024年巴黎奥运会圆满结束,中国代表团金牌数与美国并列第一,展现了卓越实力。阿里云作为官方云服务合作伙伴,通过先进的AI技术深度融入奥运的各项环节,实现了大规模的云上转播,超越传统卫星转播,为全球观众提供流畅、高清的观赛体验。其中,“子弹时间”回放技术在多个场馆的应用,让观众享受到了电影般的多角度精彩瞬间。此外,8K超高清直播、AI智能解说和通义APP等创新,极大地提升了赛事观赏性和互动性。能耗宝(Energy Expert)的部署则助力实现了赛事的可持续发展目标。巴黎奥运会的成功举办标志着体育赛事正式进入AI时代,开启了体育与科技融合的新篇章。
解密巴黎奥运会中的阿里云AI技术

热门文章

最新文章