我正在構建一個帶有botkit的信使機器人,語言處理是通過api.ai完成的。如何僅使用NLP從字符串中提取非意圖的實體?
Apiai的意圖是引導用戶體驗機器人的好方法。我使用預定義的意圖來理解用戶想要做什麼,並使用botkit的convo對象與他開始對話。在這一點上,我有預定義的問題,用戶需要回答。
例如,其中一個問題是「這是什麼時候發生的?」用戶可以用純文本回答。我不需要apiai告訴我意圖(以及我不想爲此花時間培訓),因爲我已經知道該期待什麼。
所以我正在尋找一種方法來簡單地從字符串中提取系統和開發人員定義的實體。所以如果用戶提供的答案是「我昨天發生過」,我可以驗證我有日期的實體,但時間實體是空的,所以我會承諾給予時間。
我已閱讀apiai和其他競爭對手的文檔,並沒有找到辦法做到這一點。它總是關於定義意圖。
所以基本上 - 從字符串中找到並提取實體。是否有可能,如果是 - 如何?目前apiai是我的工具,但如果有必要,我願意改變它。
你檢查了嗎? https://docs.api.ai/docs/concept-entities#section-date-and-time這是你正在尋找的,還是它有一些限制,不適合你的使用情況? – jgranstrom
是的,有限制。用戶可以用多種不同的方式來回答,比如「昨天」,「我是昨天」,「它昨天發生了」,...。並形成我的理解我有義務爲此問題創建意圖,併爲所有這些可能的用戶答案培訓代理。但這對我來說似乎是愚蠢的,因爲我已經知道了這個意圖。這些系統實體是非常強大的,所以我想知道爲什麼開發者不能簡單地爲他們搜索字符串。 –
我明白了,您是在尋找一個託管的服務來做這件事嗎,還是使用開源工具來設置您自己的API? – jgranstrom