在 Cloud Run 上代管 AI 應用程式和代理程式

本頁面將重點介紹幾個使用 Cloud Run 做為下列 AI 用途主機平台的應用情境:

在 Cloud Run 託管 AI 應用程式

AI 應用程式會使用 AI 模型運作或執行特定工作。 舉例來說,AI 應用程式可以使用 AI 模型摘要文件,或是透過聊天介面使用向量資料庫擷取更多內容。

Cloud Run 是應用程式代管基礎架構之一,可為 AI 應用程式工作負載提供全代管環境。 Cloud Run 可整合 Gemini APIVertex AI 端點等 AI 模型,或已啟用 GPU 的 Cloud Run 服務所代管的模型。 Cloud Run 也與 PostgreSQL 適用的 Cloud SQLPostgreSQL 適用的 AlloyDB 整合,這兩個資料庫都提供 pgvector 擴充功能,可供檢索增強生成 (RAG) 使用。

在 Cloud Run 託管 AI 代理

AI 代理會結合進階 AI 模型的智慧功能和各種工具,代表使用者執行各種操作,但掌控權仍在使用者手中。

您可以將 AI 代理程式實作為 Cloud Run 服務,透過多輪要求/回應互動,協調處理一組非同步工作,並向使用者提供資訊。

Cloud Run 上的 AI 代理架構

在 Cloud Run 上部署的典型 AI 代理架構可能涉及 Google Cloud 內外 Google Cloud的數個元件:

Cloud Run 上的 AI 代理架構

  1. 服務和協調:Cloud Run 服務可做為可擴充的 API 端點,並透過自動、隨選的執行個體快速調度,處理多位並行使用者。這項服務會執行核心代理程式邏輯,通常使用 LangGraphAgent Development Kit (ADK) 等 AI 協調架構。這個層會協調對其他元件的呼叫。Cloud Run 支援使用 WebSockets串流 HTTP 回應傳回給使用者。Cloud Run 內建的服務身分提供安全且自動的憑證,可呼叫 Google Cloud API,不必管理 API 金鑰。

  2. AI 模型:自動調度管理層會呼叫模型,提供推理能力。可能的形式包括:

  3. 記憶:代理通常需要記憶功能來保留脈絡,並從過往互動中學習。

  4. 資料庫和擷取:適用於檢索增強生成 (RAG) 或擷取結構化資料:

  5. 工具:協調器會使用工具執行模型不適合執行的特定工作,或與外部服務、API 或網站互動。這些實用資源包括:

    • 基本公用程式:精確的數學計算、時間轉換或其他類似公用程式,可在協調 Cloud Run 服務中執行。
    • 呼叫 API:呼叫其他內部或第三方 API (讀取或寫入存取權)。
    • 生成圖片或圖表:使用圖片生成模型或執行圖表程式庫,快速有效地建立視覺內容。
    • 瀏覽器和 OS 自動化:在容器執行個體中執行無頭或完整圖形作業系統,讓代理程式瀏覽網路、從網站擷取資訊,或使用點擊和鍵盤輸入執行動作。Cloud Run 服務會傳回螢幕的像素。使用 Puppeteer 等程式庫控制瀏覽器。
    • 程式碼執行:Cloud Run 提供多層沙箱的安全性環境,且可設定為程式碼執行服務,並具備最少或沒有 IAM 權限Cloud Run 工作可用於非同步執行程式碼,而並行數為 1 的 Cloud Run 服務則可用於同步執行作業。

後續步驟