使用 ADK 和 Cloud Run 的單一代理 AI 系統

Last reviewed 2025-12-09 UTC

本文件提供參考架構,協助您在 Google Cloud上設計單一代理 AI 系統。這個架構中的單一代理系統是使用 Agent Development Kit (ADK) 建構,並部署在 Cloud Run 上。您也可以在 Gemini Enterprise Agent Platform 的 Agent Runtime 或 Google Kubernetes Engine (GKE) 部署代理。這個架構採用 Model Context Protocol (MCP),可讓代理存取及處理多個來源的資訊,提供脈絡豐富的洞察資訊。

本文適用對象為 AI 應用程式的架構師、開發人員和管理員。本課程假設您已具備 AI、機器學習 (ML) 和大型語言模型 (LLM) 的基本概念。此外,本文也假設您已瞭解 AI 代理和模型的基本概念。但不會提供設計和編寫 AI 代理程式的具體指引。

本文件的「部署」一節列出程式碼範例,可協助您瞭解如何建構及部署單一代理式 AI 系統。

架構

下圖顯示部署在 Cloud Run 的單一代理 AI 系統架構:

部署於 Cloud Run 的單一代理架構。  Google Cloud中的多代理 AI 系統架構。

架構元件

範例架構包含下列元件:

元件 說明
前端 使用者透過前端與代理互動,例如做為無伺服器 Cloud Run 服務執行的對話介面。
代理 代理會接收使用者要求、解讀使用者意圖、選取適當工具,然後統整資訊來回答查詢。
Agent Runtime 代理程式是使用 ADK 建構,並部署為無伺服器 Cloud Run 服務。您也可以將代理部署至 Gemini Enterprise Agent Platform 的 Agent Runtime,或在 GKE 中部署為容器化應用程式。如要瞭解如何選擇 Agent Runtime,請參閱「選擇代理式 AI 架構元件」。
ADK ADK 提供工具和框架,可用於開發、測試及部署代理。ADK 可簡化代理的建立作業,讓 AI 開發人員專注於代理的邏輯和功能。使用 ADK 開發代理時,您可以設定代理存取及使用 Google 搜尋等內建工具。
AI 模型和模型執行階段 在這個範例架構中,代理會使用 Gemini Enterprise Agent Platform 上的 Gemini AI 模型提供推論服務。
MCP Toolbox MCP Toolbox for Databases 為代理提供資料庫專屬工具。可處理連線集區和驗證等複雜作業。
MCP 用戶端、伺服器和工具 MCP 可標準化代理程式與工具之間的互動,方便存取工具。針對每個代理/工具組合,MCP 用戶端會向 MCP 伺服器傳送要求,代理則透過該伺服器存取工具,例如檔案系統或 API。舉例來說,StackOverflow LangChain 工具和 Google 搜尋工具等外部工具可以提供資料和基礎。
觀測能力 代理程式會透過 Google Cloud Observability 進行監控,以便記錄、監控及追蹤。

代理流程

上述架構中的範例單一代理系統,流程如下:

  1. 使用者透過前端 (例如對話介面) 輸入提示,該前端是以無伺服器 Cloud Run 服務的形式運作。
  2. 前端會將提示詞轉送給代理。
  3. 代理會使用 AI 模型解讀使用者提示,並綜合生成回覆:
    • AI 模型會判斷要使用哪些工具來收集情境資訊或執行工作。
    • 代理會執行工具呼叫,並將回覆新增至內容。
    • 代理會執行基準建立和中繼驗證。

使用的產品

這個參考架構使用下列 Google Cloud 和開放原始碼產品與工具:

用途

本節說明本文所述架構的可能用途。

自動分類錯誤報告

您可以改編這項參考架構,自動分類處理收到的錯誤報告:瞭解問題、搜尋重複項目、收集相關技術背景資訊,然後在系統中建立錯誤。AI 輔助的代理程式可做為智慧助理,執行初步調查,讓真人專家專心解決更複雜的問題。

在這個用途中,架構可提供下列優點:

  • 縮短解決時間:代理程式會自動進行初步研究並收集相關資訊,大幅縮短指派及解決錯誤單的時間。
  • 提升準確度和一致性:代理可有系統地搜尋多個資料來源 (內部資料庫、程式碼存放區和公開網路),這項功能提供的分析比手動分類更全面且一致。
  • 減少手動工作負載:代理程式可分擔 IT 支援和工程團隊重複的分類任務,讓他們專注於更有價值的工作。

這個架構適合任何開發軟體,且想提升錯誤解決流程效率和成效的機構。如需更多資訊和部署選項,請參閱「軟體錯誤助理 - ADK Python 範例代理」和「Tools Make an Agent: From Zero to Assistant with ADK」(以工具打造代理:運用 ADK 從零建構助理)。

客戶服務

您可以調整這個參考架構,為顧客提供流暢的個人化購物體驗。AI 輔助代理可以提供客戶服務、推薦產品、管理訂單及安排服務時間,讓真人代表專心處理其他工作。

在這個用途中,架構可提供下列優點:

  • 追加銷售和促銷活動:服務專員可以建議產品、服務和促銷活動,協助提高銷售量。代理會根據顧客目前的訂單和相關銷售、顧客的訂單記錄,以及購物車中的商品,提供建議。

  • 訂單管理和排程:服務專員可以管理顧客購物車內容,並協助顧客自行安排服務時間,藉此提高效率並減少顧客摩擦。

  • 減少手動工作負載:服務專員會處理一般查詢、訂單和排程,讓真人客服專員專注於較複雜的顧客問題。

凡是想提升客戶體驗、提高銷售量,以及簡化訂單管理和排程的零售機構,都非常適合採用這項架構。如要瞭解更多資訊和部署選項,請參閱「Cymbal Home & Garden 客服專員」。

時間序列預測

您可以調整這個參考架構,協助預測結果,例如預測需求、流量模式,或分析及預測機器故障。AI 輔助代理可分析即時資料、歷來趨勢和即將舉行的活動,代理可使用這些分析結果,預測指定時間範圍內的結果。這些預測結果可協助您規劃,並減少資料分析師花費的時間。

這個用途在許多情況下都能為組織帶來好處,例如:

  • 商品目錄管理:結合進階分析、過往銷售資料和市場趨勢,AI 代理可協助你規劃補貨訂單,為顧客需求量暴增或低迷的情況做好準備。
  • 行車路線:代理可分析即時和歷來交通模式,以及施工或道路封閉等事件,協助外送和服務供應商節省時間並降低交通成本。
  • 避免服務中斷:代理程式可協助您找出過往服務中斷的根本原因,避免服務中斷。這項功能也有助於預測未來可能發生的故障狀態,讓您在問題發生前先採取因應措施。

如果組織需要根據既定趨勢調整模式,這項架構就是理想選擇。如果貴機構的客戶可從主動提供的洞察資料獲益,進而規劃未來,這項功能也十分適合。如要瞭解詳情和部署選項,請參閱「時間序列預測代理程式與 Google 的 ADK 和 MCP 工具箱」。

文件檢索

您可以調整這項參考架構,使用 Gemini Enterprise Agent Platform 的 RAG Engine,並建立代理來管理脈絡資料檢索。文件檢索代理程式可從精選文件集擷取相關資料,提供附有來源資料出處的事實答案。

有了文件擷取代理,您就能確保顧客和內部使用者獲得與查詢內容相關的資訊,以及瞭解相關背景資訊。這種做法可確保答案是根據您驗證過的資訊產生,有助於減少錯誤和不準確的情況。

文件檢索架構非常適合用於政策和程序、技術基礎架構、產品功能,以及其他以事實為依據的文件知識庫。如要瞭解如何開發以檢索增強生成 (RAG) 技術為基礎的文件檢索代理程式,請參閱文件檢索代理程式。

設計替代方案

本節將介紹 AI 代理程式部署作業的替代設計方法,供您在 Google Cloud中參考。

Agent Runtime

在本文說明的架構中,代理及其工具會部署在 Cloud Run 上。您也可以使用 GKE 或 Agent Runtime 做為替代執行階段。如要瞭解如何選擇 Agent Runtime,請參閱「選擇代理式 AI 架構元件」一文中的「Agent Runtime」。

AI 模型執行階段

在本文件說明的架構中,AI 模型執行階段為 Agent Platform。您也可以改用 Cloud Run 或 GKE 做為執行階段。如要瞭解如何選擇模型執行階段,請參閱「選擇代理式 AI 架構元件」中的「模型執行階段」。

設計須知

本節提供指引,協助您使用這項參考架構,開發符合特定安全性、可靠性、成本、作業效率和效能需求的架構。

系統設計

本節提供指引,協助您選擇 Google Cloud 部署作業的區域,以及選取適當的 Google Cloud 產品和工具。

區域選項

為 AI 應用程式選取 Google Cloud 區域時,請考量下列因素:

如要為應用程式選取合適的 Google Cloud 位置,請使用下列工具:

  • Google Cloud 區域挑選工具: 互動式網頁工具,可根據碳足跡、成本和延遲時間等因素,為應用程式和資料選取最佳 Google Cloud 區域。
  • Cloud Location Finder API:這項公用 API 可讓您透過程式輔助方式,尋找 Google Cloud、Google Distributed Cloud 和其他雲端服務供應商的部署位置。

代理程式設計

本節提供設計 AI 代理的一般建議。撰寫代理程式碼和邏輯的詳細指引不在本文的討論範圍內。

  • 定義及設計代理:
    • 清楚定義代理式 AI 系統的業務目標,以及每個代理執行的工作。
    • 選擇最符合需求的代理設計模式。
    • 使用 ADK,有效率地建立、部署及管理代理架構。
  • 與代理商的互動:
    • 在架構中設計面向真人服務專員的代理程式,支援自然語言互動。
    • 確保每個代理都會向其依附的用戶端清楚傳達其動作和狀態。
    • 設計代理程式,偵測及處理模稜兩可的查詢和細微的互動。
  • 背景資訊、工具和資料:
    • 請確保代理有足夠的脈絡,可追蹤多輪互動和工作階段參數。
    • 清楚說明代理可使用的工具,包括用途、引數和使用方式。
    • 確保代理的回覆以可靠的資料來源為依據,減少幻覺。
    • 實作邏輯來處理不相符的情況,例如提示與主題無關。

記憶體和工作階段儲存空間

本文所示的範例架構不包含記憶體或工作階段儲存空間。在正式環境中,您可以將狀態和記憶體整合至代理,藉此改善回覆並加入個人化設定。

  • 工作階段: 工作階段是指使用者與代理之間的對話串,從初始互動到對話結束。
  • 狀態: 狀態是指代理程式在特定工作階段中使用的資料,以及收集的資料。收集的狀態資料包括使用者和代理之間交換的訊息記錄、任何工具呼叫的結果,以及代理需要瞭解對話情境的其他變數。

ADK 可使用 Session 物件和 state 屬性,追蹤短期記憶體中的工作階段。ADK 也支援與同一使用者跨工作階段的長期記憶,包括透過 Memory Bank。如要儲存會期狀態,也可以使用 Memorystore for Redis 等服務。

如要瞭解代理式 AI 記憶體選項,請參閱「選擇代理式 AI 架構元件」。

安全性

本節說明設計拓撲時的考量事項和建議,確保拓撲符合工作負載的安全需求。 Google Cloud

代理的安全性考量

AI 代理會帶來某些獨特且嚴重的安全風險,傳統的確定性安全防護做法可能無法充分因應。Google 建議採取的做法,是結合確定性安全控管機制的優點,以及動態、以推論為基礎的防禦機制。這項做法奠基於三大核心原則:人類監督、明確定義代理自主性,以及可觀測性。以下是符合這些核心原則的具體建議。

  • 人工監督:代理式 AI 系統有時可能會失敗或未按預期運作。舉例來說,模型可能會生成不準確的內容,或是代理程式可能會選取不適當的工具。在業務關鍵的代理式 AI 系統中,加入人工介入迴路流程,讓人類監督者監控、覆寫及暫停代理。舉例來說,人類使用者可以審查代理的輸出內容、核准或拒絕輸出內容,並提供進一步指引來修正錯誤或制定策略決策。這種方法結合了代理式 AI 系統的效率,以及人類使用者的批判性思考和領域專業知識。
  • 代理程式身分和最小權限存取權:
  • 輸入和輸出流量管理:透過 Agent Gateway 轉送代理流量,在輸入和輸出邊界強制執行執行階段安全性政策。如要瞭解支援 Agent Gateway 的執行階段平台,請參閱「支援的 Agent Runtime」。
    • 用戶端至代理 (輸入):在 Agent Runtime 前方部署 Agent Gateway。閘道會使用 Model Armor 驗證來電者身分,並即時檢查傳入的提示。
    • 代理至任意目的地 (輸出):
      • 透過輸出模式的 Agent Gateway,轉送代理對代理 (A2A) 和代理對工具 (MCP) 的輸出要求。
      • 使用 IAM 存取政策和 Identity-Aware Proxy (IAP),強制執行預設拒絕存取政策。
      • 確認目標代理和工具已在 Agent Registry 中註冊。
      • 使用 Model Armor 檢查外送工具的呼叫和回覆,防範資料竊取、間接提示詞注入和工具濫用。
  • 監控:運用全方位追蹤功能監控代理行為,清楚掌握代理採取的每個動作,包括推論過程、工具選擇和執行路徑。詳情請參閱「在 Agent Runtime 中記錄代理」和「在 ADK 中記錄」。

如要進一步瞭解如何保護 AI 代理,請參閱「AI 代理的安全防護」。

Agent Platform 安全性考量

為確保 Agent Platform 設定和使用方式符合安全性需求,請考慮下列建議:

  • 共同責任:維護安全是共同的責任。Agent Platform 可保護底層基礎架構,並提供工具和安全控管機制,協助您保護資料、程式碼和模型。您有責任正確設定服務、管理存取控管,以及保護應用程式安全。詳情請參閱「Agent Platform 共同責任」。
  • 安全控管:Agent Platform 支援 Google Cloud 安全控管,可滿足資料落地、客戶自行管理的加密金鑰 (CMEK)、使用 VPC Service Controls 確保網路安全,以及資料存取透明化控管機制等需求。詳情請參閱下列說明文件:
  • 安全性:AI 模型可能會生成有害的回覆,有時是為了回應惡意提示。
    • 為提升安全性並降低代理程式 AI 系統遭濫用的可能性,您可以設定內容篩選器,阻擋有害的輸入內容和回覆。詳情請參閱「安全和內容篩選器」。
    • 如要檢查及清理推論要求、代理提示詞、工具呼叫和回覆,防範提示詞注入和有害內容等威脅,您可以對直接模型 API 呼叫和透過 Agent Gateway 轉送的要求使用 Model Armor。Model Armor 可協助您防範惡意輸入、驗證內容安全性、保護私密資料、維持法規遵循,以及一致地強制執行安全和安全性政策。
  • 模型存取權:您可以設定組織政策,限制 Google Cloud 專案中可使用的 AI 模型類型和版本。詳情請參閱「控管 Model Garden 模型的存取權」。
  • 資料保護:如要探索及去識別化提示和回覆中的機密資料,以及記錄資料,請使用 Cloud Data Loss Prevention API。詳情請觀看這部影片,瞭解如何保護 AI 應用程式中的私密資料。

MCP 安全性考量

為確保 MCP 實作項目符合安全規定,建議採取下列措施:

  • 工具註冊與探索:在 Agent Registry 中註冊 MCP 伺服器和工具,確保代理只會連線至已列入清單且經管理員核准的 MCP 端點。
  • 存取控管和流量檢查:在代理程式對任何位置 (輸出) 模式下,透過 Agent Gateway 將代理程式到 MCP 的流量路由傳送,並使用 IAP 和 IAM 存取權政策保護 MCP 伺服器 (例如在 Cloud Run 上代管的 MCP 伺服器)。在 Agent Gateway 上設定 Model Armor 或 semantic governance policy,檢查 MCP 工具的輸入和輸出內容,防範敏感資料外洩和間接提示詞注入。
  • 一般 MCP 安全性:設定代理使用 MCP 時,請確保外部資料和工具的存取權已獲授權、實施加密等隱私權控制項、套用篩選器保護機密資料,並監控代理互動。詳情請參閱「MCP 與安全性」。

A2A 安全性考量

為確保 A2A 實作符合安全性需求,請考慮下列建議:

  • 傳輸安全:A2A 通訊協定規定,在正式環境中,所有 A2A 通訊都必須使用 HTTPS,並建議採用傳輸層安全標準 (TLS) 1.2 以上版本。
  • 驗證:A2A 通訊協定會將驗證作業委派給標準網路機制 (例如 HTTP 標頭) 和標準 (例如 OAuth2 和 OpenID Connect)。每個代理都會在代理資訊卡中宣傳驗證需求。詳情請參閱「A2A 驗證」。
  • 代理間治理:在 Agent Registry 中註冊 A2A 代理,並透過 Agent Gateway 轉送代理間要求。結合 Agent Gateway、Agent Identity、IAP 和 IAM 存取政策,即可加密驗證呼叫代理的身分、在協調代理和子代理之間強制執行精細授權,並透過 Model Armor 檢查代理間的酬載。

Cloud Run 安全性考量

為確保 Cloud Run 實作符合安全性需求,建議您採取下列做法:

  • 輸入安全性 (適用於前端服務):如要控管應用程式的存取權,請停用前端 Cloud Run 服務的預設 run.app 網址,並設定區域性外部應用程式負載平衡器。除了將傳入流量負載平衡至應用程式,負載平衡器也會處理 SSL 憑證管理作業。如要進一步強化防護,您可以使用 Google Cloud Armor 安全性政策,為服務提供要求篩選、DDoS 防護和頻率限制。
  • 使用者驗證:

    • 組織內的使用者:如要驗證內部使用者對前端 Cloud Run 服務的存取權,請使用 IAP。使用者嘗試存取 IAP 保護的資源時,IAP 會執行驗證及授權檢查。
    • 組織外部使用者:如要驗證外部使用者對前端服務的存取權,請使用 Identity Platform 或 Firebase 驗證。如要管理外部使用者存取權,請設定應用程式來處理登入流程,並對 Cloud Run 服務發出經過驗證的 API 呼叫。

    詳情請參閱「驗證使用者」。

  • 代理和 MCP 伺服器安全:在 Cloud Run 託管代理或 MCP 伺服器時,請設定 Cloud Run 的 Agent Platform 功能,為服務指派代管代理身分,並搭配使用 IAP 和 Agent Gateway,驗證及授權傳入的代理和工具要求。

  • 容器映像檔安全性:為確保只有授權的容器映像檔會部署至 Cloud Run,您可以使用二進位授權。如要找出並降低容器映像檔中的安全風險,請使用 Artifact Analysis 自動執行安全漏洞掃描。詳情請參閱「容器掃描總覽」。

  • 資料落地:Cloud Run 可協助您符合資料落地規定。Cloud Run 服務會在所選區域內執行。

如要進一步瞭解容器安全性,請參閱「Cloud Run 一般開發提示」。

架構中所有 Google Cloud 產品的安全性考量

為確保架構符合安全性規定,請參考下列一般建議:

  • 資料加密:根據預設, Google Cloud 會使用 Google-owned and Google-managed encryption keys加密靜態資料。如要使用您控管的加密金鑰保護代理資料,可以採用您在 Cloud KMS 建立及管理的 CMEK。如要瞭解與 Google Cloud Cloud KMS 相容的服務,請參閱「相容服務」。
  • 降低資料竊取風險:如要降低資料竊取風險,請在基礎架構周圍建立 VPC Service Controls 範圍。VPC Service Controls 支援這項參考架構使用的所有Google Cloud 服務。
  • 存取控管:設定拓撲中資源的權限時,請遵循最小權限原則。
  • 雲端環境安全:使用 Security Command Center 中的工具偵測安全漏洞、找出及緩解威脅、定義及部署資安態勢,以及匯出資料以進一步分析。
  • 部署後最佳化:在Google Cloud中部署應用程式後,您可以使用 Active Assist 取得建議,進一步強化安全性。請查看建議,並視環境情況套用。詳情請參閱「在 Active Assist 中查看建議」。

更多安全性建議

可靠性

本節說明設計考量和建議,協助您在 Google Cloud中建構及運作可靠的基礎架構。

元件 設計考量和建議
代理

模擬故障:將代理式 AI 系統部署至正式環境前,請先模擬正式環境進行驗證。找出並修正問題和非預期的行為。

水平擴充:為確保高可用性和容錯能力,請在負載平衡器後方執行多個代理程式應用程式執行個體。這種做法也能將要求分散到各個執行個體,有助於減少延遲和逾時情形。部分代理執行階段會自動處理負載平衡,例如 Cloud Run 服務中的執行個體自動調度資源。

從服務中斷狀態復原:為確保代理程式能順利處理重新啟動作業並維持脈絡,請將狀態與執行階段分離。如要實作這類無狀態代理程式應用程式,請使用外部資料儲存區,例如資料庫或分散式快取。舉例來說,您可以使用 Memory Bank、Memorystore for Redis 或 Cloud SQL 等資料庫服務。

處理錯誤:如要診斷及排解錯誤,請實作記錄、例外狀況處理和重試機制。

Agent Platform

容量規劃:如果要求數量超過分配的容量,系統會傳回錯誤代碼 429。對於業務關鍵且持續需要高輸送量的工作負載,您可以使用「佈建輸送量」預留輸送量。

模型端點可用性:如果資料可以跨多個區域或國家/地區共用,則可使用模型的全域端點。

Cloud Run

基礎架構服務中斷時的穩定性:Cloud Run 是區域性服務。這項服務會在區域內的多個可用區同步儲存資料,並自動在各可用區之間平衡負載流量。如果發生可用區中斷事件,Cloud Run 會繼續執行,資料也不會遺失。如果區域發生中斷,服務會停止運作,直到 Google 解決中斷問題為止。

水平擴充:Cloud Run 服務會為您處理執行個體自動調度資源。自動調度資源功能可確保執行個體能處理所有傳入要求、事件和 CPU 使用率,確保高可用性。

架構中的所有產品

部署後最佳化:在 Google Cloud中部署應用程式後,您可以取得建議,使用 Active Assist 進一步最佳化安全性。請查看建議,並視環境情況套用。詳情請參閱「在 Active Assist 中查看建議」。

如要瞭解 AI 和機器學習工作負載專屬的可靠性原則和建議,請參閱 Well-Architected Framework 中的「AI 和機器學習觀點:可靠性」。

作業

本節說明使用這項參考架構設計拓撲時,需要考量的因素,以便有效率地運作。 Google Cloud

元件 設計考量和建議
代理

偵錯和分析:在代理程式應用程式中導入結構化記錄。記錄和追蹤功能可讓您以結構化格式擷取重要資訊,例如呼叫的工具、代理的輸入和輸出內容,以及每個步驟的延遲時間。

Agent Platform

使用記錄檔監控:根據預設,寫入 stdout 和 stderr 串流的代理程式記錄檔會轉送至 Cloud Logging。如需進階記錄功能,您可以將 Python 記錄器與 Logging 整合。如要完全控管記錄和結構化記錄,請使用 Logging 用戶端。詳情請參閱「記錄代理程式」和「ADK 中的記錄」。

持續評估:定期對代理的輸出內容,以及代理產生輸出內容時採取的軌跡或步驟進行質性評估。如要實作代理評估,您可以使用 Gen AI Evaluation Service 或 ADK 支援的評估方法。

Cloud Run

健康狀態和效能:使用 Google Cloud Observability 監控 Cloud Run 服務。在 Cloud Monitoring 中設定快訊,以便在發生潛在問題時收到通知,例如錯誤率增加、延遲時間過長或資源使用率異常。

資料庫

健康狀態和效能:使用 Google Cloud Observability 監控資料庫。在 Monitoring 中設定快訊,以便在發生潛在問題時收到通知,例如錯誤率增加、延遲時間過長或資源使用率異常。

MCP

資料庫工具:如要有效管理 AI 代理的資料庫工具,並確保代理安全處理連線集區和驗證等複雜作業,請使用 MCP Toolbox for Databases。提供集中儲存及更新資料庫工具的位置。您可以在代理之間共用工具,並更新工具,而不必重新部署代理。工具箱包含多種工具,適用於 Google Cloud 資料庫 (例如 AlloyDB for PostgreSQL) 和第三方資料庫 (例如 MongoDB)。

生成式 AI 模型:如要讓 AI 代理使用 Imagen 和 Veo 等 Google 生成式 AI 模型,可以使用 MCP 伺服器 Google Cloud 生成式媒體 API。

Google 安全性產品和工具:如要讓 AI 代理存取 Google 安全性產品和工具,例如 Google Security Operations、Google Threat Intelligence 和 Security Command Center,請使用 Google 安全性產品的 MCP 伺服器。

架構中的所有 Google Cloud 產品

追蹤:使用 Trace 持續收集及分析追蹤記錄資料。追蹤資料可協助您快速找出並診斷複雜 Agentic Workflows 中的延遲問題。您可以在 Google Cloud 控制台的「Trace Explorer」頁面,透過視覺化方式進行深入分析。詳情請參閱「追蹤代理程式」。

如要瞭解 AI 和機器學習工作負載專屬的卓越營運原則和建議,請參閱 Well-Architected Framework 中的「AI 和機器學習觀點:卓越營運」。

成本最佳化

本節提供指引,協助您盡量降低設定及運作使用這項參考架構建構的 Google Cloud 拓撲費用。

Agent Platform 費用考量

為確保 Agent Platform 設定和用量符合成本需求,建議您採取下列做法:

  • 成本分析與管理:如要分析及管理 Agent Platform 成本,建議您建立每秒查詢次數 (QPS) 和每秒權杖數 (TPS) 的基準指標。部署後,請監控這些指標。基準也有助於規劃容量。舉例來說,基準有助於判斷何時可能需要「佈建輸送量」。
  • 模型選取:您為 AI 應用程式選取的模型會直接影響成本和效能。如要找出最適合特定用途的模型,在效能和費用之間取得最佳平衡,請反覆測試模型。建議您先從最具成本效益的模型著手,然後逐步改用功能更強大的選項。
  • 符合成本效益的提示:提示 (輸入) 和生成回覆 (輸出) 的長度會直接影響效能和成本。撰寫簡短、直接且提供充分背景資訊的提示。設計提示,讓模型提供簡潔的回覆。例如「用 2 句話總結」或「列出 3 個重點」。詳情請參閱「提示設計最佳做法」。
  • 脈絡快取:如要降低要求成本,請使用脈絡快取,減少要求中重複內容的輸入詞元數量。
  • 批次要求:在相關情況下,請考慮批次預測。批次要求的費用低於標準要求。

Cloud Run 成本考量

為確保 Cloud Run 實作符合成本要求,請考慮下列建議:

  • 資源分配:建立 Cloud Run 服務時,您可以指定要分配的記憶體和 CPU 數量。從預設的 CPU 和記憶體配置開始。觀察資源用量和成本變化,並視需要調整分配。詳情請參閱「為服務設定記憶體限制」和「為服務設定 CPU 限制」。
  • 費率最佳化:如果能預測 CPU 和記憶體需求,可以透過承諾使用折扣 (CUD) 節省費用。

架構中所有 Google Cloud 產品的成本考量

在 Google Cloud部署應用程式後,您可以取得建議,使用 Active Assist 進一步最佳化成本。請查看建議,並視環境情況套用。詳情請參閱「在 Active Assist 中查看建議」。

如要估算 Google Cloud 資源的費用,請使用Google Cloud Pricing Calculator。

如要瞭解 AI 和機器學習工作負載專屬的成本最佳化原則和建議,請參閱 Well-Architected Framework 中的「AI 和機器學習觀點:成本最佳化」。

效能最佳化

本節說明設計考量和建議,協助您在 Google Cloud 中設計符合工作負載效能需求的拓撲。

代理效能考量

為確保代理程式設定符合效能需求,請參考下列建議:

  • 模型選取:為代理式 AI 系統選取模型時,請考量代理需要執行的工作所需的功能。
  • 提示最佳化:如要快速大規模改善及最佳化提示成效,並避免手動重寫,請使用 Agent Platform 提示最佳化工具。這項工具可協助您有效調整不同模型的提示。

Agent Platform 效能注意事項

為確保 Agent Platform 設定和用量符合效能需求,請參考下列建議:

  • 模型選取:您為 AI 應用程式選取的模型會直接影響成本和效能。如要找出最適合特定用途的模型,在效能和成本之間取得最佳平衡,請反覆測試模型。建議您先從最具成本效益的模型著手,再逐步改用更強大的選項。
  • 提示工程:提示 (輸入) 和生成回覆 (輸出) 的長度會直接影響效能和成本。撰寫提示時,請簡短、直接,並提供充分的背景資訊。設計提示,讓模型提供簡潔的回覆。例如「用 2 句話總結」或「列出 3 個重點」。詳情請參閱提示設計最佳做法。
  • 脈絡快取:如要減少要求延遲,請使用脈絡快取,這項功能適用於含有重複內容和較多輸入詞元的要求。

Cloud Run 效能注意事項

請依據效能需求,設定要分配給 Cloud Run 服務的記憶體和 CPU。詳情請參閱「設定服務的記憶體限制」和「設定服務的 CPU 限制」。

如需更多效能最佳化指南,請參閱「一般 Cloud Run 開發提示」。

架構中所有 Google Cloud 產品的效能考量

在 Google Cloud部署應用程式後,您可以使用 Active Assist 取得建議,進一步提升效能。請查看建議,並視環境情況套用。詳情請參閱「在 Active Assist 中查看建議」。

如要瞭解 AI 和機器學習工作負載專屬的效能最佳化原則和建議,請參閱 Well-Architected Framework 中的「AI 和機器學習觀點:效能最佳化」。

部署作業

這項參考架構無法自動部署。請參考下列程式碼範例,建構單一代理架構:

如需程式碼範例,瞭解如何搭配使用 ADK 與 MCP 伺服器,請參閱「MCP 工具」。

如需其他單一代理式 AI 系統的範例,請參考下列程式碼範例。這些程式碼範例可做為學習和實驗的起點,且功能齊全。為確保在正式環境中能以最佳狀態運作,您必須根據特定業務和技術需求自訂程式碼。

  • 個人化購物:針對特定品牌、商家或線上商城,提供個人化產品推薦。
  • 事件管理:使用動態身分傳播,依據要求驗證使用者權杖和身分。
  • 訂單處理:處理及儲存訂單,並在特定訂單數量時,安排電子郵件確認和條件式人工審查。
  • 資料工程: 開發 Dataform 管道、排解管道問題,以及管理資料工程,包括複雜的 SQL 查詢、資料轉換和資料依附元件。
  • 文件檢索:使用 RAG 查詢上傳至 Gemini Enterprise Agent Platform RAG Engine 的文件,並取得附有文件和程式碼引用來源的答案。

後續步驟

貢獻者