SageMaker AIとBedrock AgentCoreによるエージェントワークフローの構築
Amazon Web Services
Anthropic
Alibaba/Qwen
この投稿では、Amazon SageMaker AI上のOpenAI互換エンドポイントとAmazon Bedrock AgentCoreランタイムを組み合わせて、マルチエージェントシステムを構築する方法を実演します。SageMaker AIにQwen 3.5 9Bをデプロイし、Amazon Bedrock上のモデルとともにStrands Agentsマルチエージェントシステムに統合し、ワークフロー全体をAmazon Bedrock AgentCoreランタイムに移行する手順を説明します。焦点は、Strandsがデフォルトで提供しないSageMakerエンドポイントからのトークンレベルの可観測性を含む統合メカニズムにあります。
エージェント型ワークフローを構築する際の共通の課題は、管理された基盤モデルと、独自のコスト最適化されたモデルやドメイン固有モデルを、エージェントフレームワークを書き直すことなく混在させることです。この投稿では、Amazon SageMaker AI上のOpenAI互換エンドポイントと、Amazon Bedrock AgentCoreランタイムおよびその管理デプロイを組み合わせる方法を示します。このアーキテクチャは、3つのモデルホスティングパスを単一のAmazon Bedrock AgentCoreコンテナを介して接続します。インテント分類とルーティング用のオーケストレーターエージェント(Bedrock上のClaude Haiku 4.5)、予算内訳用の予算エージェント(Bedrock上のClaude Sonnet 4.6)、そしてツール呼び出しを使用した株式分析用の財務分析エージェント(Amazon SageMaker AI上のQwen 3.5 9B)です。このデプロイには、長時間実行セッション用の自動更新ベアラートークン、Strands Agentsのエージェントをツールとして使用するパターン、およびbedrock-agentcore-starter-toolkitを使用したデプロイが含まれます。重要な課題は、Amazon Bedrock AgentCoreランタイムがエージェントをOpenTelemetryで自動的に計装する一方で、SageMaker OpenAI互換エンドポイントは自動トークンテレメトリを取得しないことです。この解決策は、SageMakerエージェント呼び出しをラップするgen_ai.chatスパンを手動で発行し、StrandsのAgentResult.metrics.accumulated_usageからトークン使用量を抽出することを含みます。さらに、vLLMはストリーミング応答でデフォルトでは使用量チャンクを含まないため、stream_options: {"include_usage": True}を設定する必要があります。この投稿では、ステップバイステップの構成、トレース出力の例、重要な学び、および微調整モデル、推論コンポーネントを使ったA/Bテスト、コスト認識ルーティングでパターンを拡張する方法についても説明します。
出典: AWS ML blog —
原文
