View a markdown version of this page

ハーネスをコードにエクスポートする - Amazon Bedrock AgentCore

ハーネスをコードにエクスポートする

コードへのハーネスのエクスポートは、マネージドハーネス設定を取り、Strands フレームワークを使用して編集可能な Python ソースコードとして同等のエージェントを生成します。生成されたエージェントは通常の AgentCore ランタイムエージェントです。コードを所有し、自由に変更して、他のエージェントと同様にデプロイできます。生成されたエージェントは、ハーネスのモデル、ツール、スキル、メモリ、実行制限、ファイルシステムのマウントをミラーリングします。

エクスポートを使用するタイミング

作業ハーネスがあり、次の場合はエクスポートを使用します。

  • ハーネス設定で許可されている範囲を超えてカスタマイズする - カスタムツールロジックの追加、エージェントループの変更、ミドルウェア/フックの挿入、ハーネスが公開しないライブラリの統合

  • コードを所有する - 宣言型設定から、アプリケーションの他の部分と同様に、制御、レビュー、バージョン管理を行うソースコードに移動します。

  • プロトタイプを策定する - ハーネスですばやく開始し、手入れされたエージェントに投資する準備ができたらエクスポートします。

ハーネス設定が既に必要なものをすべて実行している場合は、エクスポートする必要はありません。ハーネスとして実行し続けます。

現在サポートされているもの

  • フレームワーク - Claude Agents SDK などの他のフレームワークが近日公開されるストランド

  • 言語 - Python のみ

  • ビルドタイプ - CodeZip (デフォルト) とコンテナ

生成されたエージェントに伝達されるハーネス機能:

  • モデルプロバイダーと設定 (Bedrock、OpenAI、Gemini - モデル ID と API キーリファレンスを含む)

  • ツール - リモート MCP ツール、ゲートウェイ、インライン関数ツール、AgentCore ブラウザ、AgentCore コードインタープリタ、組み込み shellおよび file_operations ツール

  • メモリ

  • 実行制限

  • 会話切り捨て

  • スキル (パス、S3、Git)

  • VPC ハーネスのファイルシステムマウント (セッションストレージ、EFS、S3)

  • オーソライザー設定

CLI の使用

コマンド構文

AgentCore CLI
agentcore export harness --arn <arn> [options]

オプション

フラグ 説明 デフォルト

--arn <arn>

エクスポートするハーネスの ARN (現在の CLI プロジェクト外で作成されたハーネスをエクスポートするときに使用)

arn またはname必須

--name <name>

エクスポートするハーネスの名前 (同じ CLI プロジェクトで作成されたハーネスをエクスポートするときに使用)

arn またはname必須

--target-agent-name <name>

生成されたランタイムエージェントの名前

<harnessName>Agent

--build <type>

ビルドタイプ: CodeZipまたは Container

CodeZip

--json

結果を JSON として出力する

デフォルトを使用した基本的なエクスポート:

AgentCore CLI
# Export harness with ARN - generates MyHarnessAgent using CodeZip agentcore export harness --arn arn:aws:bedrock-agentcore:us-east-1:123456789012:harness/MyHarness # Export harness created within CLI project - generates MyHarnessAgent using CodeZip agentcore export harness --name MyHarness # Export with a custom agent name agentcore export harness --name MyHarness --target-agent-name MyProductionAgent # Export as a Container build (generates Dockerfile) agentcore export harness --name MyHarness --build Container
Interactive

agentcore export harness なしで --nameを実行して、インタラクティブエクスポートウィザードを起動します。

  1. プロジェクトに複数のハーネスがある場合は、エクスポートするハーネスを選択します。(単一のハーネスでは、ウィザードはこのステップをスキップします)。

    エクスポートするハーネスを選択する
  2. 生成されたランタイムエージェントの名前を入力するか、デフォルトの <harness>Agent を受け入れます。

    生成されたランタイムエージェントに名前を付ける
  3. CodeZip (Python ソースを zip としてパッケージ化、デフォルト) または Container (ECR と CodeBuild を介して Docker イメージをビルド) のビルドタイプを選択します。

    ビルドタイプを選択する
  4. エクスポート設定を確認して確認します。

    エクスポートを確認して確認する

エクスポート後、 EXPORT_NOTES.md を確認し、 agentcore deployを実行して生成されたエージェントをデプロイします。

エクスポート後

AgentCore CLI を使用して、生成されたランタイムエージェントをデプロイします。

AgentCore CLI
agentcore deploy

エクスポートされたエージェントは通常のランタイムとして追加されるため、残りの AgentCore CLI プロジェクトと一緒にデプロイされます。

EXPORT_NOTES.md

エクスポートのたびに、手動によるフォローアップが必要な項目を一覧表示する EXPORT_NOTES.mdが書き込まれます。Export は、各項目、注意が必要な理由、および正確な対処方法を一覧表示するエージェントディレクトリの EXPORT_NOTES.md にメモを書き込みます。デプロイする前に、必ず EXPORT_NOTES.md を読んでください。

デプロイオプション

エクスポート後、エージェントを複数のホスティング環境にデプロイできます。

  • AgentCore ランタイム (マネージド) - インフラストラクチャ、スケーリング、認証情報のプロビジョニングを自動的に管理する AgentCore ランタイムでホストagentcore deployするために使用します。

  • セルフホスト - 生成された Python エージェントを Python 3.12 以降をサポートする任意の場所にデプロイします。

    • AWS サービス: Lambda、ECS/Fargate、EC2

    • Kubernetes クラスター

    • オンプレミスサーバー

    • コンテナ化された環境