Amazon Web Services ブログ
ランタイムインスタンス: Amazon Bedrock AgentCore 上の本番環境の AI エージェント用のパーシステントコンピューティング
AI エージェントをプロトタイプから本番環境に移行すると、インフラストラクチャの課題は倍増します。エージェントは、数時間または数日間実行される複数ステップのワークフローにわたって状態を維持する必要があります。他のエージェントと調整したり、コンテキストを共有したり、特殊なタスクのために GPU にアクセスしたりする必要があります。Amazon Bedrock AgentCore Runtime microVM は、最大 8 時間実行できる完全マネージド型の呼び出し環境を提供し、マネージドセッションストレージを通じてステートフルワークフローをサポートします。ワークロードによっては、専用の大容量環境のメリットもあります。たとえば、エージェントを複数日間継続して実行したり、GPU や基盤となる OS にアクセスしたり、同じホスト上で複数の連携エージェントを実行したりする必要がある場合などです。
2026 年 8 月 6 日、ランタイムインスタンスを発表できたことを嬉しく思います。これは Amazon Bedrock AgentCore Runtime の新しい補完的なコンピューティングオプションで、複雑なエージェントワークロード向けに構築された永続的でマネージド型のインフラストラクチャをエージェントに提供します。
得られるもの
ランタイムインスタンスは、それぞれが独自の依存関係とアーティファクトタイプを持つ複数のエージェントを 1 つのランタイムにデプロイする AWS マネージド EC2 インフラストラクチャを提供します。エージェントは、最大 14 日間持続する共有セッション内で同じホストで共同作業できます。このサービスは、計算量の多いタスクのための GPU アクセラレーション、アイドル期間中のコスト削減のためのセッション停止/再起動、および独立して出荷したいチーム向けのコンテナ化されたデプロイをサポートします。セッション終了後も存続させる必要のある知識については、ランタイムインスタンスが Amazon Elastic Block Store (Amazon EBS) と AgentCore Memory と自然に組み合わされます。これにより、エージェントはセッションや環境を超えて長期的に思い出すことができます。
これまで、エージェントを何日も稼働させたい場合や、GPU アクセスやマルチエージェントの連携が必要な場合は、そのインフラストラクチャを自分で構築して管理する必要がありました。EC2 インスタンスのプロビジョニング、ネットワーキングの設定、セッション管理のセットアップ、スケーリングの処理、モニタリングの統合を行いました。ランタイムインスタンスは、AgentCore Runtime MicroVM ですでに使用しているのと同じ AgentCore API、ID 制御、およびオブザーバビリティと統合しながら、これらすべてを自動的に処理します。
エージェント開発者を笑顔にするべきことがいくつかあります。それは、エージェントが共有セッション内でお互いをツールと呼び、仕事が完了するまで自律的に反復できることです。どんなフレームワーク(CrewAI、LangGraph、LamaIndex、Strands でもどんなモデルでも持ち込めます。パッケージは最小限で、@app.entrypoint デコレータと zip ファイルまたはコンテナイメージだけです。また、ワークフローが何日にも及ぶ場合は、月曜日の夜に休止状態にして、水曜日の朝にすべてそのままの状態で再開してください。
Runtime MicroVM とランタイムインスタンスは補完的なコンピューティングオプションであり、単独で使用することも、同じ AgentCore Runtime API を使用して一緒に使用することもできます。Runtime MicroVM 上の軽量オーケストレーターエージェントは、インスタンス上で実行されている専用のワーカーエージェントに作業を調整してディスパッチできます。オーケストレーターは Runtime MicroVM の高速スケーリングを使用して API コール、タスクルーティング、結果集約を処理します。一方、インスタンス上のワーカーは、コードのコンパイル、セキュリティスキャン、GUI 自動化など、永続的な状態と OS への直接アクセスを必要とする計算量の多いタスクを実行します。
仕組みを見ていきましょう
このデモ用に 2 つのエージェントを作成しました。1 つは自然言語による記述から Python コードを生成する Code writer エージェントで、もう 1 つは生成されたコードのバグ、セキュリティ問題、スタイルの改善を分析する Code reviewer エージェントです。どちらのエージェントも同じファイルシステムを共有しているため、レビュー担当者はデータ転送や API コールを行わずに、ライターが作成したものをすべて読むことができます。
これがコードライターです(簡略化されており、エラー処理はありません)。
ライター = エージェント (
model=“us.anthropic.claude-sonnet-4-5-20250929-v 1:0“,
system_prompt=(
「あなたはPythonのシニアエンジニアです。」
「タスクが与えられたら、Python のコードブロックを1つだけ返す。散文は返さない。」
),
)
@app.entrypoint
def handler(event, context):
task = event.get(“task“) or event.get(“prompt“)
session_id = getattr(context, “session_id“, None) or event.get(“session_id“)
session_dir = SHARED_DIR / session_id
session_dir.mkdir(parents=True, exist_ok=True)
code = str(writer(task))
(session_dir / ”code.py”).write_text(code)
return {“agent“: “writer“, “wrote“: str(session_dir / “code.py“), “code“: code}
これが Code reviewer エージェントです(簡略化され、エラー処理はありません)。
レビュアー = エージェント (
model=“us.anthropic.claude-sonnet-4-5-20250929-v 1:0“,
system_prompt=(
「お客様は厳格なPythonコードレビュアーです。」
「与えられたコードに対して、バグ、スタイル、提案という3つの箇条書きを返す。」
),
)
@app.entrypoint
def handler(event, context):
session_id = getattr(context, “session_id“, None) or event.get(“session_id“)
code_path = SHARED_DIR / session_id / "code.py"
code = code_path.read_text()
review = str(”reviewer(f ”Review this code:\n\n{code}”))
return {”agent”: ”reviewer”, ”read”: str(code_path), ”review”: review}
各エージェントは、Strands Agents を使用する Python アプリケーションで、@app .entrypoint デコレータとお好みのモデルを備えています。それぞれを zip ファイルとしてパッケージ化します。今回は AWS マネジメントコンソールを使用します。AgentCore CLI、AWS コマンドラインインターフェイス (AWS CLI)、またはインフラストラクチャーアズコード (Infrastructure as Code) を使用することも可能です。
ステップ 1: 容量プロバイダーを作成します。
容量プロバイダーは、エージェントが実行される EC2 インフラストラクチャを定義します。AgentCore コンソールでは、左側のナビゲーションで [ランタイム] を選択し、次に [容量プロバイダー] タブと [容量プロバイダーの作成 ] を選択します。
名前を付けて、Operating system として Linux (64ビットARM) を選択し、許可するインスタンスタイプとして c7g.2xlarge を選択します。これにより、8 個の vCPU と16GiB のメモリが得られ、両方のエージェントを快適に並べて実行することができます。
さらに、ネットワークアクセス用に VPC 、サブネット、セキュリティグループを構成します。ストレージ構成では、デフォルトの gp3 ボリュームのままにします。[サービスアクセス] で [新しいサービスロールの作成] を選択し、私に代わって EC2 インスタンスを管理するインフラストラクチャロールをコンソールに作成させます。
[容量プロバイダーの作成] を選択し、数秒待ちます。ステータスが [アクティブ] に移動します。
容量プロバイダー設定の概要 (オペレーティングシステム、インスタンスタイプ、サブネット、セキュリティグループ、インスタンスプロファイル、インフラストラクチャーロール) に注意してください。作成後は説明のみを編集できるので、先に進む前に設定を確認してください。
ステップ 2: ランタイムを作成し、最初のエージェントをデプロイします。
「ランタイム」ページに戻り、「ランタイムの作成」を選択します。Name を入力し、Compute typeとしてインスタンスを選択し、前のステップで作成した容量プロバイダーを選択します。
[エージェントソース] で [S3 ソース] を選択し、次に [S3 にアップロード] を選択します。エージェントの zip ファイル (ACIDemoWriter.zip) を選択し、言語ランタイムを Python 3.13に設定し、 agent.pyをAgewnt entry pointとして指定します。これは@app .entrypointでデコレートした関数を含むファイルです。[権限] で [デフォルトロールの作成] を選択して、エージェントが必要とする IAM ロールをコンソールにプロビジョニングさせます。
「ランタイムを作成」を選択し、ステータスが「準備完了」になるのを待ちます。
コードレビュー担当者にも同じプロセスを繰り返します。2 番目のランタイムを作成し、同じ容量プロバイダーを選択し、レビューアーエージェントの zip ファイルをアップロードして、Ready になるのを待ちます。両方のエージェントは、基盤となる同じ EC2 インフラストラクチャを共有するようになりました。
コンソールには、エージェントをプログラムで呼び出すためのすぐに使用できる Python、TypeScript、JavaScript のスニペットを含む [呼び出しコードの表示] セクションが表示されます。ただし、このデモでは、組み込みのテスト機能を使用します。ライターエージェントのページで [テスト] を選択します。
ステップ 3: エージェントを呼び出し、コラボレーションを観察します。
ランタイムプレイグラウンドが開きます。上部には、「ランタイムエージェント」、「エンドポイント」、「セッションID」の 3 つのフィールドがあります。コンソールはセッション ID を自動的に生成します。レビュアーエージェントで再利用するのでメモしておきます。
入力フィールドに、ライターエージェントにコードを生成するように要求する JSON ペイロードを入力します。
{”prompt”: ”write a fibonacci suite”}
[実行] を選択します。数秒後、アウトプットパネルにエージェントの応答が表示されます。ライターエージェントは、フィボナッチ数列の 2 つの実装 (リストベースの関数とジェネレーター) を含む Python モジュールを生成し、それを /tmp/agentcore-session/ca5ec24d-07f5-4eeb-add1-5ba416bf9eb2/code.py に書き込みました。ファイルパスにあるセッション ID に注意してください。そのディレクトリは、このセッションの共有ファイルシステムです。
ステップ 4: 同じセッションでレビュー担当者エージェントを呼び出します。
次に、ランタイムエージェントのドロップダウンを ACIDEMoreViewer に切り替えます。重要な部分:同じセッションID(ca5ec24d-07f5-4eeb-add1-5ba416bf9eb2)をセッション ID フィールドに貼り付けます。これが 2 つのエージェントをつなぐものです。
簡単なプロンプトを入力します。
{”prompt”: ”review the code”}
[実行] を選択します。レビュー担当エージェントは、ライターが共有セッションディレクトリから作成したファイルを読み取り、詳細なコードレビューを返します。重大なバグは見つかりませんが、タイプヒントの追加、入力検証、エッジケース処理の簡略化を提案します。
2つのエージェントがメッセージを交換したり、互いの API を呼び出したりすることはありませんでした。彼らは、ランタイムインスタンスがセッション内で提供する共有ファイルシステムを介して共同作業を行いました。このパターンは、コードを実行するテストエージェント、README ファイルを生成するドキュメンテーションエージェント、脆弱性をスキャンするセキュリティエージェントなど、任意の数のエージェントに拡張できます。これらはすべて同じ作業ディレクトリを共有します。
主な詳細
始めるにあたって知っておくべきことがいくつかあります。
- サポート対象 OS: ローンチ時はLinux (ARM64およびx86_64)。
- セッションの持続性: セッションは最大 14 日間持続します。
- ランタイム: ネイティブコードをサポートするPython 3.11-14。コンテナイメージもサポートされています。
- GPU: GPU アクセラレーション対応のインスタンスタイプをサポートします。
- 統合: AgentCore Runtime と同じ AgentCore API、アイデンティティ、オブザーバビリティ、ポリシーコントロールを使用します。
- 料金: 標準の EC2 料金と AgentCore オーケストレーションの管理料金が加算されます。
- 地域: 米国東部 (オハイオ、バージニア北部)、米国西部 (オレゴン)、アジア太平洋 (ムンバイ、シンガポール、シドニー、東京)、ヨーロッパ (フランクフルト、アイルランド)
To get started, visit the runtime instance in 開始するには、Amazon Bedrock AgentCore documentation のランタイムインスタンスにアクセスし、最初の容量プロバイダーを作成してください。
原文はこちらです。


