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

為 ADK 代理提供工具

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

GENAI105

總覽

本實驗室說明如何搭配使用工具和 Agent Development Kit 代理。

Google 和 LangChain 及 CrewAI 生態系統都提供了豐富多樣的強大工具 (例如 Google 搜尋和 Vertex AI Search),任您挑選。

此外,只要編寫正確的 docstring,就能從函式建立屬於自己的工具!

本實驗室假設您熟悉「開始使用 Agent Development Kit (ADK)」實驗室涵蓋的 ADK 基礎知識。

目標

在本實驗室,您將瞭解 ADK 代理適用的工具生態系統,以及如何將函式提供給代理當做自訂工具。

完成本實驗室後,您將能夠:

  • 為代理提供預先建構的 Google、LangChain 或 CrewAI 工具
  • 就編寫代理的工具函式,討論結構化 docstring 和型別指派的重要性
  • 為代理編寫專屬工具函式

設定和需求

瞭解以下事項後,再點選「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 產品和服務,請點選「導覽選單」,或在「搜尋」欄位輸入服務或產品名稱。「導覽選單」圖示和搜尋欄位

搭配使用 Agent Developer Kit 和工具

善用工具是智慧型代理與基本模型的主要差異。工具是一段程式碼 (如函式或方法),可執行特定動作,例如與資料庫互動、發出 API 要求,或叫用其他外部服務。

工具可讓代理與其他系統互動,並執行超出核心推理和生成能力範圍的動作。請務必注意,這些工具是獨立運行,與代理的 LLM 無關,也就是說,工具不會自動具備自己的推理能力。

Agent Development Kit 為開發人員提供多種工具:

  • 預先建構的工具:可立即使用的功能,例如 Google 搜尋、程式碼執行和檢索增強生成 (RAG) 工具。
  • 第三方工具:與 LangChain 和 CrewAI 等外部程式庫的工具完美整合。
  • 自訂工具:使用特定語言的建構體和「將代理作為工具」,建立符合特定需求的自訂工具。SDK 也透過 Long Running Function Tools 提供非同步功能。

在本實驗室,您將瞭解這些類別,並實作其中一種類別。

Google 提供的預先建構工具

Google 為代理提供多種實用工具,包括:

Google 搜尋 (google_search):允許代理使用 Google 搜尋執行網頁搜尋,只要將 google_search 新增至代理的工具即可。

執行程式碼 (built_in_code_execution):這項工具可讓代理執行程式碼,進行計算、操縱資料,或以程式輔助方式與其他系統互動。您可以使用預先建構的 VertexCodeInterpreter,或是實作 BaseCodeExecutor 介面的任何程式碼執行器。

檢索 (retrieval):這組工具可從各種來源擷取資訊。

Vertex AI Search 工具 (VertexAiSearchTool):這項工具與 Google Cloud 的 Vertex AI Search 服務整合,可讓代理搜尋 AI 應用程式資料儲存庫。

工作 1:安裝 ADK 並設定環境

注意:建議在無痕模式瀏覽器視窗中開啟大多數 Qwiklabs 課程,以免分不清 Qwiklabs 學員帳戶和其他登入 Google Cloud 的帳戶。如果是使用 Chrome,您可以直接關閉所有無痕視窗,在本實驗室頂端的「Open Google Cloud 控制台」按鈕上按一下滑鼠右鍵,然後選取「在無痕視窗中開啟連結」。

啟用 Vertex AI 建議的 API

  1. 在本實驗室環境中,Vertex AI API 已啟用。如要在專案中執行這些步驟,請前往 Vertex AI,然後按照提示啟用。

準備 Cloud Shell 編輯器分頁

  1. 選取 Google Cloud 控制台視窗,然後依序按下鍵盤上的 GS 鍵,開啟 Cloud Shell。或者,您也可以點按 Cloud 控制台右上方的「啟用 Cloud Shell」按鈕 (啟用 Cloud Shell)。

  2. 按一下「繼續」

  3. 系統提示您為 Cloud Shell 提供授權時,按一下「授權」

  4. 點按 Cloud Shell 終端機面板右上角的「在新視窗中開啟」 按鈕 「在新視窗中開啟」按鈕

  5. 在 Cloud Shell 終端機輸入下列指令,開啟 Cloud Shell 編輯器並前往主目錄:

    cloudshell workspace ~
  1. 關閉畫面右側顯示的其他教學課程或 Gemini 面板,為程式碼編輯器保留更多視窗空間。
  2. 在本實驗室的其餘部分,您可以透過這個視窗,使用 Cloud Shell 編輯器和 Cloud Shell 終端機做為 IDE。

下載並安裝本實驗室的 ADK 和程式碼範例

  1. 將下列指令貼到 Cloud Shell 終端機,從 Cloud Storage bucket 下載本實驗室的程式碼:

    gcloud storage cp -r gs://{{{project_0.project_id| YOUR_GCP_PROJECT_ID}}}-bucket/adk_tools .
  2. 在 Cloud Shell 終端機執行下列指令,更新 PATH 環境變數、安裝 ADK,並安裝本實驗室的其他必要項目。

    export PATH=$PATH:"/home/${USER}/.local/bin" python3 -m pip install google-adk[extensions] -r adk_tools/requirements.txt 注意:使用 google-adk[extensions] 的目的是安裝 Crew AI 工具所需的額外依附元件。

工作 2:建立搜尋應用程式,根據自有資料建立回覆基準

在後續工作中,您將使用 Google 提供的 Vertex AI Search 工具,根據 AI 應用程式資料儲存庫中的資料建立回覆基準。應用程式的資料儲存庫需要一段時間才能擷取資料,因此您現在要設定資料儲存庫,然後在後續工作中用來根據資料提供回覆。

  1. 前往已開啟 Cloud 控制台的瀏覽器分頁,然後在頂端搜尋「AI 應用程式」並前往該頁面。

  2. 勾選條款及細則核取方塊,然後按一下「繼續並啟用 API」

  3. 選取左側導覽選單中的「資料儲存庫」

  4. 選取「建立資料儲存庫」

  5. 找到「Cloud Storage」資訊卡,然後點按「選取」

  6. 選取「非結構化文件 (PDF、HTML、TXT 等)」

  7. 我們已為您將範例文件上傳至 Cloud Storage。這些文件與假想的行星「Persephone」有關。本例中使用的是虛構行星,因此模型在訓練期間不可能學到任何與該行星相關的知識。

    如果是 GCS 路徑,請輸入 -bucket/planet-search-docs

  8. 按一下「繼續」

  9. 將「位置」維持「全域」

  10. 在「資料儲存庫名稱」中輸入:Planet Search

  11. 點按「建立」

  12. 按一下左側導覽列中的「應用程式」

  13. 按一下「建立新的應用程式」

  14. 找到「自訂搜尋 (一般)」應用程式的資訊卡,然後按一下「建立」

  15. 將應用程式命名為「Planet Search」。

  16. 提供「Planet Conferences」的「公司名稱」

  17. 按一下「繼續」

  18. 勾選「Planet Search」資料儲存庫旁的核取方塊。

  19. 選取「建立」

  20. 建立應用程式後,按一下左上方的「AI 應用程式」標誌,即可返回應用程式資訊主頁。

  21. 複製「應用程式」表格中顯示的應用程式 ID 值。請將這個值儲存在文字文件中,稍後會使用這個值。

    目前,資料儲存庫需要一些時間來擷取資料。稍後您需要將搜尋應用程式提供給代理,做為回應的依據。

點選「Check my progress」,確認目標已達成。 建立搜尋資料儲存庫和搜尋應用程式。

第三方工具

ADK 可讓您使用第三方 AI 程式庫 (例如 LangChain 和 CrewAI) 提供的工具。

工作 3:使用 LangChain 工具

LangChain 社群建立了大量工具整合項目,可存取許多資料來源、整合各種網路產品,以及完成不同工作。使用 ADK 內的社群工具,可避免重複編寫他人已建立的工具。

  1. 返回顯示 Cloud Shell 編輯器的瀏覽器分頁,並使用左側的檔案總管前往 adk_tools/langchain_tool_agent 目錄。

  2. 在 Cloud Shell 終端機中執行下列指令,編寫 .env 檔案,為這個代理目錄提供驗證詳細資料:

    cd ~/adk_tools cat << EOF > langchain_tool_agent/.env GOOGLE_GENAI_USE_VERTEXAI=TRUE GOOGLE_CLOUD_PROJECT={{{project_0.project_id| YOUR_GCP_PROJECT_ID}}} GOOGLE_CLOUD_LOCATION={{{project_0.default_region| GCP_LOCATION}}} MODEL=gemini-2.5-flash EOF
  3. 執行下列指令,將 .env 檔案複製到本實驗室中使用的其他代理目錄:

    cp langchain_tool_agent/.env crewai_tool_agent/.env cp langchain_tool_agent/.env function_tool_agent/.env cp langchain_tool_agent/.env vertexai_search_tool_agent/.env
  4. 點選 langchain_tool_agent 目錄中的 agent.py 檔案。

  5. 請留意 LangchainTool 類別的匯入作業。這個 wrapper 類別可讓您在 Agent Development Kit 中使用 LangChain 工具。

  6. agent.py 檔案中的指定位置新增下列程式碼,將 LangChain Wikipedia 工具新增至代理。這樣一來,代理就能搜尋維基百科的資訊:

    tools = [ # Use the LangchainTool wrapper... LangchainTool( # to pass in a LangChain tool. # In this case, the WikipediaQueryRun tool, # which requires the WikipediaAPIWrapper as # part of the tool. tool=WikipediaQueryRun( api_wrapper=WikipediaAPIWrapper() ) ) ]
  1. 在 Cloud Shell 終端機中執行下列指令,從 adk_tools 專案目錄啟動 Agent Development Kit 開發人員使用者介面

    adk web

    輸出內容

    INFO: Started server process [2434] INFO: Waiting for application startup. +-------------------------------------------------------+ | ADK Web Server started | | | | For local testing, access at http://localhost:8000. | +-------------------------------------------------------+ INFO: Application startup complete. INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
  2. 點按終端機輸出內容中的 http://127.0.0.1:8000 連結,即可在新分頁中查看網頁介面。

  3. 系統會開啟新的瀏覽器分頁,顯示 ADK 開發人員使用者介面。

  4. 在左側的「選取代理」下拉式選單中,選取「langchain_tool_agent」

  5. 使用下列內容查詢代理:

    葛麗絲霍普是誰?

    輸出內容:

    Langchain 維基百科工具

  6. 點按代理聊天泡泡旁的代理圖示 (agent_icon),即可查看代理是否使用了 Wikipedia 工具。

  7. 請注意,內容包含 functionCall,其中含有維基百科的查詢。

  8. 點按分頁頂端的前進按鈕,即可前往下一個事件。

  9. 探索這個事件,您會看到系統從維基百科擷取,用來生成模型回覆的結果。

  10. 向這個代理提問完畢後,關閉開發人員使用者介面瀏覽器分頁。

  11. 選取 Cloud Shell 終端機面板,然後按下 CTRL + C 鍵停止伺服器。

點選「Check my progress」,確認目標已達成。 使用 LangChain 工具。

工作 4:使用 CrewAI 工具

您也可以透過 CrewaiTool wrapper 使用 CrewAI 工具

  1. 如要執行這項操作,請使用 Cloud Shell 編輯器檔案總管,前往 adk_tools/crewai_tool_agent 目錄。

  2. 點選 crewai_tool_agent 目錄中的 agent.py 檔案。

  3. 請留意 ADK 中的 CrewaiTool 類別和 crewai_tools 中的 ScrapeWebsiteTool 都已匯入。

  4. agent.py 檔案中的指定位置新增下列程式碼,將 CrewAI Scrape Website 工具新增至代理,並提供名稱和說明:

    tools = [ CrewaiTool( name="scrape_apnews", description=( """Scrapes the latest news content from the Associated Press (AP) News website.""" ), tool=ScrapeWebsiteTool(website_url='https://apnews.com/') ) ]

    ScrapeWebsiteTool 會從美聯社新聞網站 apnews.com 載入內容。

  1. 您將使用指令列介面執行這個代理,藉此熟悉這種快速測試代理的便利方式。請在 Cloud Shell 終端機中,從 adk_tools 專案目錄啟動代理,並使用 ADK 指令列 UI:

    adk run crewai_tool_agent
  2. 代理載入時,可能會顯示一些警告。您可以忽略這類訊息。看到 user: 提示時,請輸入以下內容:

    取得美聯社新聞的 10 則最新頭條新聞。

    輸出內容:

    Using Tool: Read website content [crewai_tool_agent]: Here are the latest headlines from AP News: ...
  3. 請注意,指令列介面也會指出目前使用的工具。

  4. 在終端機中,針對下一個 user: 提示詞回應 exit即可退出指令列介面

  5. 在終端機記錄中向上捲動,找出您執行 adk run crewai_tool_agent 的位置,並注意指令列介面提供給您進行追蹤的記錄檔。複製並執行該指令,即可查看執行作業的更多詳細資料:

    tail -F /tmp/agents_log/agent.latest.log
  6. 按下 CTRL + C 鍵,停止追蹤記錄檔並返回命令提示字元。

點選「Check my progress」,確認目標已達成。 使用 CrewAI 工具。

工作 5:使用函式做為自訂工具

如果預先建構的工具無法完全滿足特定需求,您可以自行建立工具,以便使用自訂功能,例如連線至專屬資料庫或實作獨特的演算法。

想要建立新工具,最簡單的方法是編寫標準 Python 函式,並以標準格式撰寫 docstring,然後傳遞至模型當做工具。這個方法具有彈性,且可快速整合。

撰寫做為工具使用的函式時,請留意下列幾點:

  • 參數:函式可接受任意數量的參數,每個參數可以是任何可序列化為 JSON 的類型 (例如字串、整數、清單、字典)。請務必避免為參數設定預設值,因為大型語言模型 (LLM) 目前不支援解讀這些值。
  • 傳回類型:Python 函式工具偏好的傳回類型為字典。您可以用鍵/值組合建構回覆,為 LLM 提供背景資訊和明確性。比方說,請不要傳回數字錯誤代碼,而是傳回含有 "error_message" 鍵的字典,其中包含人類可讀的說明。最佳做法是在傳回字典中加入 "status" 鍵,指出整體結果 (例如 "success""error""pending"),為 LLM 提供作業狀態的明確信號。
  • docstring:函式的 docstring 會做為工具的說明傳送給 LLM。因此,撰寫詳盡的 docstring 至關重要,有助於 LLM 瞭解如何有效使用工具。請清楚說明函式的用途、參數的意義,以及預期的傳回值。

如要定義函式並將其當做工具使用,請完成下列步驟:

  1. 使用 Cloud Shell 編輯器的檔案總管,前往 adk_tools/function_tool_agent 目錄。

  2. function_tool_agent 目錄中,點選 agent.py 檔案。

  3. 檢查函式 get_date()write_journal_entry() 的 docstring 格式是否正確,ADK 代理可據此瞭解使用時機和方式,包括:

    • 清楚說明每個函式的用途
    • Args: 區段,說明函式的輸入參數和可序列化為 JSON 的類型
    • Returns: 區段,說明函式傳回的內容,並以 dict 做為偏好的回覆類型
  4. 如要將函式傳遞給代理當做工具使用,請在 agent.py 檔案中的指定位置新增下列程式碼:

    tools=[get_date, write_journal_entry]
  1. 您將使用開發人員使用者介面執行這個代理,瞭解如何透過工具輕鬆查看工具要求和回覆。在 Cloud Shell 終端機中使用以下指令,再次從 adk_tools 專案目錄執行開發人員使用者介面 (如果伺服器仍在執行,請先按下 CTRL+C 鍵停止伺服器,然後執行下列指令再次啟動):

    adk web
  2. 點按終端機輸出內容中的 http://127.0.0.1:8000 連結。

  3. 系統會開啟新的瀏覽器分頁,顯示 ADK 開發人員使用者介面。

  4. 在左側的「選取代理」下拉式選單中,選取「function_tool_agent」

  5. 使用下列內容與代理開始對話:

    hello
  6. 代理應會詢問您今天過得如何。請用一句話說明您今天過得如何 (例如「It's been a good day.I did a cool ADK lab),代理就會為您撰寫日記。

    輸出內容範例:

    日記工具功能

  7. 請注意,代理會顯示自訂工具要求和回覆的按鈕。點按各個按鈕即可查看不同事件的詳細資訊。

  8. 關閉開發人員使用者介面分頁。

  9. 在 Cloud Shell 編輯器中,您可以在 adk_tools 目錄找到以日期為名的日記檔案 (建議您使用 Cloud Shell 編輯器的選單,啟用「查看」 >「換行」,就能查看完整文字,不用進行大量水平捲動)。

  10. 點按 Cloud Shell 終端機面板,然後按下 CTRL + C 鍵,停止伺服器。

    撰寫函式做為工具的最佳做法包括:

    • 參數越少越好:盡量減少參數的數量,降低複雜度。
    • 使用簡易資料類型:盡可能使用原始資料類型 (如 strint),而非自訂類別。
    • 使用有意義的名稱:函式和參數的名稱會大幅影響 LLM 解讀及使用工具的方式。選用的名稱應清楚反映函式的用途和輸入內容的意義。
    • 分解複雜函式:不要使用單一 update_profile(profile: Profile) 函式,而是建立個別函式,例如 update_name(name: str)update_age(age: int) 等。
    • 傳回狀態:在傳回字典中加入 "status" 鍵,指出整體結果 (例如 "success""error""pending"),為 LLM 提供清楚的作業狀態信號。

點選「Check my progress」,確認目標已達成。 使用函式做為自訂工具。

工作 6:使用 Vertex AI Search 做為工具,以自有資料建立基準

在這項工作中,您將瞭解如何使用 Agent Development Kit 代理,搭配內建的 Google Vertex AI Search 工具,以及先前建立的 AI 應用程式資料儲存庫,輕鬆部署 RAG 應用程式。

  1. 返回「Cloud Shell 編輯器」分頁,然後選取「adk_tools/vertexai_search_tool_agent」目錄。

  2. vertexai_search_tool_agent 目錄中,點選 agent.py 檔案。

  3. 在匯入項目底部的指定位置,新增 VertexAiSearchTool 類別的匯入項目:

    from google.adk.tools import VertexAiSearchTool
  4. 更新程式碼,將 VertexAiSearchTool 例項化。在傳遞至 search_engine_id 的路徑中,將 YOUR_PROJECT_ID 更新為 ,並將 YOUR_SEARCH_APP_ID 更新為您在先前工作中複製的搜尋應用程式 ID。

  5. 在代理定義中的指定位置新增下列程式碼,為代理提供工具:

    tools=[vertexai_search_tool]

    如要確認資料儲存庫是否已可供使用,請在控制台的「AI 應用程式」>「資料儲存庫」頁面中選取資料儲存庫名稱。

    「活動」 和「文件」 分頁會顯示文件匯入和建立索引作業的狀態。「活動」分頁顯示「匯入完成」時,資料儲存庫應已可供查詢。

  6. 在 Cloud Shell 終端機中執行下列指令,從 adk_tools 專案目錄啟動指令列介面。您將加入 --reload_agents 旗標,以便讓開發人員使用者介面在您做出變更時重新載入代理。

    adk web --reload_agents 注意:如未關閉先前的 adk web 工作階段,請選取執行工作階段的 Cloud Shell 終端機面板,然後按下 CTRL + C 鍵。假如找不到先前使用的 Cloud Shell 終端機分頁,預設通訊埠 8000 會遭到封鎖,但您可以使用 adk web --port 8001 啟動開發人員使用者介面並啟用新的通訊埠。
  7. 點按 http://127.0.0.1:8000 開啟 ADK 開發人員使用者介面。

  8. 在左側的「選取代理」下拉式選單中,選取「vertexai_search_tool_agent」

  9. 使用下列指令,向代理查詢 Cloud Storage 文件中所述的虛構行星:

    Is the new planet Persephone suitable for habitation?

    輸出內容範例 (可能與您的輸出內容略有不同)

    Based on the "Persephone Survey: What we Know So Far" document, Persephone exhibits several characteristics that suggest it could be habitable: - Location: It orbits within the habitable zone of its star. - Temperature: The average surface temperature is estimated to be around 18°C (64°F). ...

使用 AgentTool 將搜尋工具與其他工具整合

搜尋工具的實作限制在於,您無法在同一個代理中混用搜尋工具和非搜尋工具。如要解決這個問題,您可以使用 AgentTool 將代理包裝成搜尋工具,然後使用該代理做為工具,與其他工具一起執行搜尋。

如要查看實際運作情況,請按照下列步驟操作:

  1. 確認您已開啟 adk_tools/vertexai_search_tool_agent/agent.py 檔案。

  2. 更新 root_agent 的 tools 參數,加入 get_date 函式工具:

    tools=[vertexai_search_tool, get_date]
  1. 在 ADK 開發人員使用者介面中詢問代理:

    What is today's date?

    預期輸出內容:

    錯誤訊息,指出系統支援多個工具,但全都是搜尋工具。
  2. 返回 adk_tools/vertexai_search_tool_agent/agent.py 檔案,將下列程式碼貼到 root_agent 上方。這個代理專門使用搜尋工具,且內含搜尋工具和使用說明:

    vertexai_search_agent = Agent( name="vertexai_search_agent", model=os.getenv("MODEL"), instruction="Use your search tool to look up facts.", tools=[vertexai_search_tool] )
  1. root_agent 的工具參數替換成下列內容,使用 AgentTool() 包裝在上一個步驟中建立的代理:

    tools=[ AgentTool(vertexai_search_agent, skip_summarization=False), get_date ]
  2. 現在您可以查詢代理,並同時接收搜尋結果和使用 get_date() 函式。

    返回 ADK 開發人員使用者介面瀏覽器分頁,然後按一下「+ 新工作階段」

  3. 再問一次以下問題:

    What is today's date?

    代理應會回覆正確日期。

  4. 提出以下問題來叫用搜尋工具:

    When is the PlanetCon conference?

    預期輸出內容:

    The PlanetCon: Persephone conference is scheduled for October 26th - 28th, 2028.
  5. 歡迎向代理提出更多問題,瞭解這顆新行星和即將公布這項發現的研討會。取得滿意的結果後,關閉開發人員使用者介面分頁。

  6. 向這個代理提問完畢後,請關閉瀏覽器分頁,選取執行伺服器的 Cloud Shell 終端機視窗,然後按下 CTRL + C 鍵停止伺服器。

點選「Check my progress」,確認目標已達成。 使用 Google 提供的工具。

更多工具類型等您探索!

以下工具類型值得瞭解,但您不會在本實驗室中實作這些工具。

LongRunningFunctionTool 類別

這項工具是 FunctionTool 的子類別,可處理需要大量處理時間的工作,因此應在不封鎖代理執行的情況下呼叫。

使用 LongRunningFunctionTool 時,Python 函式可以啟動長時間執行的作業,並視需要傳回中繼結果,讓模型和使用者掌握進度 (例如狀態更新或預計完成時間),以便代理繼續處理其他工作。

舉例來說,在人機迴圈情境中,代理必須先獲得人工核准,才能繼續執行工作。

將 Application Integration 工作流程做為工具

透過 Application Integration,您可以在 Google Cloud 控制台使用拖曳介面,透過 Integration Connector 的 100 多個預先建構連接器,為 Google Cloud 產品和第三方系統 (例如 Salesforce、ServiceNow、JIRA、SAP 等) 建構工具、資料連線和資料轉換。之後,您可以使用 ADK ApplicationIntegrationToolset允許代理連線至這些來源或呼叫工作流程

Model Context Protocol (MCP) 工具

Model Context Protocol (MCP) 是一項開放標準,旨在將 Gemini 和 Claude 等大型語言模型 (LLM) 與外部應用程式、資料來源和工具的通訊方式標準化。無論您是想建構工具來呼叫 MCP 服務,還是公開 MCP 伺服器,供其他開發人員或代理與您的工具互動,ADK 都能協助您在代理中運用 MCP 工具。

請參閱 MCP 工具說明文件,瞭解相關程式碼範例和設計模式,協助您搭配使用 ADK 和 MCP 伺服器,包括:

  • 在 ADK 中使用現有的 MCP 伺服器:ADK 代理可做為 MCP 用戶端,並使用外部 MCP 伺服器提供的工具。
  • 透過 MCP 伺服器公開 ADK 工具:如何建構 MCP 伺服器來包裝 ADK 工具,讓任何 MCP 用戶端都能存取。

想進一步瞭解如何搭配 ADK 代理使用 MCP,請參閱「搭配 ADK 代理使用 Model Context Protocol (MCP) 工具」實驗室。

恭喜!

在本實驗室中,您已瞭解如何:

  • 為代理提供預先建構的 Google、LangChain 或 CrewAI 工具
  • 為代理編寫專屬工具函式
  • 就編寫代理的工具函式,討論結構化 docstring 和型別指派的重要性

後續步驟

想進一步瞭解如何使用 Agent Development Kit 建構及部署代理,請參閱下列實驗室:

Google Cloud 教育訓練與認證

協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。

使用手冊上次更新日期:2025 年 11 月 18 日

實驗室上次測試日期:2025 年 11 月 6 日

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

准备工作

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

使用无痕浏览模式

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

登录控制台

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

此内容目前不可用

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

太好了!

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

一次一个实验

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

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

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