背景
Amazon Bedrock AgentCore 是一個用於大規模構建、連接和優化 AI 代理的平台,支援多種代理框架與基礎模型(FM,Foundation Model,即大型語言模型等底層模型)。其執行環境(Runtime)將每個代理會話運行在隔離的 microVM(微型虛擬機器)中。過去,開發者若要檢視代理正在建置的網頁應用,通常需將應用複製並部署到其他服務,導致每次修改都需等待部署完成,延緩了開發與審查流程。 AWS ML Blog 官方原文・github.com
發生什麼事
Amazon 發布了 AgentCore Runtime 的 Session Endpoints(會話端點)功能,允許開發者透過瀏覽器直接存取代理會話中運行的應用。此功能讓開發者能在一個本地頁面中,左側與代理對話,右側即時預覽代理正在編輯的網頁應用。當代理儲存檔案時,網頁會透過 Vite 的熱重載(hot-reload)機制即時更新,無需手動重新整理或重新部署。 AWS ML Blog 官方原文・github.com
重點內容
Session Endpoints 為每個會話提供一個經過認證的 URL,該 URL 會將 HTTP 請求、查詢字串、請求體以及 WebSocket 連線,轉發至開發者在建立執行環境時指定的 allowedPorts(允許埠號)。埠號範圍限制在 8000 至 12000 之間,且需排除平台保留埠。每個請求都必須經過身份驗證,使用 AWS Identity and Access Management (IAM) 時需帶有 Signature Version 4 (SigV4) 簽名,或使用 Bearer Token(承載權杖,一種用於 API 認證的令牌)。僅知道 URL 無法存取,必須具備相應的權限,如 bedrock-agentcore:InvokeAgentRuntimeProxy。 AWS ML Blog 官方原文・github.com
由於瀏覽器無法自行添加 SigV4 簽名或 Bearer Token,bedrock-agentcore SDK 會在本地開啟一個端點(例如 localhost:8088)。瀏覽器透過此本地端點發送請求,SDK 自動附加憑證後轉發至 Session Endpoint。在示範案例中,代理運行於埠 8080,Vite 開發伺服器運行於埠 8090,代理狀態路由運行於埠 8081。埠 8080 不透過 Session Endpoint 存取,而是直接透過 InvokeAgentRuntime API 呼叫。 AWS ML Blog 官方原文・github.com
對使用者的意義
此功能主要針對開發者,用於構建、測試和審查代理產出的內容。開發者可使用 AgentCore CLI(命令列介面,用打字下指令操作電腦的方式)或 Python SDK 進行部署。透過此機制,開發者能即時觀察代理修改程式碼後的視覺結果,例如切換網頁主題顏色,並立即驗證修改是否符合預期,從而加速開發迭代循環。 AWS ML Blog 官方原文・github.com
限制與未定事項
Session Endpoints 僅適用於單一會話的生命週期,會話結束時 URL 即失效,因此不適用於向最終用戶提供服務。若要將應用部署給用戶,需使用如 AWS Amplify Hosting 等託管服務。此外,使用此功能需具備特定 AWS 權限,包括建立 IAM 角色、上傳至 Amazon S3、建立執行環境,以及對執行環境及其 DEFAULT 端點擁有 bedrock-agentcore:InvokeAgentRuntime 和 bedrock-agentcore:InvokeAgentRuntimeProxy 權限。 AWS ML Blog 官方原文・github.com
接下來要看的事
- Session Endpoints 在 AWS 各區域的可用性清單
- AgentCore CLI 最新版本對 Session Endpoints 的支援細節
- 與傳統 AWS Amplify Hosting 在開發流程上的具體效能比較數據


