实验设置说明和要求
保护您的账号和进度。请务必在无痕浏览器窗口中,使用实验凭证运行此实验。

建構基本 Conversational Agents 流程

实验 1 小时 30 分钟 universal_currency_alt 5 积分 show_chart 入门级
info 此实验可能会提供 AI 工具来支持您学习。
此内容尚未针对移动设备进行优化。
为获得最佳体验,请在桌面设备上访问通过电子邮件发送的链接。

Google Cloud 自修研究室

總覽

透過 Conversational Agents,機器人設計人員將能以簡單、視覺化的方式建構機器人,打造對話式代理。除了能全面掌握整體的機器人建構程序,多位設計人員也能輕鬆合作建構同一個代理。用 Conversational Agents 打造的代理能理解並以多種語言回覆,不過本實驗室建構的代理只會使用英文。

在本實驗室,您將使用 Conversational Agents 控制台建構對話式代理。

事前準備

請確定自己大概瞭解對話式 AI 的基本概念,並詳閱這些轉錄稿範例,瞭解客戶轉錄稿的大致樣貌。建立代理的第一步通常是詳閱客戶轉錄稿和/或其他脈絡資料,以瞭解用途和具體業務需求。

設定

瞭解以下事項後,再點選「Start Lab」按鈕

請詳閱以下操作說明。實驗室活動會計時,中途無法暫停。點選「Start Lab」後就會開始計時,顯示可使用 Google Cloud 資源的時間。

您會在實際雲端環境中完成 Qwiklabs 實作實驗室活動,而非模擬或示範環境。為此,我們會提供新的暫時憑證,供您在實驗室活動期間登入及存取 Google Cloud。

需求條件

為了順利完成這個實驗室,請先確認:

  • 可以使用標準的網際網路瀏覽器 (Chrome 瀏覽器為佳)。
  • 已預留充足時間可完成實驗室。

注意:如果您擁有個人 Google Cloud 或專案,請勿用於本實驗室。

注意:如果您使用的是 Pixelbook,請在無痕視窗執行本實驗室。

如何開始研究室及登入 Google Cloud 控制台

  1. 點選「Start Lab」按鈕。如果實驗室會產生費用,畫面上會出現選擇付款方式的對話方塊。左側的「Lab Details」窗格會顯示下列項目:

    • 「Open Google Cloud console」按鈕
    • 剩餘時間
    • 必須在這個研究室中使用的臨時憑證
    • 完成這個實驗室所需的其他資訊 (如有)
  2. 點選「Open Google Cloud console」;如果使用 Chrome 瀏覽器,也能按一下滑鼠右鍵,選取「在無痕視窗中開啟連結」

    接著,實驗室會啟動相關資源,並開啟另一個分頁,顯示「登入」頁面。

    提示:您可以在不同的視窗中並排開啟分頁。

    注意:如果頁面中顯示「選擇帳戶」對話方塊,請點選「使用其他帳戶」
  3. 如有必要,請將下方的 Username 貼到「登入」對話方塊。

    {{{user_0.username | "Username"}}}

    您也可以在「Lab Details」窗格找到 Username。

  4. 點選「下一步」

  5. 複製下方的 Password,並貼到「歡迎使用」對話方塊。

    {{{user_0.password | "Password"}}}

    您也可以在「Lab Details」窗格找到 Password。

  6. 點選「下一步」

    重要事項:請務必使用實驗室提供的憑證,而非自己的 Google Cloud 帳戶憑證。 注意:如果使用自己的 Google Cloud 帳戶來進行這個實驗室,可能會產生額外費用。
  7. 按過後續的所有頁面:

    • 接受條款及細則。
    • 由於這是臨時帳戶,請勿新增救援選項或雙重驗證機制。
    • 請勿申請免費試用。

Google Cloud 控制台稍後會在這個分頁開啟。

注意:如要使用 Google Cloud 產品和服務,請點選「導覽選單」,或在「搜尋」欄位輸入服務或產品名稱。「導覽選單」圖示和搜尋欄位

啟用 Dialogflow 和 AI Applications API

  1. 在 Google Cloud 控制台搜尋欄位輸入「Dialogflow API」。
  2. 選取「Dialogflow API」圖塊。
  3. 點選「啟用」按鈕。
  4. 前往 AI Applications 控制台,然後點選「繼續並啟用 API」,即可啟用 AI Applications API。

點選「Check my progress」,確認目標已達成。 啟用 Dialogflow 和 AI Applications API

工作 1:建立代理

  1. 前往 AI Applications 應用程式控制台,在應用程式類型部分選擇「對話式代理」,然後點按「建立」,即可建立新的對話式代理。
  1. 「Conversational Agents」新頁面會隨即開啟。如果系統顯示彈出式視窗請您選取專案,請選擇專案 ID

    注意:如果清單中找不到專案 ID,請查看右側的使用者資訊,確認您是以學生身分使用 Conversational Agents。

    ca_console.png

  2. Get started with Conversational Agents 彈出式視窗,選取「Build your own」

  3. Create agent 頁面,輸入 Flight booker 做為代理顯示名稱。

  4. 位置選擇「global」

  5. 將「Conversation start」設為「Playbook」,然後點選「Create」按鈕。

  1. 在 Conversational Agents 控制台,前往「Agent Overview」。依序點選「Default Generative Playbook」、「Settings」分頁標籤和「(Agent) Settings」按鈕。
  1. 如要為代理啟用記錄功能,請在「Agent Settings」頁面,點選「General」分頁標籤,然後向下捲動至 Logging settings 部分,勾選「Enable Cloud Logging」和「Enable Conversation History」旁的方塊。設定完畢後,系統便會為這個代理產生記錄。

    代理「Settings」頁面的「General」分頁,當中勾選了「Enable Cloud Logging」選項
  2. 點選「Save」

點選「Check my progress」,確認目標已達成。

建立代理

隨堂測驗

工作 2:意圖

意圖是使用者與代理互動的原因,例如想訂購商品。您可以就使用者可能會想使用代理的各個主題建立意圖

意圖可在不同頁面和流程中重複使用,每個意圖都是由使用者可能輸入的訓練詞組定義。您可以標註這些詞組或加上「標籤」,以收集特定參數,例如抵達城市或出發日期。

當您為意圖加入訓練詞組時,Conversational Agents 會提供建議註解,您也可以手動標註,從使用者與代理的互動中擷取所需參數值。

建議做法:為方便重複使用意圖及簡化維護工作,請為意圖取簡單明瞭的名稱。

意圖格式:category.some_description

格式範例:

  • 核心意圖:main.book_a_flight
  • 常見但非核心的意圖:supplemental.flight_emissions
  • 可重複使用的意圖:confirmation.yesconfirmation_noredirect.live_agent

建立第一個意圖

  1. 前往「Flows」,然後依序點選「Manage」分頁標籤和「Intents」,最後點選「+ Create」,即可建立新意圖。

    醒目顯示「Create」按鈕的「Intents」分頁
  2. Display name 部分輸入 main.book_a_flight

  3. 在「Training Phrases」標題下方,將下列每個詞組新增至 Custom training phrase 欄位,每輸入一個詞組後請按 Enter 鍵:

    • 預訂航班
    • 請幫我預訂下個月飛往舊金山的航班
    • 我想在 10 月使用獎勵點數預訂從米蘭出發的航班
    • 我的家人下週要來訪,需預訂 6 張來回機票
    • 四張從臺灣飛往杜拜的商務艙機票,日期為 6 月 2 日至 30 日
    • 我想預訂週六從洛杉磯國際機場飛往聖荷西的航班
    • 預訂 8 月 10 日從舊金山國際機場飛往邁阿密國際機場的單程機票
    • 幫我預訂 4 月 10 日至 4 月 15 日這段期間從墨西哥市到哥倫比亞麥德林的機票
    • 我要幫媽媽安排一趟驚喜之旅,可以幫我規劃 5 月 10 日至 5 月 25 日的哥斯大黎加旅遊行程嗎?
    • 這個週末有飛往紐約市的便宜航班嗎?
    • 我想讓我的親戚在 8 月 8 日從蒙特婁搭機過來我這邊
    • 我預計在 7 月 4 日飛往巴拿馬市,需要訂兩張票
    • 我們計劃在結婚週年紀念日去西雅圖過聖誕節
    注意:為提高模型準確率,建議將訓練詞組控制在 20 到 50 句內,回覆選項同時提供簡答和詳答。
  4. 點選「Save」

    醒目顯示「Save」按鈕的「Intents」分頁
注意:您也可以將訓練詞組整理成 CSV 檔案,並上傳至 Conversational Agents,一次新增多筆詞組。

工作 3:流程和頁面

流程可用於定義主題和相關的對話路徑。每個代理都有一個名為 Default Start Flow 的流程。簡單的代理可能只需要這一個流程就能運作,

較複雜的代理則或許需要額外流程,而不同的開發團隊成員會負責建構及維護這些流程。

Default Start Flow 圖表

每個流程都以頁面開頭,並由一或多個不同的後續頁面組成,用來處理特定流程的對話。使用者當下所處的頁面稱為運作頁面。您可以設定每個頁面,向使用者收集任何必要資訊。

從 Default Start Flow 開始建構

代理的運作起始頁面稱為「Default Start Flow」。頁面會儲存路由邏輯、回覆 (又稱「執行要求」)、無法比對意圖時 (稱為「no-match」) 所採取的特定動作,或接收「no-input」(即代理未及時收到回覆)。

  1. 在「Flows」控制台,點選「Build」分頁標籤。

  2. 點選「Start Page」開啟頁面。

  3. Start Page 展開的選項,選取「Routes」旁的「+」圖示。

    醒目顯示的「Routes」和加號圖示
  4. 從下拉式選單選取意圖「main.book_a_flight」,然後點選「Save」

    「Routes」視窗,醒目顯示已選取的 main.book_a_flight 意圖和「Save」按鈕
  5. 接著,在 Routes 部分點選「main.book_a_flight」路徑。

    醒目顯示 main.book_a_flight 路線的「Routes」部分
  1. 向下捲動至 Transition 部分,選擇「Page」圓形按鈕,然後從下拉式選單選取「+ new Page」

  2. 將頁面命名為機票資訊,然後點選「Save」

    醒目顯示的「Page name」欄位,當中已填入「機票資訊」
  3. 關閉視窗並返回流程的主畫面,即可看到新的「機票資訊」頁面已連結至「Start Page」

    顯示流程圖的主畫面

    現在流程一開始會先顯示問候訊息,並在比對到 main.book_a_flight 意圖時,進到「機票資訊」頁面。在機票資訊頁面,您會向使用者收集參數,以便為他們預訂航班。

工作 4:實體與參數

  • 實體定義您想從使用者身上擷取的資訊類型,例如要飛往的城市。您可以使用 Conversational Agents 內建的系統實體比對日期、時間、顏色、電子郵件地址等。

  • 系統實體也可以「擴充」並納入預設系統值以外的值。如需打造完全客製化的實體,可以建立 Custom Entity 類型,以比對未列於系統實體中的業務專屬資料。

  • 參數是使用者在工作階段期間提供的資訊,例如日期、時間和抵達城市。每個參數都有名稱實體類型。這些屬性會採用蛇形命名法 (用底線連接的小寫字詞)

建立第一組參數

接著,您將使用實體向使用者擷取必要參數。

  1. 點選「機票資訊」頁面,然後點選「Parameters」旁的「+」,收集航班資料。

  2. 在「Display name」欄位輸入 departure_city

  3. 從「Entity type」下拉式選單選擇 @sys.geo-city

  4. 向下捲動至「Initial prompt Fulfillment」部分。在「Agent Responses」下方點選「+ Add dialogue response」,選取「Agent dialogue」,然後新增「您要從哪個城市出發?」

    「Initial prompt Fulfillment」部分,「Agent dialogue」欄位中已填入內容
  1. 點選「Save」

  2. 關閉這個視窗以設定其他參數。

  3. 再次點選「Parameters」旁的「+」,按照下表的名稱、實體類型,以及代理提示使用者的方式,逐一建立另外 4 個參數。

    顯示名稱 實體類型 代理對話
    departure_date @sys.date 出發的月份和日期是什麼時候?
    destination_city @sys.geo-city 您要飛往哪個城市?
    return_date @sys.date 回程航班的月份和日期是什麼時候?
    passenger_name @sys.any 乘客姓名為何?

    建立完畢後,這些項目會按以下形式列出:

    「Parameters」頁面,畫面列出已新增的參數

注意:參數的排列順序會影響航班預訂代理詢問各項資訊的順序;向上或向下拖曳參數即可變更順序。

隨堂測驗

工作 5:條件

代理收集到 5 個必要的航班預訂參數後,就會透過路由條件將使用者導向其他頁面,而本節將說明如何建立條件。

  1. 關閉「Parameters」視窗,再次返回「機票資訊」頁面。

  2. 向下捲動到「Routes」,然後點選旁邊的「+」圖示。

  3. 向下捲動至「Condition」,然後依序點選「Condition rules」>「Match AT LEAST ONE rule (OR)」

  4. 在「Parameter」欄位輸入 $page.params.status

  5. Operand 下拉式選單,選擇「=」符號。

  6. Value 欄位中輸入 "FINAL" (務必加上雙引號)。

    醒目顯示「Parameter」欄位的「Condition」部分
  7. 點選「Save」

隨堂測驗

工作 6:執行要求

本節中您將新增回覆,在收集到所有 5 個預訂參數時向使用者顯示。這些回覆稱為「執行要求」

  1. 在剛才設定條件的畫面稍微向下捲動,找到「Fulfillment」部分。

  2. 向下捲動至「Fulfillment」部分。在「Agent Responses」下方點選「+ Add dialogue response」,選取「Agent dialogue」,然後新增感謝您提供資訊,我會確認是否有可預訂的機票。

    (請先不要關閉這個頁面,並繼續閱讀下一個有關確認資訊的步驟。)

    「Fulfillment」部分,醒目顯示已填入內容的「Agent dialogue」欄位
  1. 點選「Save」

工作 7:確認資訊

提供回覆 (即「執行要求」) 後,您需要建立轉換機制,向使用者重複顯示收集到的旅遊資訊 (即參數),以確認其正確性。

  1. 繼續向下捲動畫面 (跳過剛才建立的「Fulfillment」區塊),找到「Transition」部分。

  2. 選取「Page」圓形按鈕,然後從下拉式選單中選擇「+ new Page」

  3. 在「Page name」欄位輸入確認行程

    「Transition」部分,醒目顯示已填入內容的「Page name」欄位
  4. 點選「Save」

  5. 關閉視窗。

  6. 查看到此為止建立的 3 頁面流程。

    顯示流程圖的主畫面,流程點包括「Start Page」、「機票資訊」和「確認行程」

向使用者重複顯示收集的參數

工作階段參數會儲存「先前收集」的使用者資訊,並在整個工作階段持續有效,方便您向使用者重複顯示資訊。

舉例來說,代理可以重複乘客姓名:$session.params.passenger_name,感謝您提供資訊。使用者實際會看到王小明,感謝您提供資訊

格式如下:

  • 前置字串$session.params.
  • 實體名稱:passenger_name

如果要參照出發城市,結構會像這樣:$session.params.departure_city

  1. 請在「Build」檢視畫面,依序點選「確認行程」頁面 >「Entry fulfillment」>「Edit fulfillment」欄位。

    醒目顯示「Edit fulfillment」欄位的「確認行程」視窗
  2. 由於您使用了 5 個參數,因此可以透過下列工作階段參數,將這些參數重複顯示給使用者。依序前往「Agent responses」>「+ Add dialogue response」>「Agent dialogue」部分,然後貼上以下文字:

    請確認 $session.params.passenger_name 的航班預訂資訊 出發地:$session.params.departure_city 目的地:$session.params.destination_city 出發時間:$session.params.departure_date 回程時間:$session.params.return_date 請問資訊正確嗎? 「Fullfillment」視窗,「Agent dialogue」欄位中已填入內容
  3. 完成後點選「Save」

  4. 對話式代理重複顯示收集到的工作階段參數時,使用者會看到以下內容:

    對話式代理顯示收集到的工作階段參數

肯定回覆路由

  1. 關閉視窗,返回「確認行程」頁面,然後點選「Routes」旁邊的「+」。

    醒目顯示加號按鈕的「確認行程」頁面
  2. 點選「Intents」下拉式選單,然後點選「+ new intent」

    醒目顯示的「Intent」下拉式選單和「+ new Intent」選項
  3. Display name 部分輸入 confirmation.yes

  4. 在「Training phrases」部分輸入,然後點選「Add」 (也可以新增「正確」、「沒錯」等詞組,提升這個意圖的 NLU 配對準確度)。

    「Training phrases」部分,文字欄位中填入了「是」和「正確」詞組
  5. 點選「Save」

  6. 儲存後,向下捲動至 Fulfillment 部分。在「Agent Responses」下方點選「+ Add dialogue response」,選取「Agent dialogue」,然後輸入太棒了,您的航班已預訂完成!

    醒目顯示的「Agent dialogue」欄位中顯示「太棒了,您的航班已預訂完成!」的語句
  1. 完成後點選「Save」

  2. 點選「Route」旁的返回箭頭。

    醒目顯示的返回箭頭

否定回覆路由

現在您要新增另一個邏輯,在使用者表示資訊有誤時重新收集航班參數。

  1. 同樣在「Routes」部分選取「Add route」

    醒目顯示的「Add route」按鈕
  2. 從「Intent」下拉式選單選擇「+ new intent」

  3. 在「Display name」欄位,將意圖命名為 confirmation.no

    醒目顯示的「Display name」欄位,當中輸入了 confirmation.no
  4. 向下捲動至「Training phrases」部分,輸入,然後點選「Add」

  5. 點選「Save」

  6. 接著,向下捲動至「Transition」>「Page」部分,然後從下拉式選單選擇「機票資訊」

    「Transition」部分,「Page」下拉式選單中選取了「機票資訊」 附註:執行這個步驟,是為了再次請使用者提供航班資訊。
  7. 向上捲動至「Parameter presets」,然後點選「Add parameter」。輸入下列 5 個值,並將其值指定為 null (不加引號)。

    注意:請刪除值欄中的引號,然後輸入 null,這是為了刪除向使用者收集的參數。
    參數
    departure_city null
    destination_city null
    departure_date null
    return_date null
    passenger_name null
    「Parameter presets」部分,五個參數皆為空值

    這個步驟的目的是移除先前向使用者收集的值,以便他們提交新值。如果略過這個步驟,機器人可能會陷入無限迴圈!

  8. 點選「Save」

  9. 關閉視窗並返回「Build」檢視畫面,現在您應會看到所有 3 個頁面的流程走向。注意到最後一個頁面的確認行程機票資訊頁面之間有兩個箭頭,因為 confirmation.no 意圖會將使用者導回前一個頁面。

    顯示流程圖的「Build」檢視畫面

    隨堂測驗

工作 8:測試

  1. 現在您將測試代理是否能正常運作,請點選畫面右上方的「Toggle Simulator」圖示。

    顯示流程圖的「Build」檢視畫面
  2. 在「Preview: Default Start Flow」頁面的「Start Resource」部分,選取「Default Start Flow」並測試代理。

    Default Start Flow
  3. 以一般使用者的身分與代理互動。進行主要流程的各階段時,請留意您建立的頁面、意圖和轉換機制。

    視您安排的參數收集順序而定,您可以嘗試輸入下列範例對話:

    • 我想預訂機票
    • 奧斯汀
    • 明天
    • 波士頓
    • 下週五
    • 王小明

    您應能透過代理順利完成交易,也就是使用者體驗俗稱的滿意路徑

    下方是在「Test Agent」控制台中測試上述代理的範例:

    呈現模擬流程的「Test Agent」控制台

點選「Check my progress」,確認目標已達成。 測試代理

工作 9:匯出代理

為專案建構代理後,可以將其匯出並用於其他專案。您可以匯出並儲存代理,在日後的實驗室使用,或繼續在個人專案中建構!

  1. 在 Conversational Agents 控制台頂端的「Agent」下拉式選單,點選「View all agents」

    展開的「Agent」下拉式選單,當中醒目顯示「View all agents」按鈕
  2. 在「Agent」清單畫面,依序點選代理旁邊的內容選單和「Export」

    展開的內容選單,當中醒目顯示「Export」按鈕
  3. 在「Export agent」畫面,選擇「Download」以下載為本機檔案,然後點選「Export」

    「Export agent」頁面,當中醒目顯示已選取的「Download」選項

恭喜!

您已成功建構完整的 Conversational Agents 流程,包括建立代理,以及定義意圖、結構化流程和頁面,並使用實體與參數擷取資料。您也定義了條件、執行要求回覆,並仔細測試代理,透過本實驗室深入掌握對話式代理的開發技巧。

後續步驟/瞭解詳情

使用手冊上次更新日期:2025 年 5 月 29 日

實驗室上次測試日期:2025 年 5 月 29 日

Copyright 2026 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。

准备工作

  1. 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
  2. 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
  3. 在屏幕左上角,点击开始实验即可开始

使用无痕浏览模式

  1. 复制系统为实验提供的用户名密码
  2. 在无痕浏览模式下,点击打开控制台

登录控制台

  1. 使用您的实验凭证登录。使用其他凭证可能会导致错误或产生费用。
  2. 接受条款,并跳过恢复资源页面
  3. 除非您已完成此实验或想要重新开始,否则请勿点击结束实验,因为点击后系统会清除您的工作并移除该项目

此内容目前不可用

一旦可用,我们会通过电子邮件告知您

太好了!

一旦可用,我们会通过电子邮件告知您

一次一个实验

确认结束所有现有实验并开始此实验

使用无痕浏览模式运行实验

使用无痕模式或无痕浏览器窗口是运行此实验的最佳方式。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。