🛠Tools🔥🔥

AWS、エージェント SDK `Strands Agents` 向けガイド公開──Amazon SageMaker AI の Qwen と Bedrock を統合するマルチエージェント設計

Amazon Bedrock AgentCore ランタイム上で Claude と SageMaker AI ホストの Qwen 3.5 9B を協調させ、カスタム OpenTelemetry でトークン枯渇を防ぐマルチエージェント実装ガイド。
リリース: 2026-08-14 · 読了 4

記事の要約

1. 核心(What)

  • Amazon Bedrock AgentCore ランタイムを活用し、Amazon Bedrock の Claude 群と Amazon SageMaker AI ホストの Qwen 3.5 9B を連携させるマルチエージェント構築手順を公開
  • オーケストレーターとして Claude Haiku 4.5、予算管理に Claude Sonnet 4.6、金融分析ツールとして Qwen 3.5 9B (ml.g6e.2xlarge 上の vLLM) を割り当て
  • Strands Agents の OpenAIModel プロバイダ経由の SageMaker エンドポイント呼び出しにおいて、標準の OpenTelemetry ではトークン使用量が計測されない課題と回避策を提示
  • vLLM の `stream_options: {"include_usage": True}` 設定と `result.metrics.accumulated_usage` を用いたカスタム `gen_ai.chat` スパンの実装コードを提供

2. 影響(Why)

  • モデル混在時のオブザバビリティ確保: マネージド LLM とセルフホスト OSS を組み合わせたシステムで、従来ブラックボックス化していた自社ホスト側のコスト・トークン消費量を正確にトレーシングできる。
  • 国内エンタープライズのコスト最適化設計: 金融やヘルスケアなどデータを外部に出せない国内の垂直型 SaaS 開発において、高単価な商用 API への全依存を避け、特定タスクを SageMaker AI 上の軽量 OSS にオフロードする現実解を提供する。

3. 根拠・詳細(How)

  • vLLM コンテナとハードウェア構成: ml.g6e.2xlarge インスタンス上で vLLM (vllm:0.22.1-gpu-py312-cu130) を使用して Qwen 3.5 9B を展開し、OpenAI 互換エンドポイントとして接続。
  • 有効期限付きトークンの自動更新: 長期稼働するエージェントセッションに対応するため、`httpx.Auth` のサブクラスを用いて SageMaker AI の Bearer トークンをリクエストごとに自動更新する機構を実装。
  • ストリーミング時のトークン抽出機構: vLLM のデフォルト動作ではストリーミング時に利用量が送信されないため、`stream_options: {"include_usage": True}` を追加して最終チャンクから `accumulated_usage` を抽出。

4. 展望・課題(Next)

  • ファインチューニング済みモデルへの置換: Amazon S3 上のカスタムチェックポイントへ `SM_VLLM_MODEL` を向けることで、認証層や OTEL 構成を変更せずにドメイン特化モデルへ拡張可能。
  • 推論コンポーネントによる A/B テスト: 同一 SageMaker エンドポイント上にベースモデルと微調整済みモデルを同時デプロイし、OTEL スパンにバリアント属性を付与して品質比較を行う構成を検討。