スキップしてコンテンツを表示

BedrockのAI Agentの呼び出しエラー (Your request rate is too high)

0

boto3 の invoke_agent を用いてBedrock ai agentをpythonスクリプトから呼び出しております。 その際に下記のようなエラーが出ます。 botocore.exceptions.EventStreamError: An error occurred (throttlingException) when calling the InvokeAgent operation: Your request rate is too high. Reduce the frequency of requests. Check your Bedrock model invocation quotas to find the acceptable frequency.

トークン数てきに一度質問したら、数分経たないと次の実行ができません。 リトライやリージョンを変えるなどの試行はしていますが、サービスを提供する際にはボトルネックになると思っております。

こちらの対策はございますでしょうか。 ご教示いただけますと幸いです。

質問済み 10ヶ月前692ビュー
1回答
0

このエラーは、AWS Bedrockサービスのリクエストレート制限に達したことを示しています。Bedrock AI Agentの呼び出しに関して、以下の対策を検討することができます:

  1. スロットリングの実装: アプリケーションにスロットリングメカニズムを実装し、APIコールを時間的に分散させることで、制限を超えないようにします。例えば、リクエスト間に小さな遅延を追加したり、指数バックオフやリトライメカニズムを使用したりすることができます。

  2. クォータの確認と増加要求: AWS Management ConsoleのService Quotasページで、BedrockサービスのAPI呼び出し制限を確認してください。必要に応じて、より高いレート制限のクォータ増加をAWSに要求することができます。

  3. プロビジョンドスループットの検討: オンデマンドモードではなく、プロビジョンドスループットに切り替えることで、アカウント専用の予約容量を確保し、一貫したパフォーマンスを維持できる可能性があります。

  4. リクエストの最適化: 可能であれば、複数の小さなリクエストを1つのバッチ呼び出しにまとめることで、APIコールの頻度を減らすことができます。

  5. キャッシング: 適用可能な場合、モデルのレスポンスやデータをキャッシュすることで、冗長なAPIコールを最小限に抑えることができます。

  6. モニタリングとアラートの設定: CloudWatchを使用してAPIコールパターンを監視し、制限に近づいたときに通知を受け取るようにアラートを設定することができます。

  7. リクエストマネージャーの実装: 並列リクエストの最大数を制御するリクエストマネージャーを作成し、スロットリングの影響を最小限に抑えることができます。

これらの対策を組み合わせることで、スロットリングの問題を軽減し、サービスのパフォーマンスと信頼性を向上させることができるでしょう。ただし、根本的な解決策としては、AWS側のキャパシティ拡大を待つ必要があるかもしれません。
Sources
Question regarding Error invoking RetrieveAndGenerateCommand: Your request rate is too high. Reduce the frequency of request: | AWS re:Post
ThrottlingExceptions while using on-demand Bedrock runtime for invoking Claude v2.1 | AWS re:Post
Assistance Required for Resolving ThrottlingException Errors with Bedrock API | AWS re:Post

回答済み 10ヶ月前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

関連するコンテンツ