Closed3
ECSでセルフホストしたDifyからBedrockのRerankモデル呼び出しが失敗したときの調査

現象
- ECSでセルフホストィングしているdifyにLLMプロバイダーとしてAWS Bedrockを設定した
- difyのバージョンは0.15.3
- ECSのロールに以下のカスタムポリシーを付与した
data "aws_iam_policy_document" "bedrock" {
statement {
actions = ["bedrock:InvokeModel"]
resources = ["arn:aws:bedrock:*::foundation-model/*"]
}
}
-
ナレッジを作成してRAGを実施すると、Rerank処理でエラーが発生
- Rerank無しだと普通に動く
-
以下エラー内容
[bedrock] Error: An error occurred (AccessDeniedException) when calling the Rerank operation: You are not authorized to invoke the Rerank operation.

原因
1. ECSの権限不足
- ECSにアタッチしていたロールには以下のアクションも許可する必要があった
2. Rerank用モデルの提供外regionでプロバイダー設定していた
- Rerank用のモデル(Amazon Rerank 1.0, Cohere Rerank 3.5)は2025/03/18現在以下の4つのregionでのみ提供されている
- しかしdifyのプロバイダーとして設定する際にUS Eastとして設定していた
US West (Oregon)
Asia Pacific (Tokyo)
Canada (Central)
Europe (Frankfurt)
参考画像

無限にECSにロールつけたり外してたりしてたがモデル自体の提供リージョンは想定外だった
(You are not authorized to invoke the Rerank operation.
とか言われたらIAM権限周りの問題だと思うじゃん...)
このスクラップは6ヶ月前にクローズされました