建構對話模型

對話模型定義了使用者可對動作說的內容,以及動作回應使用者的方式。對話模型的主要構成元素為「意圖」、「類型」、「情境」和「提示」。叫用其中一個動作後,Google 助理會將使用者處理完成該動作,而動作會根據您的對話模型為使用者展開對話,當中包含:

  • 有效的使用者要求:如要定義使用者可對動作說出的內容,請建立一組意圖來擴充 Google 助理 NLU,以便瞭解特定動作專屬的要求。每個意圖都會定義訓練詞組,說明使用者可以說的話來符合該意圖。Google 助理 NLU 會擴充這些訓練詞組,加入類似的詞組,而這些詞組的匯總結果則會產生意圖的語言模型。

  • 動作邏輯和回應:場景程序意圖、執行必要的邏輯,並產生提示傳回給使用者。

圖 1. 對話模型由意圖、類型、情境和用來定義使用者體驗的提示組成。符合叫用資格的意圖也可用於在對話中進行比對。

定義有效的使用者要求

如要定義使用者可對動作說出的內容,請搭配使用意圖和類型。您可以運用使用者意圖和類型,以自己的語言模型擴充 Google 助理 NLU。系統意圖和類型可讓您利用內建語言模型和事件偵測功能,例如當使用者要求退出動作或 Google 助理時,完全不會偵測任何輸入內容。

建立使用者意圖

使用者意圖可讓您定義自己的訓練詞組,定義使用者可能會向您的動作說的內容。Google 助理 NLU 會使用這些詞組來訓練自己瞭解使用者說的話。當使用者說出的內容符合使用者意圖的語言模型時,Google 助理會比對該意圖並通知您動作,以便您執行邏輯並回應使用者。

建立系統意圖

系統意圖可讓您利用對常見事件 (例如使用者想退出動作,或使用者輸入逾時) 的意圖,利用預先定義的語言模型。如要建立系統意圖,請按照下列指示操作:

建立自訂類型

自訂類型可讓您建立自己的類型規格來訓練 NLU,藉此瞭解應對應至單一鍵的一組值。

如要建立自訂類型,請按照下列步驟操作:

建構動作邏輯和回應

Google 助理 NLU 會比對使用者要求和意圖,如此一來,您的動作就能在場景中處理要求。場景是強大的邏輯執行工具,可讓您在對話期間處理事件。

建立場景

以下各節說明如何建立情境,以及定義每個場景的生命週期階段的功能。

如何建立場景:

定義一次性設定

場景首次啟用後,您可以在「進入時」階段執行一次性工作。進入階段只會執行一次,是唯一不會在場景的執行迴圈內執行的階段。

檢查條件

您可以運用條件檢查運算單元填充、工作階段儲存空間、使用者儲存空間和住家儲存空間參數,藉此控制場景執行流程。

定義運算單元填充

運算單元可讓您從使用者輸入內容中擷取輸入的參數。

運算單元值對應

在許多情況下,先前的意圖比對可能包含部分或全部填滿相應場景版位值的參數。在這些情況下,如果運算單元名稱與意圖參數名稱相符,由意圖參數填入的所有運算單元都會對應至場景的運算單元填充。

舉例來說,如果使用者透過說出「I want to order a Large vanilla 咖啡」來比對用來訂購飲料的意圖,只要場景定義相同的運算單元,系統就會在對應的場景中填入現有尺寸、口味和飲料類型的現有運算單元。

處理輸入內容

在這個階段中,您可以讓 Google 助理 NLU 將使用者輸入內容和意圖進行比對。您可以將所需意圖新增至場景中,以將意圖比對範圍限制在特定場景。如此一來,您就可以指示 Google 助理在特定情境啟用時比對特定意圖,藉此控制對話流程。