對話動作可讓您為 Google 助理使用者建立自訂體驗或對話,藉此擴充 Google 助理的功能。在對話中,對話動作會處理 Google 助理提出的要求,並傳回含有音訊和視覺元件的回應。對話動作也可透過 Webhook 與外部網路服務通訊,以便在傳回回應前加入對話或商業邏輯。
![在與 Google 助理的往來對話中,使用者詢問有關會議場次時,系統會回答問題。](https://developers-dot-devsite-v2-prod.appspot.com/static/assistant/conversational/images/home-conversation-io.png?authuser=5&hl=zh-tw)
建構原因
一般電腦介面需要結構化且可預測的輸入內容才能正常運作,導致這些介面使用起來不自然,且有時很難使用。如果使用者無法輕易辨識這類結構化輸入內容,就會難以判斷該怎麼做。
例如,不妨以「今天幾度天氣預報?」這類簡單的使用者要求為例,其他使用者可能也會詢問「現在天氣如何?」或「舊金山明天的溫度是幾度?」就算是這個簡單的問題,也能發現對話體驗不易實作,因為解讀及處理自然語言需要非常穩固的語言剖析器,才能理解語言細微的細微差異。您的程式碼必須處理所有不同類型的要求 (甚至更多要求),才能執行相同的邏輯:查詢特定時間和位置的預測資訊。因此,傳統電腦介面需要已知的標準輸入要求,才能對使用者體驗造成負面影響,因為這樣比較易於處理高度結構的輸入內容。
不過,當您建構對話動作時,Google 助理會為您處理自然語言理解 (NLU) 作業,因此您可以輕鬆建構開放式對話介面。這些介面工具可讓您瞭解人類語言的各種細微差異,並將其轉譯成標準和結構化的意義,以利您的應用程式和服務理解。我們來看看動作如何處理上述的天氣預報要求。
如要查詢天氣預報,您可能需要一些資訊,例如使用者想取得天氣預報的時間和位置。不過,如我們前所述,不同使用者可能會透過不同的方式提出預測要求。Google 助理可以瞭解這些差異,並將其轉譯成標準的使用者意圖,以便取得預測資訊。接著,比對服務會剖析使用者要求,提供執行要求所需的適當資料。在這個案例中,也就是使用者希望天氣預報的時間和地點。最後,您可以透過公開 REST API 使用這項資料來查詢天氣,並以提示的形式將天氣回傳給使用者。
建構時機
對話動作最適合用於簡單的用途,讓使用者可以快速完成工作,也可以用語音引導式用途來創造沉浸式體驗。良好的對話動作通常可分為下列一般類別:
- 方便回答的問題可透過熟悉的輸入 (例如時間或日期) 完成的動作,例如預訂航班。
- 快速卻實用的動作。使用者只要花一點時間就能立即享有優勢,例如找出最喜歡的球隊下一場比賽的時間。
- 本質上更適合語音的操作。通常您會想要免持操作,例如瑜珈或輕度運動期間接受指導,或專為語音優先互動所設計的遊戲。
建構方式
Actions on Google 可讓您以 Actions SDK、Actions Builder 或兩者交替建立對話動作。這項功能可讓您根據自身需求選擇最合適的開發工作流程,並在需要時靈活切換。
Actions SDK 提供標準化的檔案型結構定義來建構動作、與 Google 助理互動的程式庫,以及用於部署及管理動作專案的 CLI。Actions Builder 是以與 Actions SDK 相同的技術為基礎建構而成,並可透過簡單易用且功能強大的 IDE 進行建構。
詳情請參閱建構總覽。
後續步驟
歡迎參考下列資源,立即開始建構: