複雜的對話通常會涉及多個對話主題。 舉例來說,披薩外送服務專員可能會將「餐點訂單」、「顧客資訊」和「確認」視為不同主題。每個主題都需要多個對話回合,服務專員才能從使用者取得相關資訊。
流程 用於定義這些主題和相關的對話路徑。 每位服務專員都有一個名為「預設開始流程」的流程。簡單的代理程式可能只需要這個單一流程。較複雜的代理程式可能需要額外流程,且不同開發團隊成員可負責建構及維護這些流程。舉例來說,披薩外送代理程式的流程可能如下所示:預設開始流程
建立代理程式時,系統會自動建立預設開始流程。如果是簡單的代理程式,您可以只使用這個流程。對於較複雜的代理程式,您可以新增更多流程,並將預設開始流程做為對話的簡單進入點。
使用 API 時,您可以透過下列流程 ID 參照預設啟動流程:
00000000-0000-0000-0000-000000000000
流程開始頁面
每個流程在主控台中都有一個名為「開始」的特殊頁面。 在控制台中選取流程時,圖表會將開始頁面顯示為節點。流程最初啟用時,這個頁面會成為目前有效頁面。
啟動頁面沒有一般頁面擁有的參數或回覆訊息。不過,您可以採用下列其中一項做法傳送訊息:
在 API 要求中參照起始網頁
如要在執行階段 API 要求中參照流程的開始頁面,請使用 START_PAGE
做為頁面 ID。
如要透過 API 在設計階段變更開始頁面,請使用 Flow
類型的 get
和 patch/update
API 方法。
選取 Flow 參照的通訊協定和版本:
通訊協定 | V3 | V3beta1 |
---|---|---|
REST | 流程資源 | 流程資源 |
RPC | 流程介面 | 流程介面 |
C++ | FlowsClient | 不適用 |
C# | FlowsClient | 不適用 |
Go | FlowsClient | 不適用 |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 不適用 | 不適用 |
Python | FlowsClient | FlowsClient |
Ruby | 不適用 | 不適用 |
建立流程
如何建立流程:
主控台
- 開啟 Dialogflow CX 控制台。
- 選擇 Google Cloud 專案。
- 選取代理程式。
- 按一下「流程」部分中的「新增」按鈕。add
- 選取「建立流程」。
- 輸入流程的顯示名稱。
- 按一下剛建立的流程。
API
請參閱 Flow
類型的 create
方法。
選取 Flow 參照的通訊協定和版本:
通訊協定 | V3 | V3beta1 |
---|---|---|
REST | 流程資源 | 流程資源 |
RPC | 流程介面 | 流程介面 |
C++ | FlowsClient | 不適用 |
C# | FlowsClient | 不適用 |
Go | FlowsClient | 不適用 |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 不適用 | 不適用 |
Python | FlowsClient | FlowsClient |
Ruby | 不適用 | 不適用 |
流程資料
如要存取流程的資料,請按照下列步驟操作:
主控台
- 開啟 Dialogflow CX 控制台。
- 選擇代理程式的 Google Cloud 專案。
- 在清單中找出代理程式。
- 按一下代理顯示名稱。
- 按一下「流程」部分中的流程。
- 流程的頁面會填入「頁面」部分。 如要瞭解如何編輯頁面,請參閱頁面指南。
- 按一下圖表中的流程。
- 畫面會顯示流程編輯面板。 使用這個面板瀏覽及編輯其他流程資料。
- 按一下「儲存」即可儲存變更。
API
如要瞭解流程,請參閱 Flow
類型的 get
和 patch/update
。
選取 Flow 參照的通訊協定和版本:
通訊協定 | V3 | V3beta1 |
---|---|---|
REST | 流程資源 | 流程資源 |
RPC | 流程介面 | 流程介面 |
C++ | FlowsClient | 不適用 |
C# | FlowsClient | 不適用 |
Go | FlowsClient | 不適用 |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 不適用 | 不適用 |
Python | FlowsClient | FlowsClient |
Ruby | 不適用 | 不適用 |
Page
類型的 get
和 patch/update
方法。
選取頁面參照的通訊協定和版本:
通訊協定 | V3 | V3beta1 |
---|---|---|
REST | 網頁資源 | 網頁資源 |
RPC | 頁面介面 | 頁面介面 |
C++ | PagesClient | 不適用 |
C# | PagesClient | 不適用 |
Go | PagesClient | 不適用 |
Java | PagesClient | PagesClient |
Node.js | PagesClient | PagesClient |
PHP | 不適用 | 不適用 |
Python | PagesClient | PagesClient |
Ruby | 不適用 | 不適用 |
以下資料與流程相關聯:
- 頁面: 構成流程的頁面清單。
- 路徑: 當流程的起始網頁處於啟用狀態時,可能會呼叫所有這些路徑。 當流程的其他頁面處於啟用狀態時,系統可能會遵循有意圖要求的路徑。詳情請參閱狀態處理常式範圍和流程層級路徑。
- 事件處理常式: 流程處於啟用狀態時,系統可能會呼叫這些處理常式。 詳情請參閱「流程層級事件處理常式」。
如要進一步瞭解資料在不同層級的套用方式,請參閱資料套用層級。
流程設定
流程可採用下列設定:
- 顯示名稱: 使用者可理解的流程名稱。
- 說明: 流程的說明。
- 機器學習設定 如要存取及瞭解流程機器學習設定,請參閱代理程式機器學習設定。
- 自動偵測語言 自動偵測語言功能可讓你指定 Conversational Agents (Dialogflow CX) 應自動辨識及回覆的使用者語言。詳情請參閱語言自動偵測說明文件。
流程鎖定: 鎖定的流程無法編輯,包括對子資源進行下列變更:
語音調整設定: 流程層級的語音調整設定,詳細操作說明請參閱手動語音調整。
輸入參數: 工作劇本中的參數,可供流程使用。
傳回參數:流程傳回給工作劇本的參數。
如要進一步瞭解資料在不同層級的套用方式,請參閱資料套用層級。
如要存取流程設定:
主控台
- 開啟 Dialogflow CX 控制台。
- 選擇 Google Cloud 專案。
- 選取代理程式。
- 將滑鼠游標懸停在「流程」部分中的流程上。
- 按一下選項按鈕 more_vert。
- 選取「流程設定」。
- 瀏覽或編輯設定。
- 按一下「儲存」即可儲存變更。
API
請參閱 Flow
類型的 get
和 patch/update
方法。
選取 Flow 參照的通訊協定和版本:
通訊協定 | V3 | V3beta1 |
---|---|---|
REST | 流程資源 | 流程資源 |
RPC | 流程介面 | 流程介面 |
C++ | FlowsClient | 不適用 |
C# | FlowsClient | 不適用 |
Go | FlowsClient | 不適用 |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 不適用 | 不適用 |
Python | FlowsClient | FlowsClient |
Ruby | 不適用 | 不適用 |
刪除流程
如要刪除流程,請按照下列步驟操作:
主控台
- 開啟 Dialogflow CX 控制台。
- 選擇 Google Cloud 專案。
- 選取代理程式。
- 將滑鼠游標懸停在「流程」部分中的流程上。
- 按一下「設定」按鈕 more_vert。
- 選取 [刪除]。
API
請參閱 Flow
類型的 delete
方法。
選取 Flow 參照的通訊協定和版本:
通訊協定 | V3 | V3beta1 |
---|---|---|
REST | 流程資源 | 流程資源 |
RPC | 流程介面 | 流程介面 |
C++ | FlowsClient | 不適用 |
C# | FlowsClient | 不適用 |
Go | FlowsClient | 不適用 |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 不適用 | 不適用 |
Python | FlowsClient | FlowsClient |
Ruby | 不適用 | 不適用 |
訓練流程
如要訓練流程,請按照下列步驟操作:
主控台
- 開啟 Dialogflow CX 控制台。
- 選擇 Google Cloud 專案。
- 選取代理程式。
- 按一下「Agent Settings」(代理程式設定)。
- 開啟「ML」ML分頁。
- 如要訓練單一流程,請按一下對應資料列中的「訓練」。
- 如要訓練多個流程,請選取核取方塊,然後按一下「訓練所選流程的 NLU 模型」。
API
請參閱 Flow
類型的 train
方法。
選取 Flow 參照的通訊協定和版本:
通訊協定 | V3 | V3beta1 |
---|---|---|
REST | 流程資源 | 流程資源 |
RPC | 流程介面 | 流程介面 |
C++ | FlowsClient | 不適用 |
C# | FlowsClient | 不適用 |
Go | FlowsClient | 不適用 |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 不適用 | 不適用 |
Python | FlowsClient | FlowsClient |
Ruby | 不適用 | 不適用 |
匯出流程
匯出流程的方式有兩種:
匯出資料: 將流程匯出為原始資料, 以便匯入任何代理程式。 匯出流程時,系統也會匯出流程參照的資源 (意圖、實體、Webhook)。請按照下列步驟操作,並選擇「原始資料」資料格式。
匯出流程圖 (預覽版): 將流程匯出為流程圖。 匯出格式為 draw.io XML,因此您可以將圖表匯入 Lucidchart、diagrams.net 或任何其他可匯入 draw.io 格式的圖表工具。請按照下列步驟操作,並選擇 XML 資料格式。
您可以透過下列選項匯出流程:
- 包含參照流程: 匯出目標流程和所有層級的參照流程。參照的流程包括目標流程參照的流程,以及後續參照流程參照的流程,沒有最大深度。匯入時,系統會匯入所有匯出的流程,並保留這些流程之間的轉移。
如要匯出流程,請按照下列步驟操作:
主控台
- 開啟 Dialogflow CX 控制台。
- 選擇 Google Cloud 專案。
- 選取代理程式。
- 將滑鼠游標懸停在「流程」部分中的流程上。
- 按一下選項按鈕 more_vert。
- 選取「匯出流程」。
- 按照操作說明完成設定。
API
請參閱 Flow
類型的 export
方法。
選取 Flow 參照的通訊協定和版本:
通訊協定 | V3 | V3beta1 |
---|---|---|
REST | 流程資源 | 流程資源 |
RPC | 流程介面 | 流程介面 |
C++ | FlowsClient | 不適用 |
C# | FlowsClient | 不適用 |
Go | FlowsClient | 不適用 |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 不適用 | 不適用 |
Python | FlowsClient | FlowsClient |
Ruby | 不適用 | 不適用 |
匯入流程
將流程從來源代理程式匯入目標代理程式時,流程參照的全域資源 (意圖、實體、Webhook) 會連同流程專屬資料一併匯入。如果目標虛擬服務專員有任何與來源虛擬服務專員顯示名稱相同的全域資源,Conversational Agents (Dialogflow CX) 會提供這些資源的摘要,以及解決這些資源衝突的三種方法:
- 取代現有資源: 來源代理程式資源會覆寫目標代理程式資源。
- 匯入為新資源: 來源代理程式資源會新增至名稱中,並加上獨特的後綴字元。
- 保留原始資源: 目標代理程式資源不會變更。
如何匯入流程:
主控台
- 開啟 Dialogflow CX 控制台。
- 選擇 Google Cloud 專案。
- 選取代理程式。
- 按一下「流程」部分中的「新增」按鈕。add
- 選取「匯入流程」。
- 按照操作說明完成設定。
API
請參閱 Flow
類型的 import
方法。
選取 Flow 參照的通訊協定和版本:
通訊協定 | V3 | V3beta1 |
---|---|---|
REST | 流程資源 | 流程資源 |
RPC | 流程介面 | 流程介面 |
C++ | FlowsClient | 不適用 |
C# | FlowsClient | 不適用 |
Go | FlowsClient | 不適用 |
Java | FlowsClient | FlowsClient |
Node.js | FlowsClient | FlowsClient |
PHP | 不適用 | 不適用 |
Python | FlowsClient | FlowsClient |
Ruby | 不適用 | 不適用 |