Create a new app

Check my progress

/ 50

Generate the data store prompt

Check my progress

/ 50

This lab may incorporate AI tools to support your learning.

總覽

本實驗室是使用 AI Applications 建構 Conversational Agents 的完整指南,會逐步說明如何在新的 Conversational Agents 控制台中設定代理,打造應對手冊型和流程型代理。

本實驗室學習重點如下:

  • AI Applications 是建構 Conversational Agents 的起點。
  • 新的 Conversational Agents 控制台以 Dialogflow CX 控制台為基礎,可設定大部分的代理。
  • 對話式代理可以是應對手冊型、流程型或混合型代理。
  • 資料儲存庫是使用 AI Applications 建立的資料存放區,可做為代理回覆的基準。
  • 生成器是代理與大型語言模型之間的連結,代理使用模型剖析使用者輸入內容,並生成代理輸出內容。

建構內容

在本實驗室中,您將使用 AI Applications 和 Conversational Agents 建構、部署及設定對話式代理,協助想捐血的民眾確認自己是否符合資格規定。Conversational Agents 執行要求時,代理會使用真實的公開資料和 Google 的生成式大型語言模型 (LLM)。

Conversational Agents

Conversational Agents 是以生成式模型為基礎建構的全新自然語言理解平台,可控制對話和流程,進行更明確的對話控制。透過 Conversational Agents,您將能輕鬆設計對話式使用者介面,並將介面整合至行動應用程式、網頁應用程式、裝置、機器人、互動式語音回應系統和其他服務。您可利用 Conversational Agents,在產品中打造新穎生動的互動方式,提升使用體驗。

資料儲存庫處理常式和應對手冊資料儲存庫工具會使用資料儲存庫,從您的資料中為使用者的問題尋找答案。資料儲存庫是一組參照您資料的網站與文件。

資料儲存庫設定定義對話式代理如何與資料儲存庫互動。

您可透過 AI Applications 功能,建立以資料儲存庫為基礎的對話式代理。

只要提供網站網址、結構化或非結構化資料 (資料儲存庫),Google 就會剖析內容,並使用儲存庫的資料和大型語言模型來建構對話式代理。接下來顧客和使用者就能與代理互動,根據提供的內容提問及取得解答。

生成器

透過 Conversational Agents 的生成器功能,開發人員可以在執行階段使用 Google 最新的生成式大型語言模型 (LLM) 和自訂提示詞,來生成代理回覆。生成器能根據訓練時使用的大型文字資料集或對話脈絡中取得的一般知識,生成一般回覆。

目標

在本實驗室中,您將瞭解如何執行下列工作:

  • 使用 Conversational Agents 建立應用程式,並將非結構化資料新增至資料儲存庫。
  • 使用知識處理常式,讓使用者與對話式代理根據資料儲存庫中的內容進行對話。
  • 設定生成器文字提示詞,並使用內建的生成器提示詞預留位置,提供情境脈絡。
  • 將字詞標示為生成器提示詞預留位置,稍後在執行要求中將這些字詞與工作階段參數建立關聯,以便在執行期間使用這些字詞的值。
  • 設定生成器,使生成器根據大型文字資料集中的知識及目前對話的脈絡生成回覆。
  • 使用生成器生成正式電子郵件。
  • 測試代理並模擬顧客問題,觸發系統生成回覆。

設定和需求

在這項工作中,您將使用 Qwiklabs 執行實驗室的初始化步驟。

每個實驗室都會提供新的 Google Cloud 專案和一組資源,您可以在時限內免付費使用。

  1. 請務必使用無痕視窗登入 Qwiklabs。

  2. 注意實驗室時間限制 (例如 img/time.png),並確實在該時限內完成相關工作。

  1. 準備就緒時,請按一下 img/start_lab.png

  2. 請記下實驗室憑證,登入 Google Cloud 控制台時會用到。 img/open_google_console.png

  3. 按一下「Open Google Console」

  4. 點選「Use another account」,然後複製本實驗室的憑證,並貼到提示訊息中。

  1. 接受條款,然後略過資源復原頁面。

Google Cloud 控制台

完成初始登入步驟後,就會看到專案資訊主頁。

GCP 專案資訊主頁

確認已選取專案 。如果沒有,請點選控制台頂端的「選取專案」,醒目顯示 Google Cloud project ID,然後點選「開啟」來選取專案。

如果未使用無痕模式,請務必選取正確的專案和使用者帳戶,以免 Google Cloud Billing 帳戶產生意外費用。

工作 1:啟用 API

如要在 AI Applications 使用 Conversational Agents,必須先啟用 Dialogflow API。本實驗室應已啟用這個 API,但仍建議您先確認再繼續操作。

按照下列步驟啟用 Dialogflow API

  1. 在瀏覽器中前往 Dialogflow API 服務詳細資料頁面

  2. 如果尚未啟用 API,請點選「啟用」按鈕,在 Google Cloud 專案中啟用 Dialogflow API。

工作 2:為應用程式建立新的對話式代理和資料儲存庫

現在,您要為代理建立新的對話式代理,並設定資料來源。建構此代理是為了回答顧客有關捐血資格的問題。您將以澳洲紅十字會 Lifeblood 機構為可靠資料來源,並根據捐血資格網站的非結構化資料建立資料儲存庫。

  1. 如要建立新的對話式代理,請開啟 Conversational Agents 控制台

  2. 在「選取專案」對話方塊,點按「全部」分頁標籤。

  3. 點按專案 ID

  4. 點選「建立代理」

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

  6. 在「建立代理」頁面的「顯示名稱」部分,輸入 Blood Donation Agent

  7. 位置請選取「global (Global serving, data-at-rest in US)」

  8. 確認預設的 Conversation start 類型選取「應對手冊」,然後點選「建立」按鈕。

  1. 在「Default Generative Playbook」頁面,點選 Available tools 下方的「+ 資料儲存庫」

  2. 點選「資料儲存庫」下方的「建立資料儲存庫」

  3. 在建立資料儲存庫頁面點選「Cloud Storage (unstructured data)」,系統會將您重新導向 AI Applications 頁面。

  4. 點選左下方的「進階選項」

  5. 選取「非結構化文件 (PDF、HTML、TXT 等)」做為特有資料匯入選項。

  6. 指定下列 Google Cloud Storage 資料夾,其中包含本實驗室的範例資料,並注意不需加上 gs:// 前置字元:

    cloud-samples-data/dialogflow-cx/arc-lifeblood
  7. 點選「繼續」

  8. 將「資料儲存庫名稱」指定為「Australian Red Cross Lifeblood Unstructured」。接著點選「繼續」

  9. 點選「建立」即可建立資料儲存庫。

    注意:建立資料儲存庫最多可能需要 1 分鐘。
  10. 在資料儲存庫清單中,選取名稱為 Australian Red Cross Lifeblood Unstructured 的新建資料儲存庫。

  11. 按一下「活動」分頁,即可查看資料匯入進度。

    注意:一般來說,系統會為新加入的網域建立索引,視文件數量或網域大小而定,最多可能需要 4 小時,文件才會準備就緒。而在本實驗室中,需要 10 到 15 分鐘。
  12. 建立代理後,請返回 Conversational Agents Tools 控制台並重新整理頁面。

  13. 在「工具名稱」欄位輸入「Blood_donation_tool」,然後在下拉式選單中選擇「資料儲存庫」做為工具類型。

  14. 在「資料儲存庫」下方,按一下「Add Data Stores」,選擇「Australian Red Cross Lifeblood Unstructured」,然後依序點選「確認」和「儲存」

    捐血工具

  15. 前往「Playbooks」分頁,然後按一下「Default Generative Playbook」。在「Available tools」下方,選擇名為「Blood_donation_tool」的工具,然後按一下「儲存」

    恭喜!您已完成建構知識型應用程式,準備好協助潛在捐血者,值得慶祝一下!

    不過,您還有更多工作要完成,使用者才能存取代理。在下一節中,您將使用知識處理常式,讓代理與使用者可以進行關於資格規定的對話。

點選「Check my progress」,確認目標已達成。 建立新的應用程式

工作 3:設定代理回答捐血資格常見問題

提供資料儲存庫提示詞

文件收集程序會在背景執行,我們來編輯資料儲存庫提示詞,為代理加上品牌。

  1. 在 Conversational Agents 控制台和代理中,按一下頁面右上角的三點圖示,然後選取「設定」

    代理設定

  2. 前往「生成式 AI」分頁。

    生成式 AI

  3. 按一下「一般」分頁,然後設定篩選器,如下所示。

    篩選器
    仇恨言論 封鎖極少數內容
    危險內容 封鎖極少數內容 (預設)
    情色露骨內容 封鎖極少數內容
    騷擾 封鎖極少數內容

    輸出內容

    一般

  4. 按一下「資料儲存庫」分頁。

    「資料儲存庫」分頁

    如下所示填寫表單,生成下列資料儲存庫提示詞:你的名字是 Donate,是虛構機構 Save a life 親切有禮的聊天機器人。你的任務針對人類的資格資訊提供協助。

    代理脈絡

  5. 按一下分頁頂端的「儲存」按鈕。

點選「Check my progress」,確認目標已達成。 產生資料儲存庫提示詞

為「Default Start Flow」的無相符事件啟用生成式備用答覆

  1. 切換至 Conversational Agents 控制台左上側邊欄的「Flows」分頁 (在「Playbooks」下方),然後開啟「Start Page」

  2. 按一下 sys.no-match-default 事件處理常式。除非方塊已勾選,否則請啟用生成式備用答覆功能,然後按一下「儲存」

    啟用生成式備用答覆功能

檢視執行要求代理的回覆

  1. 在「Start Page」按一下「Default Welcome Intent」

    編輯資料儲存庫

  2. 向下捲動至「Fulfillment」下方的「Agent Responses」。執行要求是代理對使用者的回應。Conversational Agents 已預先填入「Agent dialogue」,並將參數設為 Hi! How are you doing?

    來自資料儲存庫的代理回覆

工作 4:測試代理

請等到文件準備就緒可以使用時,再讓代理查看答覆是否恰當。如要確認文件是否可用,請前往 AI Applications 控制台,在 Blood Donation Agent 應用程式旁,點選「連結的資料儲存庫」下方的 view 連結,然後點選 Australian Red Cross Lifeblood Unstructured

匯入的資料儲存庫

如果您不在 Conversational Agents 控制台,請在 AI Applications 控制台點選應用程式名稱,系統會將您重新導向 Conversational Agents 控制台。

  1. 在代理內的 Conversational Agents 控制台,按一下頁面右上角的三點圖示,然後選取「Toggle Simulator」

    代理模擬器

  2. 在「Start Resource」,從下拉式選單選取 Default Generative Playbook

  3. 詢問您預期會在網站常見問題頁面看到的問題。例如:

    • 如何預約?
    • 捐血的最低年齡限制是幾歲?
    • 我剛從非洲旅行回來,可以捐血嗎?
    • 孕婦可以捐血嗎?

    代理模擬工具範例

    注意:如果機器人的回覆與問題無關,請將模型切換為 Gemini-2.0-flash-lite-001 (預先發布版) 或其他可用模型
  4. 最後,我們試試問代理與捐血完全無關的問題。例如:

    What's the weather like in Melbourne?

    代理應回覆類似這樣的內容:I'm sorry, I can't provide weather information.

    這樣的答覆含有 AI 生成內容,是根據 Conversational Agents 從先前提供的知識連接器設定建立的文字提示詞所產生:「你的名字是 Donate,是 Save a Life 親切有禮的聊天機器人。你的任務針對人類的資格資訊提供協助。」這段文字提示詞包含公司名稱、代理姓名,以及最重要的服務範圍,Conversational Agents 會據此生成代理回覆。

    非常好!到目前為止,您使用了資料儲存庫來協助回答使用者有關捐血的常見問題。在實驗室的下個部分,我們將瞭解如何將生成器文字提示詞繫結至相同內容,以便做出明智決策。

工作 5:設定資格測驗的代理

接下來我們要設計代理,判斷使用者是否符合捐血資格。捐贈者必須符合嚴格的條件,例如年齡、體重、現有身體狀況、近期旅遊等。在本實驗室的範圍內,我們只考量年齡和體重。生成器會使用 Google 的大型語言模型 (LLM),根據對話情境和知識庫動態做出明智決策。

設定新路徑和參數

  1. 切換至 Conversational Agents 控制台左上側欄的「Flows」分頁 (在「Playbooks」下方),然後開啟「Start Page」並點選「Default Welcome Intent」

  2. 向下捲動至「Fulfillment」部分,然後移除「Agent dialogue」欄位中的現有代理回應,並插入以下內容:

    Would you like to take the eligibility quiz to find out if you can donate blood, and start changing lives?

    代理會輸出資料儲存庫

  3. 向下捲動至「轉移」欄位,然後依序選取「頁面」>「+ new page」,將網頁名稱設為「User Blood Donation Decision」,然後按一下「儲存」按鈕。

  4. 前往「管理」分頁,使用下方設定建立兩個意圖,然後按一下「+ 建立」

    顯示名稱 屬性
    confirmation.yes 訓練詞組:「Yes」、「yeah」、「yes please」
    confirmation.no 訓練詞組:「No」
  5. 前往「建構」分頁,然後按一下「User Blood Donation Decision」頁面。

    • 如要建立路徑,請點選「路徑」旁的「+」圖示。

    • 在「意圖」欄位,從下拉式選單選擇「confirmation.yes」

    • 向下捲動至「轉移」欄位,然後依序選取「頁面」>「+ new page」,將頁面名稱設為「Eligibility Quiz」,然後按一下「儲存」按鈕。
    • 按一下「路徑」旁的「+」圖示。

    • 在「意圖」欄位,從下拉式選單選取「confirmation.no」。然後向下捲動至「Fulfillment」>「Agent responses」部分,按一下「+ Add dialogue response」,選擇「agent dialogue」並插入 Thanks, Have a nice day! 做為回覆,然後按一下「儲存」

建立及設定資格生成器

透過 Conversational Agents 的生成器功能,開發人員可以在 Conversational Agents 執行要求期間,使用 Google 最新的生成式大型語言模型 (LLM)。生成器會在執行階段生成代理的回覆。生成器能根據訓練時使用的大型文字資料集或對話脈絡中取得的一般知識,生成一般回覆。

我們要建立新的生成器,比較使用者提供的資訊 (例如年齡和體重) 與資格規定,判斷使用者是否符合捐血資格。

  1. 在 Conversational Agents 控制台中,前往「管理」分頁,選取「Generators」,然後按一下「建立」

    生成器

  2. 接著,將 Blood Donation Eligibility 設為顯示名稱,並編寫下列文字提示詞。

    Check the users eligibility against the following criteria: the minimum age is 18 and the maximum age is 75. Weight should be above 50 Kg. The user age and weight is $last-user-utterance. Be nice and tell the user if they are eligible to donate (also tell them why not in case)
  3. 保留預設的模型品質控管設定。然後按一下「儲存」即可建立生成器。

    在執行階段完成要求時,系統會將文字提示詞傳送至生成模型。請務必清楚提問或提出要求,模型才能生成令人滿意的回覆。您可以在文字提示詞中使用內建的特殊生成器提示詞預留位置:

    • $conversation:代理和使用者之間的對話,不包括使用者最後一句話。
    • $last-user-utterance:使用者最後輸入的內容。

    您設定的文字提示詞會要求使用者在一次對話往來 (使用者最後輸入) 中提供年齡和體重。

在執行要求中使用生成器,並設定所有必要參數

  1. 接下來,前往「建構」分頁,然後按一下「Eligibility Quiz」頁面。

    • 如要新增參數,按一下「參數」旁的「+」圖示。

    • 輸入顯示名稱「age-weight」

    • 實體類型請選取 @sys.any

    • 向下捲動至「Initial Prompt Fulfillment」>「Agent responses」,在「Agent dialogue」欄位中新增提示詞 What is your age and weight?,然後按一下「儲存」

  2. 在「Eligibility Quiz」頁面,點選「路徑」旁的「+」圖示。

    • 在「Condition rules」下方選取 Match AT LEAST ONE rule (OR) 選項,然後輸入條件需求 $page.params.status = "FINAL"

    設定條件

    • 向下捲動至「Fulfillment」>「Generators」,按一下「Add Generator」,然後選取「Blood Donation Eligibility」做為生成器。然後,將「Output Parameter」欄位中的值替換為 $request.generative.eligibility-outcome,其中會包含執行後生成器的結果。

    生成器關聯

    • 在「Fulfillment」>「Agent responses」>「Agent dialogue」欄位中,新增值 $request.generative.eligibility-outcome,然後按一下「儲存」

工作 6:重新測試代理

  1. 按一下頁面右上角的三點圖示,然後選取「Toggle Simulator」

    代理模擬器

  2. 按一下「Reset conversation」圖示,直到顯示「Preview: Default Start Flow」頁面為止,如下所示。

    重設模擬器

    「Default Start Flow」頁面
  3. 在「Preview: Default Start Flow」頁面的「Start Resource」部分,選取「Default Start Flow」並測試代理。

    Default Start Flow
  4. 在「Toggle Simulator」中輸入 Hi,與代理開始新對話,然後按照下圖所示回覆代理的問題。

    代理生成回覆符合資格範例
  5. 接著,檢查是否因未滿足一或兩項條件而導致資格檢查失敗。

    代理檢查回覆中的參數
  6. 太棒了,生成器運作正常!真是如此嗎?如果使用者只告知年齡,但未提供體重 (或反過來),會發生什麼情況?

    代理最終輸出內容

工作 7:調整生成器提示詞

如果沒有同時提供年齡和體重,系統似乎無法一次收集這兩項資訊。我們應改為建立表單,收集這兩個值做為實體參數。如要讓提示詞內容符合所有資格規定 (例如年齡和體重) 脈絡,可以在字詞前加上 $ 來使用預留位置。我們稍後會將這些生成器提示詞預留位置,與執行要求中的工作階段參數建立關聯,並在執行期間以工作階段參數值取代預留位置。

  1. 開啟「Eligibility Quiz」頁面,點選「參數」,移除 age-weight 參數,然後新增兩個個別的表單參數:一個用於體重,另一個用於年齡。選擇 @sys.number-integer 做為實體類型,並將參數標示為必要資訊。為 weight 參數和 age 參數分別提供初始提示詞填答內容,例如 What is your correct weight?How old are you?。儲存所有變更。

    資格測驗實體類型
  2. 如要更新生成器的文字提示詞,加入兩個新的自訂預留位置,需先移除生成器。如要這麼做,點選建立的路徑,向下捲動至「Fulfillment」>「Generator」部分,移除「Blood Donation Eligibility」的生成器,然後點選「儲存」

    移除生成器預留位置

  3. 前往「管理」分頁,選取「Generators」,然後更新「Blood Donation Eligibility」生成器的文字提示詞:Check the users eligibility against the following criteria: the minimum age is 18 and the maximum age is 75. The weight must be at least 50 kg. The user is $age years old and weighs $weight Kg. Craft an email and politely explain to the user if they're eligible to donate and if not why.

    請注意,我們不只是讓文字提示詞與年齡和體重表單參數相關,也變更了最後一句,以便生成包含資格測驗官方認定結果的正式電子郵件,並寄給使用者。

    更新生成器

  4. 按一下「儲存」

  5. 返回「建構」分頁。在「Eligibility Quiz」頁面中選取路線,然後展開「Fulfillment」窗格的「Generators」部分。然後,按一下「Add generator」,並選取 Blood Donation Eligibility 生成器。選取生成器後,請將新的提示詞預留位置與對應的工作階段參數建立關聯。此外,您需要重新設定 inputoutput 參數,如下所示。

    • 年齡:$session.params.age
    • 體重:$session.params.weight
    • 輸:$request.generative.eligibility-outcome

    連結生成器

  6. 按一下「儲存」

  7. 再次測試代理。現在資格檢查會同時考量年齡和體重,且用語會從原本的對話語氣變得更有禮貌,回覆可直接傳送,無需人工介入。

    代理測試生成器

恭喜!

今天我們深入研究了資格測驗中的生成器。您已瞭解生成器如何使用 LLM 生成代理回覆,並運用知識庫做出明智決策。當然,還可以利用生成器和資料儲存庫進行許多其他作業,我們很期待瞭解這些用途!

瞭解詳情

歡迎參考下列指南和資源,進一步瞭解 Agent Builder AI 和生成式 AI:

Google Cloud 教育訓練與認證

...協助您充分運用 Google Cloud 的技術。我們的課程涵蓋專業技能和最佳做法,引領您快速掌握要領,在學習路上持續精進。我們提供從基礎到進階等級的教育訓練,並有隨選、實體和虛擬等課程形式,方便您配合行程自行安排。透過認證,您可以驗證並證明自己在 Google Cloud 技術領域的專業實力與技能。

使用手冊上次更新日期:2026 年 4 月 1 日

實驗室上次測試日期:2026 年 4 月 1 日

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

Before you begin

  1. Labs create a Google Cloud project and resources for a fixed time
  2. Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
  3. On the top left of your screen, click Start lab to begin

Use private browsing

  1. Copy the provided Username and Password for the lab
  2. Click Open console in private mode

Sign in to the Console

  1. Sign in using your lab credentials. Using other credentials might cause errors or incur charges.
  2. Accept the terms, and skip the recovery resource page
  3. Don't click End lab unless you've finished the lab or want to restart it, as it will clear your work and remove the project

This content is not currently available

We will notify you via email when it becomes available

Great!

We will contact you via email if it becomes available

One lab at a time

Confirm to end all existing labs and start this one

Use private browsing to run the lab

Using an Incognito or private browser window is the best way to run this lab. This prevents any conflicts between your personal account and the Student account, which may cause extra charges incurred to your personal account.

Complete this quick step to start your lab.