動態實體作為AIUI的重要功能經發布了好幾個月了,每天依舊有開發者纏著工單客服和支持群里的小姐姐問個不停,作為一個單身耿直的開發者,我覺得我的春天來了,是時候向小姐姐們伸出援手了。
實體是為自定義技能而生的,如下我定義一個打人的技能:

其中`{people}`是一個語義槽,我們可以配置它對應的實體。

實體即定義了該語義槽的取值集合,我們可以定義一個靜態實體,在后臺定義列舉它的所有取值范圍。

關聯語義槽和剛才定義好的靜態實體

靜態實體非常簡單,但是我想打的人是在太多了,這樣寫靜態實體是在要累死,而且我的這個技能是為了造福千萬大眾寫的,每個人都有自己想打的人,靜態實體是完全hold不住的。好在有動態實體。
動態實體與靜態實體一個主要的區別就是可以從端上進行上傳更新,所以定義也是不同的。

動態實體定義定義的是元數據,定義了從端上上傳的記錄數據中需要被提取的字段。
與這個動態實體對應,我可以上傳如下的記錄:
~~~
{"name":"李狗蛋"}
{"name":"王百萬"}
{"name":"劉小花"}
~~~
當然了,這個數據是需要在設備端集成AIUI SDK,調用API實現的。