本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
部署 Amazon Bedrock 代理程式
此範例假設您正在部署 Amazon Bedrock 代理程式,以自動化 DevOps 任務,並使用 Terraform 做為 IaC 工具。
挑戰
部署 Amazon Bedrock 代理程式需要強大且自動化的工作流程,引入下列技術挑戰:
-
完成代理程式準備
-
已驗證的整備狀態
-
零手動介入
-
一致的基礎設施部署
解決方案
下列 Terraform 程式碼使用數個關鍵元件來處理 Amazon Bedrock 代理程式準備。
resource "terraform_data" "prepare_agent" { triggers_replace = { agent_state = sha256(jsonencode(aws_bedrockagent_agent.example)) } provisioner "local-exec" { command = "aws bedrock-agent prepare-agent --agent-id ${aws_bedrockagent_agent.example.agent_id}" } } resource "time_sleep" "prepare_agent_sleep" { create_duration = "5s" lifecycle { replace_triggered_by = [terraform_data.prepare_agent] } }
在此程式碼中:
-
terraform_data會與local-exec佈建器結合,以在 Terraform 操作期間執行 AWS CLI 命令。terraform_data名為 的prepare_agent使用佈建器中的 AWS CLI 命令local-exec來準備代理程式。這可確保在主控台或 AWS CLI 命令中不需要手動介入。 -
客服人員觸發程序可確保資源建立只會在
aws_bedrockagent_agent資源完成之後開始。 -
time_sleep實作延遲以確保無縫操作。
Amazon Bedrock 代理程式的這種簡易部署策略會建立初始化程序,當代理程式進入預備狀態時,該程序會休眠 5 秒。
您可以透過引入等待 (例如 10 秒) 來增強此解決方案,直到客服人員建立後符合條件為止。您可以實作完整的狀態驗證機制來進一步擴展此解決方案,以完全準備好代理程式。例如,您可以實作狀態檢查,以防止過早產生別名並緩解潛在的 API 失敗。具有明確定義最大等待時間和詳細錯誤追蹤的自適應重試機制,可協助您對失敗進行故障診斷。關鍵考量包括維護一致的部署程序、支援自動化基礎設施設定,以及提供透明的進度監控。