多語言代理程式

Dialogflow 支援多種語言。如需完整清單,請參閱語言參考資料頁面。系統會將建立代理程式時選擇的語言設為預設語言,而您可以新增其他語言。

控制台和 API 中的語言選取範圍

在主控台或 API 中選取語言時,這項選取項目只會影響代理程式的流程。如要瞭解如何使用劇本選取語言,請參閱劇本語言支援

根語言和特定地區語言

語言分為兩種:

  • 根語言:即未指定地區的語言,例如「(英文 (en)」
  • 特定地區語言:即指定特定國家/地區的語言,例如「英文 - 美國 (en-US)」

部分語言同時為根語言和特定地區語言。這些語言在各地區之間有顯著差異,因此各地區間無法共用共同的根語言。範例:

  • 中文 - 粵語 (zh-HK)
  • 中文 - 簡體 (zh-CN)
  • 中文 - 繁體 (zh-TW)
  • 葡萄牙文 - 巴西 (pt-BR)
  • 葡萄牙文 - 葡萄牙 (pt)

您應該要主要針對根語言設計代理程式,並只視需要針對特定地區語言進行自訂。

新增語言

如要透過 Dialogflow CX 控制台新增語言或地區:

  1. 開啟 Dialogflow CX 控制台
  2. 選擇代理程式的 Google Cloud 專案。
  3. 在清單中找出代理程式。
  4. 按一下代理顯示名稱。
  5. 按一下「Agent Settings」(代理程式設定)
  6. 按一下「語言」分頁標籤。
  7. 視需要新增或移除語言。
  8. 按一下 [儲存]

特定語言的資料

多語言代理程式的大部分代理程式資料,都是所有語言通用的。 不過,與使用者互動時使用的文字會因語言而異。 建構多語代理程式時,您必須為每個語言提供這類語言專屬資料。在控制台中選取語言或透過 API 提供語言時,您可以存取指定語言的特定資料。以下是語言專屬資料的完整清單:

如要透過控制台存取語言專屬資料,請按一下控制台頂端的語言按鈕。

舉例來說,下方的「size」(尺寸) 實體類型是用來訂購 T 恤。代理程式原本是以英文設定,因此這個實體含有「S」等項目,其同義詞為「small」(小號)。如果您新增西班牙文做為語言,Dialogflow 會針對新語言建立實體,但您必須以西班牙文提供實體項目。

實體 同義詞
XS XS,特小
S S, pequeño
M M、medio
L L, grande
XL XL (特大)

AI 生成特定語言的資料

您可以選擇使用 Conversational Agents (Dialogflow CX),透過 AI 生成功能提供資料,加快新增特定語言資料的程序,不必手動輸入。這項預覽功能可在意圖、實體和完成層級執行。

如果選擇不使用 AI 生成功能,您還是可以手動輸入非預設語言的資料。

生成意圖 AI

以非預設語言自動產生訓練詞組

  1. 前往「代理程式設定」>「語言」,確認代理程式已啟用一或多種非預設語言。
  2. 前往控制台頂端的語言下拉式選單,然後選取您選擇的非預設語言。
  3. 前往「管理」分頁,然後按一下「意圖」並選擇其中一個意圖。請確認「Description」(說明) 欄位已填入意圖用途的說明。說明可使用預設語言或目前瀏覽的語言。
  4. 啟用非預設語言後,Conversational Agents (Dialogflow CX) 不會將現有的訓練詞組翻譯成新語言。如要以新語言建立新的訓練詞組,請按一下「__ newly LLM-generated phrases」(新近由 LLM 生成的詞組) 放射按鈕。預設值為 3。如要複製並自動翻譯現有的訓練片語,請選取「由 AI 生成翻譯的預設語言訓練片語」
  5. 按一下「+ 新增」。系統會以您選取的語言,產生指定數量的訓練詞組,並填入表格。請務必檢查所有生成的訓練詞組是否正確。

(預覽版) 實體 AI 生成

在非預設語言中自動產生及自動翻譯參考值和同義詞

  1. 前往「代理程式設定」>「語言」,確認代理程式已啟用一或多種非預設語言。
  2. 前往控制台頂端的語言下拉式選單,然後選取您選擇的非預設語言。
  3. 前往「管理」分頁,然後按一下「實體類型」並選擇其中一種實體類型。
  4. 啟用非預設語言後,Conversational Agents (Dialogflow CX) 不會自動翻譯任何現有的參照值和同義詞。如要將這些值自動翻譯成新語言,請按一下「+ 從預設語言複製」。系統會將預設語言實體類型中的所有原始資料翻譯成新語言,並填入表格。請注意,一次翻譯超過 50 個項目可能會導致錯誤。每個參照值和同義詞值都會計為一個項目。
  5. 您也可以按一下「+ 新增項目」新增參考值。您可以輸入預設語言的參照值,系統會自動將參照值和同義詞翻譯成新語言。

(預先發布版) 產生執行要求 AI

AI 生成功能適用於路徑、路徑群組和事件處理常式完成類型。如要進一步瞭解這些路徑類型,請參閱路徑事件處理常式說明文件。

只有在以非預設語言查看代理程式,且符合指定路徑類型時,才會顯示這項功能。前往路線的「履行」部分。如要自動複製代理商以預設語言提供的回覆,並翻譯成你目前使用的語言,請按一下「複製並翻譯」。請注意,一次翻譯超過 50 則回覆可能會導致錯誤。

使用 API 時的語言專屬資料

如要透過 API 存取特定語言的資料,請在取得、建立或更新 EntityTypeIntentPage 類型時提供 languageCode 參數。

選取 EntityType 參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST EntityType 資源 EntityType 資源
RPC EntityType 介面 EntityType 介面
C++ EntityTypesClient 不適用
C# EntityTypesClient 不適用
Go EntityTypesClient 不適用
Java EntityTypesClient EntityTypesClient
Node.js EntityTypesClient EntityTypesClient
PHP 不適用 不適用
Python EntityTypesClient EntityTypesClient
Ruby 不適用 不適用

選取 Intent 參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 意圖資源 意圖資源
RPC 意圖介面 意圖介面
C++ IntentsClient 不適用
C# IntentsClient 不適用
Go IntentsClient 不適用
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP 不適用 不適用
Python IntentsClient IntentsClient
Ruby 不適用 不適用

選取頁面參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 網頁資源 網頁資源
RPC 頁面介面 頁面介面
C++ PagesClient 不適用
C# PagesClient 不適用
Go PagesClient 不適用
Java PagesClient PagesClient
Node.js PagesClient PagesClient
PHP 不適用 不適用
Python PagesClient PagesClient
Ruby 不適用 不適用

您必須為每種語言分別發出 API 呼叫,才能存取所有語言專屬資料。如果 API 呼叫更新語言通用的資料,所有語言的資料都會更新。

在模擬工具中測試

使用模擬器時,您可以在代理程式名稱下方選取要使用的語言。

使用 API 提供語言

透過 API 傳送要求時,請設定 detectIntent 方法的 queryInput.languageCode 欄位。詳情請參閱 Sessions 型別。

選取工作階段參照的通訊協定和版本:

通訊協定 V3 V3beta1
REST 工作階段資源 工作階段資源
RPC 工作階段介面 工作階段介面
C++ SessionsClient 不適用
C# SessionsClient 不適用
Go SessionsClient 不適用
Java SessionsClient SessionsClient
Node.js SessionsClient SessionsClient
PHP 不適用 不適用
Python SessionsClient SessionsClient
Ruby 不適用 不適用

自動偵測語言

如果使用者的查詢語言與要求中指定的語言不同,Dialogflow 可以偵測到並自動切換至使用者的語言。如要查看這項功能支援的語言清單,請參閱語言參考資料頁面。啟用語言偵測功能後,WebhookRequest 中的 LanguageInfo 欄位會識別輸入語言、解析語言和信賴分數。

啟用語言自動偵測功能

你必須在服務專員和流程層級啟用語言自動偵測功能。

  1. 前往代理程式設定,然後選取「Languages」分頁。

  2. 勾選「啟用語言自動偵測和切換功能」旁的方塊,即可為服務專員啟用這項功能。按一下「儲存」以儲存變更。

  3. 選取流程,然後前往「流程設定」。在流程設定面板中,勾選「啟用語言自動偵測和切換功能」旁的方塊。

  4. 在「語言」下拉式選單中,選取您希望 Dialogflow 回覆時使用的語言。請務必只選取語言自動偵測功能支援的語言

  5. 按一下 [儲存] 以儲存變更。

要求未提供代理程式的語言

如果 Dialogflow 收到的要求未提供代理程式支援的語言,則適用下列規則:

  • 如果要求未提供語言,Dialogflow 會自動判斷輸入語言,並以該語言回應 (如果已啟用自動語言偵測功能)。如果停用自動偵測語言功能,Dialogflow 會使用預設語言處理要求。
  • 如果要求提供代理程式不支援的特定地區語言,但代理程式支援相關聯的根語言,則 Dialogflow 會使用根語言處理要求。
  • 系統實體擷取作業是例外狀況,不適用上述規則。系統實體擷取作業會使用所提供的特定地區語言,即使代理程式不支援該語言亦然。

整合

透過文字介面整合與代理程式互動時,系統只會使用代理程式的預設語言。