這份文件提供代理式 AI 系統的高層級架構,用於協調與不同企業系統的互動。協調代理程式可自動執行複雜程序,並透過現代化的對話式介面,統一存取多個企業系統。這些系統可能是商業第三方應用程式,也可能是專屬的內部系統。這種設計方法可免除點對點系統整合,因此作業人員不必不斷切換環境 (旋轉椅處理)。
這份文件的目標對象包括在雲端建構及管理代理程式 AI 應用程式的架構師、開發人員和管理員。本文假設您已具備代理式 AI 的基礎知識。
架構
下圖顯示多層架構,其中協調器代理程式會使用 AI,將多個管道的用戶端互動導向適當的後端系統。
架構中的元件分為下列幾層:
| 圖層 | 元件 |
|---|---|
| 互動管道 | 在範例架構中,用戶端會透過下列多個管道與代理式 AI 系統互動:
|
| 代理功能核心 | 架構的核心元件是使用 Agent Development Kit (ADK) 建構,並部署在 Cloud Run 的協調器代理。協調器會管理多代理系統。這個無伺服器平台提供可擴充性,並使用 Identity and Access Management (IAM) 控管代理程式 REST API 的存取權。 為了在多步驟工作之間維持狀態,代理程式會使用內建 ADK 支援,將狀態資料保留在 Vertex AI Session Service 或 Cloud Storage 中。 |
| 與後端系統的標準化整合 | 在代理和後端系統之間的通訊方面,這項架構使用部署在 Cloud Run 上的 Model Context Protocol (MCP) 伺服器。
每個 MCP 伺服器都會將特定後端系統的 API 公開為標準化工具組。MCP 伺服器會形成防腐層,將代理程式與後端系統隔離。這種做法有助於避免代理程式與後端系統緊密耦合。這項功能可簡化代理程式的邏輯,並讓您獨立於代理程式翻新後端系統。 |
| 後端系統 | 在範例架構中,AI 代理程式會協調存取下列後端系統:
|
使用的產品
這個範例架構使用下列 Google Cloud 產品:
- Vertex AI:機器學習平台,可讓您訓練及部署機器學習模型和 AI 應用程式,並自訂 LLM 用於 AI 輔助的應用程式。
- Cloud Run:無伺服器運算平台,可讓您在 Google 可擴充的基礎架構上直接執行容器。
- Pub/Sub:可擴充的非同步訊息服務,會分離產生訊息的服務與處理訊息的服務。
- Gemini Enterprise:全代管安全平台,可在企業內部署及管理 AI 代理。
- Gemini:Google 開發的一系列多模態 AI 模型。
- Cloud Storage:適用於多種資料類型的物件儲存庫,成本低廉且沒有限制。 資料在 Google Cloud 內外都能存取,且會複製到多個位置,以便提供備援機制。 Google Cloud
- Cloud SQL:全代管關聯式資料庫服務,可協助您在 Google Cloud上佈建、運作及管理 MySQL、PostgreSQL 和 SQL Server 資料庫。
用途
這項架構適用於下列用途:
- 在不同的外部和內部應用程式之間,自動處理旋轉椅作業。
- 為多個舊版系統建立統一介面,不必進行大規模遷移。
- 在現有業務流程中加入智慧型對話功能。
- 利用事件驅動功能逐步翻新應用程式。
這項架構具有下列優點:
- 生產力:自動執行重複性工作,減少人為錯誤,讓團隊專心處理附加價值更高的工作。
- 可擴充性:採用事件驅動方法,獨立開發、部署及擴充服務。
- 提升使用者體驗:建構現代化且彈性的介面,整合複雜的業務程序。
- 確保整合作業能因應未來變化:使用 MCP 伺服器,將後端系統的整合作業標準化,以便獨立更換及升級後端系統。
設計須知
如要在正式環境中實作這項架構,請考慮採用下列建議:
- 安全性:對於 Cloud Run 服務,請使用專用的 IAM 服務帳戶,並根據最小權限原則授予權限。設定 Cloud Run 輸入控制項,限制只有經過驗證的呼叫端才能存取,確保代理程式 API 安全無虞。
- 可觀測性:在分散式系統中,記錄和追蹤是疑難排解的關鍵。如要掌握整個代理程式工作流程,請設定服務,將結構化記錄寫入 Cloud Logging,並將追蹤記錄傳送至 Cloud Trace。
- 效能:Cloud Run 會根據需求自動調整資源配置,且在沒有負載時,還能將資源縮減至零。對於易受延遲影響的應用程式,您可以設定最低執行個體數量,盡量減少冷啟動情形。
- 部署自動化:使用基礎架構即程式碼 (IaC) 工具 (如 Terraform),自動佈建及管理資源。IaC 可確保開發、測試和正式環境的部署作業可重複執行,並通過稽核。
- 控管:使用 App Design Center 簡化應用程式基礎架構的設計和部署作業。您可以使用應用程式設計中心定義範本,納入貴機構的控管規則和最佳做法。
後續步驟
- (程式碼實驗室) 在 Cloud Run 部署安全的 MCP 伺服器。
- (程式碼研究室) 建構及部署使用 Cloud Run 上 MCP 伺服器的代理程式。
- (程式碼研究室) 使用事件非同步叫用代理式 AI 應用程式。
- (Google Skills 課程) 使用 ADK 建構智慧型代理。
- (程式碼範例) 在 GitHub 中探索更多程式碼範例,瞭解如何使用 ADK 建構代理程式。
- 如要瞭解適用於 Google CloudAI 和機器學習工作負載的架構原則和建議,請參閱 Well-Architected Framework 中的AI 和機器學習觀點。
貢獻者
作者:Casey West | 架構服務代表, Google Cloud
其他貢獻者:
- Amina Mansour | Cloud Platform 評估團隊主管
- Kumar Dhanagopal | 跨產品解決方案開發人員
- Leonid Yankulin | 開發人員關係工程師