日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > ChatGpt >内容正文

ChatGpt

HarmonyOS之AI能力·实体识别

發布時間:2024/5/21 ChatGpt 70 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HarmonyOS之AI能力·实体识别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、簡介

  • 實體識別能夠從自然語言中提取出具有特定意義的實體,并在此基礎上完成搜索等一系列相關操作及功能。
  • 實體識別覆蓋范圍大,能夠滿足日常開發中對實體識別的需求,讓應用體驗更好。識別準確率高,能夠準確地提取到實體信息,對應用基于信息的后續服務形成關鍵影響。
  • 實體識別當前只支持中文語境。
  • 實體識別文本限制在 500 個字符以內,超過字符數限制將返回參數錯誤;文本需要為 UTF-8 格式,格式錯誤不報錯,但會導致分析結果錯誤。
  • Engine 支持多用戶同時接入,但是不支持同一用戶并發調用同一個特性,如同一個特性被同一進程同一時間多次調用,則返回系統忙錯誤;不同進程調用同一特性,則同一時間只處理一個進程的業務,其他進程進入隊列排隊。

二、應用場景

  • 雙指按壓文本彈出卡片:基于文本中所包含的實體內容,如名人、電影、電視劇等。通過雙指按壓,快速彈出實體對應的卡片介紹信息。讓用戶可以方便、快捷的獲取想知道的信息。
  • 實體信息高亮:將相關的實體信息高亮,并設置快速操作入口。如將文本信息中的電話號碼高亮,用戶可以直接進行撥號。

三、API 說明

  • 實體識別提供識別文本中具有特定意義實體的能力,包含電影、電視劇、綜藝、動漫、單曲、專輯、圖書、火車車次、航班號、球隊、人名、快遞單號、電話號碼、url、郵箱、聯賽、時間、地點(包含酒店、餐館、景點、學校、道路、省、市、縣、區、鎮等)、驗證碼。
① 主要接口
接口名描述
void init(Context context, OnResultListener listener, boolean isLoadModel);初始化NLU服務。在調用NLU等功能接口前需要先調用此接口,在OnResultListener的onResult(T)方法中獲取到回調結果后,再調用NLU功能接口。開發者傳入listener參數作為回調,用于等待NLU功能接口的調用過程和結果
ResponseResult getEntity(String requestData, int requestType);采用同步方式識別文本中具有特定意義的實體,包含電影、電視劇、綜藝、動漫、單曲、專輯、圖書、火車車次、航班號、球隊、人名、快遞單號、電話號碼、url、郵箱、聯賽、時間、地點(包含酒店、餐館、景點、學校、道路、省、市、縣、區、鎮等)、驗證碼
ResponseResult getEntity(final String requestData, final int requestType, final OnResultListener listener);采用異步方式識別文本中具有特定意義的實體,包含電影、電視劇、綜藝、動漫、單曲、專輯、圖書、火車車次、航班號、球隊、人名、快遞單號、電話號碼、url、郵箱、聯賽、時間、地點(包含酒店、餐館、景點、學校、道路、省、市、縣、區、鎮等)、驗證碼
void destroy(Context context);取消所有NLU任務,銷毀NLU引擎服務。調用此方法后,無法再使用NLU服務。如果需要重新使用NLU服務,需要重新調用init(Context, OnResultListener, boolean)}來初始化NLU服務
② 接口輸入值說明
  • requestType 表示請求類型,通過 NluRequestType 類定義如下:
枚舉的類型枚舉的取值
static final intREQUEST_TYPE_LOCAL = 0 本地請求
  • requestData 的 json 格式如下:
參數名是否必選類型說明
texttrueString待分析的文本,UTF-8編碼,限制500個字符以內
定義需要分析的實體,默認所有實體均會分析。
分析某個實體,傳實體鍵值,例如:只需要分析時間實體,傳“time”。可傳多個,表示分析多個實體,以半角逗號“,”分隔,例如:分析時間和地點,傳“time,location”。
取值范圍:name、time、location、phoneNum、email、url、movie、tv、anime、league、team、trainNo、flightNo、expressNo、idNo、verificationCode、app、carNo
callPkgfalseString調用者名稱
callTypefalseint調用者類型:
0:普通應用(默認)
1:快應用
callVersion
callState
false
false
String
int
調用者版本號。
調用者狀態:
-1:未知(默認)
0:前臺
1:后臺
③ 接口返回值說明
  • 返回值 ResponseResult 為 JSONObject 字符串,體現實體識別的結果:
參數名是否必選類型說明
codetrueint實體識別的結果碼。取值包括:
0:成功
1:系統正在初始化
2:參數錯誤
3:系統忙
4:系統異常
5:任務超時
6:其它錯誤
messagetrueString實體識別的結果描述
entityfalseJSONObject實體分析結果

四、開發流程

  • 在使用實體識別相關接口時,需要將實體識別的相關類添加到工程:
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>(){@Overridepublic void onResult(Integer result){// 初始化成功回調,在服務初始化成功調用該函數}}, true);
  • 調用實體識別的接口,獲取分析結果。
    • 采用同步方式進行實體識別:
String requestData= "{text:'我要看電影魔獸',module:'movie'}"; // module為可選參數,如果不設置該參數,則默認分析所有實體ResponseResult respResult = NluClient.getInstance().getEntity(requestData, NluRequestType.REQUEST_TYPE_LOCAL);if (null != respResult && NluError.SUCCESS_RESULT == respResult.getCode()) {// 獲取接口返回結果,參考接口文檔返回使用String result = respResult.getResponseResult();}
    • 采用異步方式進行實體識別:
// 待分析文本String requestData= "{text:'我要看電影魔獸',module:'movie'}"; // module為可選參數,如果不設置該參數,則默認分析所有實體// 調用接口NluClient.getInstance().getEntity(requestData, NluRequestType.REQUEST_TYPE_LOCAL, new OnResultListener < ResponseResult > () {@Overridepublic void onResult(ResponseResult respResult) {// 異步返回if (null != respResult && NluError.SUCCESS_RESULT == respResult.getCode()) {// 獲取接口返回結果,參考接口文檔返回使用String result = respResult.getResponseResult();}}});
  • 銷毀 NLU 服務:
NluClient.getInstance().destroy();

總結

以上是生活随笔為你收集整理的HarmonyOS之AI能力·实体识别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。