本文件提供 Google Cloud上即時雙向多代理式 AI 系統的高階架構。這套系統可協助使用者完成技術工作,例如組裝複雜元件、診斷設備故障,或執行複雜的維修程序。代理式 AI 系統會透過持續雙向的多模態資料串流,提供有依據的技術指引,並自動監控安全。
本文適用對象包括在雲端建構及管理 AI 基礎架構和應用程式的架構師、開發人員和管理員。本文假設您已具備 AI 代理和模型的基本知識。本文件並未提供設計和編寫 AI 代理程式的具體指引。
本文件的部署一節列出程式碼範例,可協助您瞭解如何建構及部署多代理式 AI 系統。
架構
下圖概略說明使用多代理 AI 系統,實現即時雙向多模態資料串流的架構:
上圖中的架構有兩個工作流程:技術指導和安全監控。
- 技術指南工作流程可讓使用者即時取得複雜技術問題的口述解答。這個工作流程會使用 Gemini Live API 處理多模態串流,並與子代理協調,從知識資料庫擷取有依據的產品資訊。
- 安全監控工作流程提供自動危害偵測功能,確保使用者在技術程序期間的安全。這項工作流程會使用 Gemini 分析即時影像片段、找出潛在風險,並透過用戶端資訊主頁立即觸發警告。
下列分頁提供架構圖,說明技術指引和安全監控工作流程:
技術指南工作流程
下圖顯示技術指南工作流程的詳細架構。
上圖顯示下列資料流程:
-
使用者透過用戶端資訊主頁提出口頭技術諮詢,啟動工作階段。舉例來說,技術人員可以將相機對準控制面板,然後詢問:「請幫忙,這個閃爍的紅色錯誤燈號代表什麼意思?」
-
用戶端資訊主頁會在前端和後端伺服器之間建立永久 WebSocket 連線。
-
WebSocket 訊息會將原始多媒體資料封裝成
Blob物件。Agent Development Kit (ADK)LiveRequestQueue元件會持續將輸入資料串流至調度員代理。 -
調度員代理會偵測需要技術指引的音訊或視覺指令,並將輸入串流傳送至 Gemini Live API。
-
Gemini Live 模型會搜尋原始資料,找出事件。事件可以是音訊關鍵字 (例如「assemble」或「help」),也可以是視覺提示 (例如手勢)。
Gemini 會評估每項事件,判斷是否與使用者的查詢相關。舉例來說,手勢或填充詞可能不相關,因此 Gemini 不會處理這些事件。
-
針對每個相關事件,Gemini 會啟用函式呼叫,評估是否需要額外背景資訊。Gemini 或架構師代理會根據是否需要額外背景資訊,將回覆傳送回調度員代理。
-
如果需要更多背景資訊,Gemini 會查詢架構師代理資訊卡,瞭解如何建構要求。
-
Gemini 會向調度員代理傳送結構化要求。要求包含事件詳細資料,例如產品類型、型號、事件類型和屬性。
-
調度員代理會使用 Agent2Agent (A2A) 通訊協定,將結構化要求傳送給架構師代理。
-
架構師代理會透過無伺服器 VPC 存取 連接器傳送查詢。連接器可讓代理安全存取虛擬私有雲 (VPC) 網路中的資源,該網路用於此架構中的儲存資源。
-
無伺服器 VPC 存取連接器會與儲存在 Memorystore for Redis Cluster 中的快取資料互動。如果快取層中沒有資料,架構師代理會與託管知識資料庫的 Compute Engine 執行個體互動。
-
架構師代理會從資料快取或知識資料庫接收產品資訊。架構師代理會將產品資訊傳送至 Gemini,以便生成回覆。例如「錯誤代碼 3B:風扇故障。建議做法:檢查是否有異物。」
架構師代理將產品資訊傳回給調度代理。
如果不需要更多背景資訊,Gemini 會直接生成回覆。
-
-
調度員代理會收到 Gemini 或架構師代理的回覆,並生成多模態回覆:
-
使用 Gemini Live 模型和 ADK
run_live迴圈,生成包含技術解決方案的多模態回覆。 -
將回應儲存為
Blob物件。 -
透過串流緩衝區和永久 WebSocket 連線,將技術解決方案傳送至用戶端資訊主頁。
-
-
客戶資訊主頁會從技術解決方案中擷取
Blob資料,立即提供語音導覽,並以相關轉錄稿更新使用者介面。要求迴圈完成後,系統會維持有效的雙向串流。
安全監控工作流程
下圖顯示安全監控工作流程的詳細架構。
上圖顯示下列資料流程:
- 用戶端資訊主頁會在前端和後端伺服器之間建立永久 WebSocket 連線,以便觀察即時影像串流。WebSocket 訊息會將這類原始多媒體資料封裝成
Blob物件,並使用 ADKLiveRequestQueue元件,持續傳送至串流緩衝區。 - 串流緩衝區會將輸入串流導向串流工具,該工具會在背景持續循環執行,偵測影片影格中的危險。
- 串流工具會將串流緩衝區中的最新影片影格傳送至 Gemini。
- Gemini 會觀察影片影格,找出強光或蒸氣等危險。
- 如果未偵測到危險,就不會發生任何情況。
- 如果偵測到危險,Gemini 會生成多模態回覆,其中包含危險類型、屬性和位置,並將其儲存為
Blob物件。Gemini 會將危險警告回覆傳回串流工具。
- 串流工具會將危險警告回應轉送至串流緩衝區。
- 串流緩衝區會使用永久 WebSocket 連線,將危險警告回應傳送至用戶端資訊主頁。
- 用戶端資訊主頁會從危險警告回應中擷取
Blob資料,立即提供語音導覽,並使用相關轉錄稿更新 UI。這樣就能完成要求迴圈,同時維持有效的雙向串流。
使用的產品
這個參考架構使用下列 Google Cloud 產品和工具:
- Cloud Run:無伺服器運算平台,可讓您直接在 Google 可擴充的基礎架構上執行容器。
- Gemini:Google 開發的多模態 AI 模型系列。
- Gemini Enterprise Agent Platform:全方位平台,可建構、擴充、管理及最佳化企業級 AI 代理。
- Agent Development Kit (ADK):一組工具和程式庫,用於開發、測試及部署 AI 代理。
- Agent2Agent (A2A) 通訊協定:這個開放式通訊協定可讓代理互通並進行通訊,不受程式設計語言和執行階段限制。
- 無伺服器 VPC 存取:這項服務可讓無伺服器環境連線至虛擬私有雲網路中的資源。
- 虛擬私有雲 (VPC):虛擬系統,為 Google Cloud 工作負載提供全球性、可擴充的網路功能。虛擬私有雲包含虛擬私有雲網路對接、Private Service Connect、私人服務存取權和 Shared VPC。
- Memorystore for Redis Cluster:Redis 的全代管記憶體內資料儲存庫服務。
- Compute Engine:安全可靠且可自訂的運算服務,可讓您在 Google 基礎架構上建立及執行 VM。
如要瞭解如何為代理式 AI 系統選取替代元件,包括框架、Agent Runtime、工具、記憶體和設計模式,請參閱「選擇代理式 AI 架構元件」。
用途
這項參考架構適用於需要即時合成連續雙向多模態資料串流的用途。以下是本文所述架構的應用實例:
- 工業製造和現場維護:技術人員可透過 AI 助理處理智慧眼鏡的即時音訊和視訊,免持就能維修複雜機械。技術人員與 AI 助理對話,取得機器示意圖。AI 助理會使用內部資料庫代理存取產品說明文件,確保維修和組裝操作說明有憑有據。同時執行的背景視覺工具會監控雙向串流,主動警告技術人員機械危險或不正確的組裝步驟。
- 遠端技術支援:讓使用者與多模態代理式 AI 系統分享手機攝影機的即時畫面,提升客戶疑難排解成效。雙向串流架構支援動態對話,系統會即時觀察硬體。如果背景視覺程序發現連線錯誤 (例如傳輸線插錯連接埠),系統會使用低延遲串流,立即中斷使用者操作,並提供修正指引。
設計須知
本節說明使用這個參考架構開發拓撲時,應考量的設計因素、最佳做法和建議,以滿足您在安全性、營運、成本和效能方面的特定需求。
本節指南僅列出部分範例。如要進一步瞭解設計因素和最佳做法,以及建構和部署多代理式 AI 系統的建議,請參閱「 Google Cloud中的多代理式 AI 系統」。
安全性、隱私權和法規遵循
為因應 AI 代理獨有的安全風險,Google 建議採取做法,結合確定性安全控管機制與動態、以推論為基礎的防禦措施:
- 人工監督:在業務關鍵系統中加入人工介入迴路流程,讓人工監督員審查輸出內容,並核准、覆寫或暫停代理動作。
- Agent Identity:為每個代理指派與工作負載繫結的身分,強制執行最小權限存取控管,並集中管理外部工具的憑證。
- Agent Gateway:強制執行輸入和輸出流量管理、預設拒絕存取政策,以及使用 Model Armor 進行內嵌提示和工具檢查。
Agent Registry:確認代理只會連線至核准的子代理和 MCP 工具。
應用程式輸入安全性:如要控管應用程式存取權,請停用前端 Cloud Run 服務的預設
run.app網址,並設定區域性外部應用程式負載平衡器。除了平衡應用程式的傳入流量,負載平衡器也會處理 SSL 憑證管理作業。如要進一步強化防護,您可以使用 Google Cloud Armor 安全性政策,為服務提供要求篩選、DDoS 防護和頻率限制功能。WebSocket 安全性:對所有雙向 WebSocket 連線強制執行 TLS 加密,保護語音和影片等機密多模態資料。
安全的 A2A 通訊:
- 使用經過驗證的擴充代理卡,確保 A2A 通訊安全。
- 將 OpenID Connect (OIDC) 身分權杖附加至要求。OIDC 身分權杖可讓您使用 Identity and Access Management (IAM),驗證只有授權代理可以存取資料。
提升作業效率
為確保代理程式設定符合您的作業效率需求,請參考下列建議:
- 控制迴圈指令碼:為雙向 Live 代理編寫系統提示,做為嚴格的狀態機行為迴圈,而非只是個性指南。系統提示應明確指示代理,在觸發前保持靜音。應強制執行簡短、行動優先的回應,讓語音互動簡潔自然。
- 分離關注點:使用專屬的背景串流工具,獨立於主要代理監控影片動態消息。架構中的根代理是雙向的,可以立即中斷自己的語音,向使用者播送這些重要安全警告。此外,如果要求單一代理持續監控影片動態消息,可能會導致認知超載和幻覺。
成本最佳化
為確保代理程式設定符合成本需求,請考慮下列建議:
- 資料擷取費用:為降低權杖費用並避免用盡脈絡視窗,請使用低頻率的影格取樣 (例如每秒 2 個影格),並將所有資料壓縮為 Base64 JPEG 檔案。
- 符合成本效益的提示:提示 (輸入) 和生成回覆 (輸出) 的長度會直接影響效能和成本。撰寫簡短、直接且提供充分背景資訊的提示。設計提示,讓模型提供簡潔的回覆。例如,加入「用 2 句話總結」或「列出 3 個重點」等詞句。詳情請參閱提示設計最佳做法。
效能最佳化
為確保代理程式設定符合效能需求,請參考下列建議:
- 非同步緩衝:如要將傳入的音訊和視訊封包與模型的推論引擎分離,請使用執行緒安全的非同步先進先出 (FIFO) 緩衝區。這個緩衝區可做為多工器,確保系統在進行大量運算時,仍能回應使用者中斷,不會凍結使用者介面。
- 記憶體快取:如要達到不到 1 毫秒的讀取速度,請使用記憶體內 Memorystore for Redis Cluster 資料庫,做為建築師代理的結構圖資料庫。這種做法可盡量縮短延遲時間、避免即時語音互動期間出現靜音,並提供可擴充的單一事實來源。
- 資源分配:根據效能需求,設定要分配給 Cloud Run 服務的記憶體限制和 CPU 限制。
部署作業
如要部署這個架構的範例實作,請嘗試下列程式碼實驗室:
- 建構 ADK 雙向串流代理程式碼實驗室:建構單一代理 AI 系統,處理即時影像串流,辨識特定使用者手勢。
- 即時雙向多代理系統程式碼實驗室:建構多代理 AI 系統,使用雙向串流進行即時語音和影片互動。系統包含主動式串流工具,可持續監控安全性。
後續步驟
- 瞭解如何發起及管理直播活動。
- 請參閱 ADK Gemini Live API 工具包簡介。
- (影片) 觀看「使用 ADK 和 Gemini Live API 建構即時語音 AI 代理」
- 瞭解如何在 Cloud Run 託管 AI 代理。
- 瞭解如何選擇代理式 AI 架構元件。
- 探索學習資源,透過 Gemini Enterprise Agent Ready (GEAR) 建構及部署企業級代理。
- 探索更多代理式 AI 架構指南。
- 如要概略瞭解 Google Cloud中 AI 和機器學習工作負載專屬的架構原則和建議,請參閱 Well-Architected Framework 中的「AI 和機器學習觀點」一文。
- 如要查看更多參考架構、圖表和最佳做法,請瀏覽 Cloud Architecture Center。
貢獻者
作者:
- Christina Lin | 開發人員關係工程師經理
- Samantha He | 技術撰稿人
其他貢獻者:
- Kumar Dhanagopal | 跨產品解決方案開發人員
- Olivier Bourgeois | 開發人員關係工程師