描述交談語言理解
若要使用交談語言理解,需考慮三個核心概念:「表達」、「實體」和「意圖」。
表達
表達是使用者可能表述內容的範例,而應用程式必須能夠解讀。 例如,使用家庭自動化系統時,使用者可能會使用下列表達:
「開電風扇。」
「開燈。」
實體
實體是表達指稱的某個項目。 例如,電風扇和燈在下列語句中是:
「開電風扇。」
「開燈」。
您可將電風扇和燈實體視為一般裝置實體的特定執行個體。
意圖
使用者表達中所傳達,代表目的或目標的意圖。 例如,前面這兩個表達的意圖是開啟某項裝置;所以,在交談語言理解應用程式中,您可能會定義與這些表達有關的 TurnOn 意圖。
交談語言理解應用程式會定義包含意圖和實體的模型。 表達是用來定型模型,以找出根據指定的輸入,最有可能套用的意圖及實體。 我們一直在考慮的 Home Assistant 應用程式可能包含多個意圖,如下列範例所示:
意圖 | 相關表達 | 實體 |
---|---|---|
問候 | 「您好」 | |
「嗨」 | ||
「嘿」 | ||
「早安」 | ||
TurnOn | 「開電風扇」 | 電風扇 (裝置) |
「開燈」 | 燈 (裝置) | |
「開燈」 | 燈 (裝置) | |
TurnOff | 「關電風扇」 | 電風扇 (裝置) |
「關燈」 | 燈 (裝置) | |
「關燈」 | 燈 (裝置) | |
CheckWeather | 「今天天氣怎麼樣?」 | 今天 (日期時間) |
「給我天氣預報」 | ||
「巴黎的天氣預報怎麼樣?」 | 巴黎 (位置) | |
「西雅圖明天的天氣怎麼樣?」 | 西雅圖 (位置)、明天 (日期時間) | |
無 | 「生命的意義為何?」 | |
「這東西開啟了嗎?」 |
資料表中有很多可用於各個意圖的表達。 意圖應該是分組表達工作的簡要方式。 None 意圖具有特殊意義。 您應該要時時謹記使用 None 意圖,以協助處理未對應任何已輸入表達的表達。 None 意圖會被視為後援,且通常會在使用者的要求不符合任何其他意圖時,給予使用者一般回應。
在交談語言理解應用程式中使用範例表達定義實體和意圖之後,您可定型語言模型來預測使用者輸入中的意圖和實體,即使使用者輸入不完全符合範例表達。 然後,您可在用戶端應用程式使用模型來擷取預測並適當地回應。