

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 部署 Amazon Bedrock 代理程式
<a name="bedrock-agents"></a>

此範例假設您正在部署 Amazon Bedrock 代理程式，以自動化 DevOps 任務，並使用 Terraform 做為 IaC 工具。

## 挑戰
<a name="bedrock-agents-challenges"></a>

部署 Amazon Bedrock 代理程式需要強大且自動化的工作流程，引入下列技術挑戰：
+ 完成代理程式準備
+ 已驗證的整備狀態
+ 零手動介入
+ 一致的基礎設施部署

## 解決方案
<a name="bedrock-agents-solution"></a>

下列 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 失敗。具有明確定義最大等待時間和詳細錯誤追蹤的自適應重試機制，可協助您對失敗進行故障診斷。關鍵考量包括維護一致的部署程序、支援自動化基礎設施設定，以及提供透明的進度監控。