View a markdown version of this page

開始使用 Amazon Bedrock AgentCore 執行期直接程式碼部署 - Amazon Bedrock AgentCore

開始使用 Amazon Bedrock AgentCore 執行期直接程式碼部署

直接程式碼部署可讓您將代理程式帶到 Amazon Bedrock AgentCore 執行期,只需在 .zip 檔案存檔中封裝代理程式程式碼及其相依性即可。您的代理程式仍然需要遵循 AgentCore 執行期要求

若要將部署套件建立為 .zip 檔案封存,您可以使用 AgentCore CLI 或遵循以下特定語言指南中的步驟,或任何其他 .zip 檔案公用程式,例如 7zip。以下各節顯示的範例假設您在 Linux 或 MacOS 環境中使用命令列 zip 工具。若要在 Windows 中使用相同命令,您可以安裝適用於 Linux 的 Windows 子系統,以取得 Ubuntu 和 Bash 的 Windows 整合版本。

請注意,AgentCore 執行期使用 POSIX 檔案許可,因此您可能需要在建立 .zip 檔案封存之前設定部署套件資料夾的許可

直接程式碼部署概念

了解搭配 Amazon Bedrock AgentCore 執行期使用直接程式碼部署時的重要概念。

主題

    具有直接程式碼部署的 Amazon Bedrock AgentCore 執行期使用與 AWS Lambda 類似的共同責任模型。AgentCore Runtime 會管理語言執行期環境,並自動套用安全修補程式,同時專注於您的代理程式程式碼和相依性。

    如果您使用容器映像來部署代理程式 ,則 AgentCore 執行期負責僅修補運算核心。在此情況下,您必須負責從最新的安全映像重建代理程式的容器映像,並重新部署容器映像。

    以下表進行總結:

    部署模式 AgentCore 執行期的責任 您的責任

    直接部署模式

    發佈新的語言執行時間版本,其中包含語言執行時間的最新修補程式。將語言執行期修補程式套用至現有的 AgentCore 執行期直接部署。

    更新您的代理程式程式碼,包括相依性,以解決任何安全漏洞。

    容器映像

    使用最新版本自動修補基礎運算作業系統核心。

    更新您的代理程式程式碼,包括相依性,以解決任何安全漏洞。使用最新的基礎映像,定期重建和重新部署容器映像。

    如需 共同責任的詳細資訊 AWS,請參閱共同責任模型

    AgentCore 執行期可讓每個直接程式碼部署執行期保持在最新狀態,其中包含安全性更新、錯誤修正、新功能、效能增強和次要版本版本的支援。這些執行階段更新會發佈為執行階段版本。AgentCore 執行期會將代理程式從較早的執行期版本遷移至新的執行期版本,以套用直接程式碼部署執行期更新至代理程式。

    對於直接部署執行期,AgentCore 執行期會自動套用執行期更新。透過自動執行期更新,AgentCore 執行期會承擔修補執行期版本的操作負擔。對於大多數客戶來說,這應該是安全的選擇,因為只會自動套用語言執行期修補程式,而且客戶必須負責攜帶和管理其程式碼相依性。AgentCore Runtime 目前不支援變更此自動修補行為。

    AgentCore 執行期致力於提供與現有函數回溯相容的執行期更新。但是與軟體修補一樣,在極少數情況下,執行階段更新可能會對現有函數產生負面影響。例如,安全性修補程式可能會暴露現有函數的潛在問題,取決於先前的不安全行為。在極少數情況下,如果無法接受此風險,請使用容器映像來部署您的代理程式。

    比較的一些維度,以查看一個選項與另一個選項的差異,因此選擇正確的選項有幫助

    • 部署程序 :直接程式碼部署會使用 ZIP 檔案而非容器部署代理程式,將自己借給更快速的開發反覆運算。

    • 部署時間 :雖然在第一次部署代理程式期間沒有太大的差異,但透過直接程式碼部署,代理程式的後續更新會明顯更快。

    • 自訂 :直接程式碼透過以 ZIP 為基礎的封裝支援自訂相依性,同時維持部署的簡單性,而容器則取決於 Docker 檔案。

    • 套件大小 :直接程式碼部署會將套件大小限制為 250MB,而容器型套件的大小上限為 2GB。

    • 工作階段建立速率 :相較於使用容器型部署的 1.6 個新工作階段,直接程式碼部署允許更高每秒 25 個新工作階段的工作階段建立。

    我們的一般指引是

    • 如果部署套件的大小超過 250MB,而且您擁有現有的容器 CI/CD 管道,而且您需要高度專業化的相依性和封裝,則容器型部署是不錯的選擇。

    • 如果部署套件的大小很小,程式碼和套件在建置和使用常見的架構和語言並不複雜,而且您需要快速原型設計和反覆運算,則直接程式碼部署將是選項。

    還有一個混合選項,開發人員可以使用直接程式碼部署來快速實驗和原型代理程式,然後切換到容器型部署 (基於上述原因) 來開發、測試和部署到生產環境。