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

本文提供參考架構,協助您在 Google Cloud上設計單一代理程式 AI 系統。這個架構中的單一代理系統是使用 Agent Development Kit (ADK) 建構而成,並部署在 Cloud Run 上。您也可以在 Vertex AI Agent Engine 或 Google Kubernetes Engine (GKE) 上部署代理程式。這項架構採用模型上下文協定 (MCP),可讓代理程式存取及處理多個來源的資訊,進而提供脈絡豐富的洞察資料。

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

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

架構

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

部署在 Cloud Run 的單一代理程式架構。

架構元件

範例架構包含下列元件:

元件 說明
前端 使用者透過前端 (例如聊天介面) 與代理程式互動,前端會以無伺服器 Cloud Run 服務的形式執行。
代理 代理程式會接收使用者要求、解讀使用者意圖、選取適當的工具,然後綜合資訊來回答查詢。
代理程式執行階段 這個代理程式是使用 ADK 建構而成,並以無伺服器 Cloud Run 服務的形式部署。您也可以在 Vertex AI Agent Engine 部署代理,或在 GKE 上部署為容器化應用程式。如要瞭解如何選擇代理程式執行階段,請參閱「選擇代理式 AI 架構元件」。
ADK ADK 提供工具和架構,可用於開發、測試及部署代理。ADK 可簡化代理的建立作業,讓 AI 開發人員專注於代理的邏輯和功能。使用 ADK 開發代理程式時,您可以設定代理程式存取及使用內建工具,例如 Google 搜尋。
AI 模型和模型執行階段 在推論服務方面,本範例架構中的代理程式會使用 Vertex AI 上的 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 支援和工程團隊卸載,讓他們專注於更高價值的工作。

這個架構非常適合開發軟體的機構,可協助提升錯誤解決流程的效率和成效。如要瞭解詳情和部署選項,請參閱「Software Bug Assistant - ADK Python Sample Agent」 和「Tools Make an Agent: From Zero to Assistant with ADK」。

客戶服務

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

就這個用途而言,這項架構可帶來下列優點:

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

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

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

這項架構非常適合希望提升顧客體驗、提高銷售量,以及簡化訂單管理和排程的零售機構。如要瞭解詳情和部署選項,請參閱「Cymbal Home & Garden Customer Service Agent」。

時間序列預測

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

這個使用案例適用於許多情境,例如:

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

如果貴機構需要根據既有趨勢調整變動模式,這個架構就是理想選擇。如果貴機構的客戶可從主動式洞察資料獲益,進而規劃未來,這項功能也十分適合。如要瞭解詳情和部署選項,請參閱「Time Series Forecasting Agent with Google's ADK and MCP Toolbox」。

文件擷取

您可以調整這個參考架構,使用 Vertex AI RAG 引擎,並建立代理程式來管理脈絡資料的擷取作業。文件檢索代理程式可從精選文件集擷取相關資料,提供附有來源資料引文的正確答案。

有了文件擷取代理程式,就能確保顧客和內部使用者獲得資訊充足且符合情境的查詢回覆。這項實作方式可確保回覆內容以您驗證過的資訊為依據,有助於減少錯誤和不準確之處。

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

設計替代方案

本節介紹在 Google Cloud中部署 AI 代理程式時,可以考慮採用的替代設計方法。

代理程式執行階段

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

AI 模型執行階段

在這份文件說明的架構中,AI 模型執行階段是 Vertex AI。您也可以使用 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 架構元件」。

安全性

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

元件 設計注意事項和建議
代理

AI 代理會帶來某些獨特且嚴重的安全風險,傳統的確定性安全做法可能無法充分降低這些風險。Google 建議採用方法,結合確定性安全控制選項的優勢,以及動態、以推理為基礎的防禦措施。這項方法以三項核心原則為基礎:人工監督、審慎定義的代理程式自主性,以及可觀測性。以下是符合這些核心原則的具體建議。

人工監督:代理式 AI 系統有時可能會發生故障或無法正常運作。舉例來說,模型可能會生成不準確的內容,或是代理程式可能會選取不當工具。在業務關鍵的代理式 AI 系統中,加入人機迴圈流程,讓人類主管監控、覆寫及暫停代理。舉例來說,人類使用者可以審查代理程式的輸出內容、核准或拒絕輸出內容,並提供進一步的指引來修正錯誤或做出策略性決策。這種做法結合了代理式 AI 系統的效率,以及人類使用者的批判性思考和領域專業知識。

代理程式存取權控管:使用 Identity and Access Management (IAM) 控制項設定代理程式權限。只授予每個代理執行工作、與工具和其他代理通訊所需的權限。這種做法有助於盡量降低安全漏洞的潛在影響,因為遭入侵的代理程式只能存取系統的其他部分。詳情請參閱「為代理程式設定身分和權限」和「管理已部署代理程式的存取權」。

監控:運用全方位追蹤功能監控代理的行為,清楚掌握代理採取的每個動作,包括推論過程、工具選擇和執行路徑。詳情請參閱「在 Vertex AI Agent Engine 中記錄代理程式」和「在 ADK 中記錄」。

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

Vertex AI

共同責任:安全是共同的責任。Vertex AI 可保護基礎架構,並提供工具和安全控管措施,協助您保護資料、程式碼和模型。您有責任正確設定服務、管理存取權控管,以及保護應用程式安全。詳情請參閱「 Vertex AI 共同責任」。

安全控管:Vertex AI 支援 Google Cloud 安全控管,可協助您符合資料駐留、客戶管理的加密金鑰 (CMEK)、使用 VPC Service Controls 的網路安全,以及資料存取透明化控管機制等規定。詳情請參閱下列說明文件:

安全性:AI 模型可能會生成有害回覆,有時是為了回應惡意提示。

  • 為提升安全性並防範代理 AI 系統遭到濫用,您可以設定內容篩選器,阻擋有害的輸入內容和回覆。詳情請參閱「安全與內容篩選器」。
  • 如要檢查並清除推論要求和回覆中的威脅 (例如提示詞注入和有害內容),可以使用 Model Armor。Model Armor 可協助您防範惡意輸入內容、驗證內容安全性、保護私密/機密資料、維持合規性,以及持續強制執行安全政策。

模型存取權:您可以設定機構政策,限制 Google Cloud 專案中可使用的 AI 模型類型和版本。詳情請參閱「控管 Model Garden 模型存取權」。

資料保護:如要探索及去識別化提示和回覆內容,以及記錄資料中的機密資料,請使用 Cloud Data Loss Prevention API。詳情請觀看這部影片: 保護 AI 應用程式中的機密資料

MCP 將代理程式設定為使用 MCP 時,請務必授權存取外部資料和工具、導入加密等隱私權控管措施、套用篩選器來保護機密資料,以及監控代理程式互動。詳情請參閱「MCP 和安全性」。
A2A

傳輸安全:A2A 通訊協定規定,在正式環境中,所有 A2A 通訊都必須使用 HTTPS,並建議採用傳輸層安全標準 (TLS) 1.2 以上版本。

驗證:A2A 通訊協定會將驗證作業委派給標準網路機制 (例如 HTTP 標頭) 和標準 (例如 OAuth2 和 OpenID Connect)。每個服務專員都會在服務專員資訊卡中,顯示驗證規定。詳情請參閱「A2A 驗證」。

Cloud Run

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

使用者驗證

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

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

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

資料落地:Cloud Run 可協助您符合資料落地規定。Cloud Run 函式會在選取的區域中執行。

如需容器安全性的更多指引,請參閱「Cloud Run 一般開發提示」。

本架構中的所有產品

資料加密:根據預設, Google Cloud會使用 Google-owned and Google-managed encryption keys加密靜態資料。如要使用您控管的加密金鑰保護代理程式資料,可以透過在 Cloud KMS 中建立及管理的 CMEK 達成。如要瞭解與 Cloud KMS 相容的服務,請參閱「相容服務」。 Google Cloud

降低資料竊取風險:如要降低資料竊取風險,請在基礎架構周圍建立 VPC Service Controls 範圍。VPC Service Controls 支援這項參考架構使用的所有 Google Cloud 服務。

存取權控管:為拓撲中的資源設定權限時,請遵循最小權限原則

雲端環境安全:使用 Security Command Center 中的工具偵測安全漏洞、找出並防範威脅、定義及部署安全防護機制,以及匯出資料以供進一步分析。

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

其他安全性建議

可靠性

本節說明設計注意事項和建議,協助您在 Google Cloud中建構及運作可靠的部署基礎架構。

元件 設計注意事項和建議
代理

模擬失敗:將代理 AI 系統部署至正式環境前,請先模擬正式環境,驗證系統是否正常運作。找出並修正問題和非預期的行為。

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

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

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

Vertex AI

配額管理:Vertex AI 支援 Gemini 模型的動態共用配額 (DSQ)。DSQ 可彈性管理隨用隨付要求,且不必手動管理配額或要求增加配額。DSQ 會在活躍客戶之間,動態分配特定模型和區域的可用資源。使用 DSQ 時,個別顧客沒有預先定義的配額限制。

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

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

Cloud Run

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

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

本架構中的所有產品

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

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

作業

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

元件 設計注意事項和建議
代理

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

Vertex AI

使用記錄進行監控:根據預設,寫入 stdoutstderr 串流的代理程式記錄會傳送至 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。這個位置可集中儲存及更新資料庫工具。您可以在代理程式之間共用工具,並更新工具,不必重新部署代理程式。工具箱包含適用於資料庫 (例如 AlloyDB for PostgreSQL) 和第三方資料庫 (例如 MongoDB) 的各種工具。 Google Cloud

生成式 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 持續收集及分析追蹤記錄資料。追蹤資料可協助您快速找出並診斷複雜代理程式工作流程中的延遲問題。您可以在 Google Cloud 控制台的「Trace 探索工具」頁面,透過視覺化方式進行深入分析。詳情請參閱「追蹤代理程式」。

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

成本最佳化

本節提供指引,說明如何盡量降低使用這項參考架構建構 Google Cloud 拓撲的設定和運作成本。

元件 設計注意事項和建議
Vertex AI

費用分析和管理:如要分析及管理 Vertex AI 費用,建議您建立每秒查詢次數 (QPS) 和每秒權杖數 (TPS) 的基準指標。然後在部署後監控這些指標。基準也有助於規劃容量。舉例來說,基準有助於判斷何時可能需要佈建處理量

模型選取:您為 AI 應用程式選取的模型會直接影響費用和效能。如要找出最適合特定用途的模型,在效能和成本之間取得最佳平衡,請反覆測試模型。建議您先從最經濟實惠的機型開始,再逐步改用效能更強大的機型。

符合成本效益的提示:提示 (輸入) 和生成的內容 (輸出) 長度會直接影響效能和成本。撰寫簡短、直接且提供足夠背景資訊的提示。設計提示,讓模型提供簡潔的回覆。 舉例來說,可以加入「用 2 句話歸納重點」或「列出 3 個重點」等字詞。詳情請參閱提示設計最佳做法

脈絡快取:如要降低要求成本,請使用脈絡快取,減少要求中重複內容的輸入詞元數量。

批次要求:視情況考慮批次預測。批次要求 的費用比標準要求低。

Cloud Run

資源分配:建立 Cloud Run 服務時,您可以指定要分配的記憶體和 CPU 數量。從預設的 CPU 和記憶體分配量開始。觀察一段時間的資源用量和成本,並視需要調整分配。詳情請參閱下列說明文件:

費率最佳化:如果可以預測 CPU 和記憶體需求,可透過承諾使用折扣 (CUD) 節省費用。

本架構中的所有產品 部署後最佳化:在 Google Cloud中部署應用程式後,使用 Active Assist 取得建議,進一步最佳化成本。請查看建議,並視環境需要套用。詳情請參閱「在 Active Assist 中查看建議」。

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

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

效能最佳化

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

元件 設計注意事項和建議
代理

模型選取:為代理式 AI 系統選取模型時,請考量代理程式執行工作時所需的功能。

提示詞最佳化:如要大規模快速改善及最佳化提示詞成效,並免除手動重寫提示詞的需要,請使用 Vertex AI 提示詞最佳化工具。這項工具可協助您有效調整不同模型的提示。

Vertex AI

模型選取:您為 AI 應用程式選取的模型會直接影響費用和效能。如要找出最適合特定用途的模型,在效能和成本之間取得最佳平衡,請反覆測試模型。建議您先從最經濟實惠的機型開始,再逐步改用效能更強大的機型。

提示工程:提示 (輸入) 和生成的內容 (輸出) 長度會直接影響效能和費用。撰寫簡短、直接且提供足夠背景資訊的提示。設計提示,讓模型提供簡潔的回覆。舉例來說,可以加入「用 2 句話歸納重點」或「列出 3 個重點」等字詞。詳情請參閱提示設計最佳做法

脈絡快取:如要減少要求延遲時間,請使用脈絡快取,因為要求含有重複內容和較多輸入詞元。

Cloud Run

資源分配:根據效能需求,設定要分配給 Cloud Run 服務的記憶體和 CPU。詳情請參閱下列說明文件:

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

本架構中的所有產品 部署後最佳化:在 Google Cloud中部署應用程式後,使用 Active Assist 取得最佳化建議,進一步提升效能。請查看建議,並視環境需要套用。詳情請參閱「在 Active Assist 中查看建議」。

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

部署

這個參考架構無法自動部署。請使用下列程式碼範例,協助您建構單一代理程式架構:

如需開始搭配使用 ADK 和 MCP 伺服器的程式碼範例,請參閱「MCP 工具」。

如需其他單一代理程式 AI 系統的範例,請使用下列程式碼範例。這些程式碼範例是學習和實驗的絕佳起點,可正常運作。如要在實際工作環境中獲得最佳運作效果,請務必根據特定業務和技術需求自訂程式碼。

  • 個人化購物: 為特定品牌、商家或線上市集提供個人化產品建議。
  • 事件管理: 使用動態身分傳播功能,根據每個要求驗證使用者權杖和身分。
  • 訂單處理: 處理及儲存訂單,並根據指定訂單數量,協調電子郵件確認程序,進行有條件的人工審查。
  • 資料工程: 開發 Dataform 管道、排解管道問題,以及管理資料工程,包括複雜的 SQL 查詢、資料轉換和資料依附元件。
  • 文件擷取: 使用 RAG 查詢您上傳至 Vertex AI RAG 引擎的文件, 並取得附有文件和程式碼引用的答案。

後續步驟

貢獻者