Actions Builder 可協助您以簡單流暢的方式建構對話動作,非常適合用來建構 Google 助理。Actions Builder 是與 Actions 主控台整合的網頁式 IDE,並提供下列功能:
- 透過視覺化工作流程和以狀態為基礎的方式,控管動作的對話。
- 設計更快的原型,並縮短延遲時間。
- 在單一介面上建構、分析對話動作並進行偵錯。
如果您有使用 Dialogflow 建構的對話動作,可以在 Actions 控制台中選擇將專案遷移至 Actions Builder。
遷移原因
雖然遷移 Dialogflow 代理程式時不必進行遷移,且您的動作仍可繼續在 Google 助理裝置上正常運作,但使用 Actions Builder 和 Actions SDK 可享有更多好處。
運用 Actions SDK 和 CLI 改善工具
- Actions SDK 和 CLI 能讓您建構複雜的專案,並輕鬆與團隊協同合作。對話設計人員可以先在動作建構工具中建立對話流程。開發人員接著可以將專案下載為檔案型結構,並使用喜愛的開發工具和版本管控系統繼續建構功能。只要將專案推送回 Actions Builder,其他團隊成員就能繼續建構、測試及部署動作。
完美整合對話設計最佳做法
- 在每個場景中自訂備用意圖,即可在對話中的任何時間點提供無輸入或不相符的回應。
- 運用圖形、以狀態為基礎的方法打造對話體驗,因此設計人員與開發人員之間可以輕鬆進行協作。
本地化更輕鬆
- 所有意圖、場景和類型 (例如訓練詞組、提示和輸入同義詞) 的本地化內容都能在單一頁面編輯。
改善對話實作
Actions Builder 為 Actions 主控台提供許多改善項目,並簡化開發程序。本節將說明動作建構工具如何簡化及簡化動作的開發流程。
可重複使用意圖
在 Dialogflow 中,Webhook 邏輯會連結至意圖,也就是說,意圖無法與其他 Webhook 重複使用。如要使用相同的訓練詞組,但使用不同的 Webhook 邏輯,您必須建立額外意圖,並參照每個 Webhook 邏輯案例不同的處理常式名稱。
在 Actions Builder 中,意圖包含訓練詞組和實體,但 Webhook 是各自獨立的。這種方法可讓您針對同一個意圖使用不同的 Webhook 處理常式,享有更高的彈性。
改善對話流程的視覺化效果
在 Dialogflow 中的「背景資訊」中,「背景資訊」可以指出對話中某個時間點的意圖最可能相符的意圖。
動作建構工具會使用場景來處理對話中不同部分存取的意圖,而不是使用情境
使用者進入場景時,「轉場效果」會定義使用者可採取的對話路徑。轉換可以根據條件邏輯,以及自訂或系統意圖比對。
建構工具的 UI 可讓您輕鬆瞭解轉場效果如何連結場景。在圖 1 中,場景 guess_game
轉換為 suggested_new_game
場景 (1)。您也可以在場景中看到以下兩個可存取的意圖:generic_no
和 generic_yes
。視比對的意圖而定,suggested_new_game
情境會轉換為 show_menu
或 routing_game
情境 (2)。
根據情境自訂提示
使用 Dialogflow 時,您可以透過 Webhook 傳送簡單的回應,或是在 Dialogflow 控制台中定義靜態回應。
Actions Builder 介紹「提示佇列」的概念。您可以在場景的多個區段及 Webhook 中定義提示。所有提示都會新增至提示佇列,然後合併為一則回應並傳送給使用者。如此一來,您就可以根據使用者的回覆或完成內容來匯總回應,而不只是根據配對的意圖。
舉例來說,如果提示是在場景「和」Webhook 中定義,則系統會先將 Webhook 提示新增至提示佇列,接著才新增場景提示。
下列清單概略說明您可以在 Actions Builder 中定義提示,以及這些提示加入提示佇列的順序:
- 入場時
- 條件
- 運算單元填充
- 場景
內建對話設計最佳做法
在設定 Dialogflow 專案時,系統會自動產生全域備用意圖,就像預設的歡迎意圖一樣。當使用者說出無法對應至現有意圖的內容,或是使用者未輸入內容時,系統就會比對預設備用意圖。
為了順利處理錯誤,您必須將後續追蹤意圖新增至每個對話回合的備用意圖。
在 Actions Builder 中,新專案會自動加入兩個獨立的全域意圖:NO_MATCH
和 NO_INPUT
。
Google 助理 NLU 與 NO_MATCH
或 NO_INPUT
系統意圖相符時,會分別將預設或自訂提示傳送給使用者。當 NO_MATCH
或 NO_INPUT
比對成功三次後,分別傳送最終訊息給使用者,Google 助理會結束您與動作的對話。
每個場景可新增三個 NO_MATCH
和 NO_INPUT
處理常式。這項功能可自訂用於特定錯誤處理的提示,而非因不相符或使用者未輸入內容而產生的一般備用提示。