AgentCore包含了所有agent的部署元素,可以快速大規模部署
AgentCore包含了所有agent的部署元素,可以快速大規模部署

Agentic AI 成為應用的主流

Agentic AI 正日益成為各行各業企業的重要技術。雖然對個人用戶來說,建立 AI 框架(如 OpenClawHermes)相對簡單,但在企業環境中,這可能需要大量資源且難以管理。原理上是将 OpenClaw 從單機改為多租户 Serverless 架構。

對於應用程式而言,將 AI 代理整合到工作流程中,引入自然語言 AI 助手,可簡化學習應用和互動,提供類似於 Microsoft Co-Pilot 的體驗,將適合應用的 AI 代理加入其他不同應用內。

AWS (Ticker: AMZN, Exchange: NASDAQ) 最近推出了 AgentCore,這是一個針對企業大規模部署設計的無伺服器解決方案,旨在將 AI 助手添加到現有應用程式中,重新定義用戶體驗,並縮短用戶的學習曲線。

針對企業 Agentic AI 部署挑戰

雖然在單台機器或 Mac mini 上設置 AI 框架,甚至安裝大模型可能只需一個命令,但在企業環境中擴展這種設置會帶來重大挑戰。並發性、隔離、身份管理、狀態持久性、擴展、編排和基礎設施等問題都非常困難。每個員工不可能擁有自己的 AI 設置,必須要集中式、可擴展的解決方案。

AWS Bedrock AgentCore:無伺服器解決方案

AWS Bedrock AgentCore 提供了強大的多租戶環境,每個代理在隔離的 Per-Session microVM 中運行。這種設置確保每個代理都有自己的文件系統和 shell,允許 AI 代理安全地讀取文件、運行命令和編寫代碼。主要功能包括:

  • 隔離:每個代理在自己的安全、隔離的環境中運行。
  • 狀態持久性:代理在不同會話中記住用戶和對話。
  • 技能獲取:代理可以從 AWS 目錄或自定義來源獲取技能。
  • 網頁瀏覽和工具整合:代理可以瀏覽網頁並通過網關或 MCP 調用工具。
  • 模型靈活性:會話中途切換模型而不丟失上下文,但由於是亞馬遜的平台,需要使用 Bedrock 中的模型。Bedrock 在星加坡和日本的模型選擇非常有限,加上在香港的帳戶又不能調用 Anthropic 的大模型,只能注意一些簡單任務。

每個操作都以實時方式流回並自動追踪到 CloudWatch,消除了對編排代碼或容器構建的需求。

AgentCore 提供了經濟高效的方式來大規模部署 AI。然而,將 AgentCore 整合到應用程式中並非易事,而且 Bedrock 中較便宜的模型不適合複雜任務,尤其是 Nova 在理解和取用工具表現也非常一般。此外,缺乏 OpenClaw 和 Hermes 的生態系統。

儘管如此,無伺服器模型意味著只需根據實際消耗為底層功能付費,沒有額外收費。由於 AgentCore 在雲端運行,配合 Amplify 部署幾乎可以在任何地方訪問無伺服器應用程式,包括 React 程式,無需 VM 和通過 VPN 才回到本地網絡。

Bedrock 的靈活性還允許您在沒有大量前期投資的情況下嘗試不同的模型和提供商,切換過程簡單,您馬上可以看到每一個模型的實際表現。

真實世界範例:從 Notion 遷移到 Node.js

我們最初使用 Notion 進行內容創建和元數據生成。通過整合 Hermes 技能自動上載到網站,現在使用 MDX 更新網站。當我們遷移到 Node.js 時,我們使用 AWS Amplify 進行部署,並加入 AgentCore 進行內容自動完成。Notion 具有豐富的功能,適合協作,甚至可以在頁面中快速創建數據庫,以幫助組織信息,並且非常擅長處理代碼和總結內容。然而,我們總是很快用完 AI 點數並需要充值,因此我們需要較次要的工作遷移到 AWS。其次,我們希望借助代理和更簡單的整合來簡化應用程式體驗。當然,可以使用 FastAPI 的應用程式添加 agentic AI,但需要大量的粘合代碼,AgentCore 相對簡單。

以往編輯網頁內容並通過 MDX 推送到網站,我們使用 Notion 進行編輯,Hermes 推送 MDX 成為網站內容。現在整合到 AWS,因為網站在 Amplify 上託管 React 代碼。結果是與 Notion 加 Hermes 相似的無縫體驗,當然模型的理解和執行能力,與 Notion 相去甚遠(這是因為 Notion 使用了非常先進的大模型),但 AgentCore 具有無伺服器技術,具備可擴展性和成本效益優勢,而且還顯著減少了成本,引入後也為用戶帶來類似Co-pilot的驗體,如果在手機上應用,還可以支援聲音轉文字,直接讀出稿件,然後變成可出版的文件。

自定義您的代理環境

大多數代理在默認環境中運行良好,其中包括 Python 和 bash。但是,對於更複雜的需求,您可以自定義代理的運行 instance。例如你是部署 web 應用,反應可能超過 Bedrock 的時間限制,利用 Container 可能會較為穩定。

根據 AWS 文件介紹,日後可以將源代碼、依賴項、運行時和工具打包到自定義容器中,推送到 Amazon Elastic Container Registry (Amazon ECR Fargate),並在 CreateHarness 中引用它。代理然後使用該確切環境,允許每次調用時變化的會話特定設置。

利用agentcore構建的代理對話框,建立類似Notion對話窗對agent發出指令,並修改文章的內容
利用agentcore構建的代理對話框,建立類似Notion對話窗對agent發出指令,並修改文章的內容

ECR 確實是非常經濟高效的無狀態應用程式解決方案。例如,我們需要在上傳到網站之前對圖像進行修飾,用戶通常會使用 Gunicorn(Green Unicorn)的 Python 應用程式來運行帶有 UI 的 Flask 應用程式,查看圖像位置是否正確,並手動自定義其邊距是否平均。現在我們將其打包到 Docker 中,並使用 ECR Fargate 運行,無需物理機器,使用 Amazon Rekognition DetectLabels API 基於深度學習的圖像分析服務,可自動識別和裁剪圖像,並優化像素。Docker 僅在需要時加載和運行圖像增強,完成後,Docker 將被卸載,AWS 收費將完全和立即停止。Agent 可呼叫 API,並且完成有關圖片的裁剪,停用實體機器,節省大量硬件維護成本。

文件系統選項和知識共享

代理通常需要文件超出單個響應的生命週期,例如共享知識庫或跨會話的工作目錄。AWS Bedrock AgentCore 提供各種文件系統選項,AI 代理能夠在不同的 harnessing 實例之間共享知識和經驗。例如,如果您必須在停止/恢復(編碼代理、長工具循環、磁盤上的共享 KB)之間保留文件,此功能將非常有用。我們構建網頁內容,然後使用容器腳本將網頁內容發佈到社交媒體渠道。我們需要在代理 VM 中保持文件。這個功能非常有用。

AWS Bedrock AgentCore 越代表了迅速構建支援 agent 的應用驗證,並且網上快速迭代,然後大規模推出甚至變成客戶應用,加上成本低廉,相信是近期 AWS 較有潛力的產品,至少較 Quick 更加具彈性,並可以支援更多客制化和第三方應用。