Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】First Impressions with Amazon Bedrock AgentCore

2025年09月11日に「Dev.to」が公開したITニュース「First Impressions with Amazon Bedrock AgentCore」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

AWSは、AIエージェントの実験段階から本番環境への大規模デプロイを容易にする新サービス「Amazon Bedrock AgentCore」を発表した。このサービスはモジュール化された構成で、多様なAIフレームワークやモデルに対応する。筆者は試用し、設定の複雑さやデバッグの課題に直面しつつも、AIエージェントの運用を効率化する可能性を実感した。

ITニュース解説

現代のソフトウェア開発において、人工知能(AI)の活用はますます重要になっている。特に、AIエージェントと呼ばれる、自律的に判断しタスクを実行するAIは、その能力と応用範囲を広げている。しかし、多くの開発者は、AIエージェントの開発を始めたものの、実際に動く試作品(PoC、概念実証)を作る段階で止まってしまうという課題に直面していた。PoCから、誰もが利用できる安定した本番環境へとデプロイし、さらに大規模に運用することは、多くの開発者にとって非常に困難で、まるで不可能であるかのように感じられていたのだ。

このような状況を解決するため、Amazon Web Services(AWS)は「Amazon Bedrock AgentCore」という新しいサービスをプレビュー公開した。これは、AIエージェントを開発者が大規模にデプロイし、運用できるようにすることを目指している。AgentCoreは、AWSが長年培ってきた、柔軟でスケーラブルなインフラストラクチャと、厳格なセキュリティ管理の理想をAIエージェントの世界にもたらすものだ。

Amazon Bedrock AgentCoreには、他のAWSサービスとは一線を画す、いくつかの特徴がある。その一つは、その「モジュール性」である。まるでレゴブロックのように、さまざまな機能を持つコンポーネントが用意されており、開発者は自分の目的に合わせて必要なものだけを選び、組み合わせて利用できる。また、これらのコンポーネントは単独で使うことも可能だ。この柔軟性により、将来的に要件が変わった場合でも、容易に対応できるよう設計されている。

もう一つの重要な特徴は、AgentCoreが特定のAIモデルやエージェントフレームワークに縛られないことだ。つまり、開発者はAWSの提供するAmazon Bedrockのモデルだけでなく、Anthropic社のClaudeのような外部のモデルや、Strands Agents、Crew AI、LangGraphといったオープンソースのエージェントフレームワークも自由に選択して利用できる。これにより、開発者は既存の知識やツールを活かしながら、AgentCoreの恩恵を受けられる。

現在、AgentCoreはプレビュー版として、以下の7つの主要なコンポーネントを提供している。 AgentCore Runtimeは、開発者が作成したAIエージェントとその関連ツールをデプロイし、必要に応じて自動的に規模を調整(スケーリング)するための安全な実行環境を提供する。これはサーバーレスで動作するため、サーバーの管理について心配する必要がない。また、どのようなオープンソースフレームワーク、通信プロトコル、AIモデルを使ってもデプロイできる柔軟性を持つ。 AgentCore Identityは、エージェントが安全に認証され、適切なリソースにアクセスできるための機能を提供する。既存の認証システムとも連携できるため、ユーザー情報の移行や認証フローの再構築が不要になる。 AgentCore Memoryは、エージェントが会話の内容を一時的に記憶する短期記憶と、複数のエージェントやセッション間で共有できる長期記憶の両方をサポートする。これにより、より自然で継続的な対話が可能となる。 AgentCore Code Interpreterは、エージェントがコードを安全に実行するための機能だ。分離されたサンドボックス環境でコードを実行するため、セキュリティが保たれる。よく使われるフレームワークとの統合もスムーズに行える。 AgentCore Browserは、AIエージェントがウェブサイトにアクセスし、情報を収集したり操作したりするための高速かつ安全なクラウドベースのブラウザ実行環境を提供する。これにより、エージェントはインターネット上の多様な情報源を利用できるようになる。 AgentCore Gatewayは、エージェントがさまざまなツールを発見し、利用するための安全な経路を提供する。既存のAPIやAWS Lambda関数などのサービスを、エージェントが使える形に簡単に変換できる。 AgentCore Observabilityは、開発者が本番環境で稼働しているエージェントのパフォーマンスを監視し、問題が発生した際に原因を特定(デバッグ)するための機能だ。統一されたダッシュボードを通じて、エージェントの各ステップの詳細な動作を可視化できる。OpenTelemetryという標準的な方式にも対応しており、高度な監視が可能になる。

これらのコンポーネントを実際に体験するため、筆者はAgentCore Runtimeを試した。初めて触れるサービスであったため、まずはAWSが提供する公式のサンプルコード集(AWS Samples GitHub)から学習を始めた。そこで、「AgentCore Runtimeでエージェントをホスティングする」という最初のオプションを選択した。筆者は普段からStrands Agentsというフレームワークを使い、Anthropic社のAIモデル(Claude)を動かしていたため、それに近い形で、AWSアカウント内の情報を取得するエージェントを作成することにした。具体的には、AWSのVPC(Virtual Private Cloud)の数を問い合わせるようなエージェントだ。

エージェントをAgentCore Runtimeで動作させるには、いくつかの準備が必要だった。まず、Pythonコード内でbedrock_agentcore.runtimeからBedrockAgentCoreAppをインポートする。次に、app = BedrockAgentCoreApp()というコードでアプリケーションを初期化する。エージェントの処理を開始する関数には、@app.entrypointという特別な目印(デコレータ)を付ける。そして、エージェントの実行はapp.run()というコードでAgentCore Runtimeに任せる形にする。これにより、AgentCoreがエージェントの実行環境やスケーリングを管理してくれる。

エージェントのデプロイには二つの方法があった。一つは手動で行う方法で、Dockerなどのコンテナ技術に関する知識が必要となるため、より多くの手間がかかる。もう一つは、AgentCoreスターターツールキットというコマンドラインツールを使う方法で、こちらはデプロイの多くの手順を自動化してくれるため、より簡単だ。筆者は後者のスターターツールキットを選んだ。agentcore configure -e agent.pyというコマンドでエージェントの設定を行い、その後agentcore launchというコマンドを実行するだけで、エージェントがRuntimeにデプロイされた。デプロイが成功すると、ターミナルに成功メッセージが表示される。

デプロイされたエージェントを動かすには、agentcore invoke '{"prompt": "how many VPCs do I have in us-west-2?"}'のように、agentcore invokeコマンドを使って指示(プロンプト)を送った。このエージェントは、筆者のAWSアカウントにアクセスしてVPCの数を調べ、その結果をターミナルに表示してくれた。これにより、エージェントがAgentCore Runtime上で正常に動作していることを確認できた。

しかし、初めてAgentCoreを利用する上でいくつかの課題にも直面した。その一つは、提供されているサンプルノートブックに、エージェントの監視機能であるCloudWatch Transaction Searchを有効にするという、重要な設定が記載されていなかったことだ。この設定は、エージェントを正しく呼び出すために必須であり、有効にしないと原因不明の呼び出しエラーが発生し、デバッグに時間を要した。

また、筆者のエージェントがAWSのEC2サービス(仮想サーバー)を操作するために、特別なIAM(Identity and Access Management)権限が必要となった。IAM権限とは、誰がどのAWSリソースにアクセスできるかを制御する仕組みである。AgentCoreがエージェントを実行するために使用するIAM実行ロールを見つけて、その権限を編集するのが非常に難しかった。この実行ロールは、IAMのAWSコンソールで「agentcore」と検索するか、設定時に生成される隠しyamlファイルの中から探すか、AgentCoreのAWSコンソールをたどるか、という複数の方法でしか見つけられなかった。

全体的に見て、一度正しくセットアップが完了すれば、AgentCore Runtimeはスムーズに動作し、スターターツールキットも非常に有用だと感じた。しかし、初期設定の段階では、多くの開発者がつまずきやすい落とし穴がいくつかあり、提供されているサンプルコードやドキュメントには、これらの一般的な問題点を避けるための改善の余地があると感じた。

今後、筆者はAgentCoreの他のコンポーネント、例えばMemoryやGatewayといった機能についても詳しく探求していく予定だ。Amazon Bedrock AgentCoreは、AIエージェントの開発と運用を劇的に変える可能性を秘めており、今後の進化が期待される。

関連コンテンツ

関連IT用語