🟡 🤝 エージェント 2026年4月30日木曜日 · 2 分で読めます ·

AWS Bedrock AgentCore Memory:IAMアクセス制御を備えた名前空間レベルのエージェント長期記憶の3つのアーキテクチャパターン

編集イラスト:名前空間の区画とアクセスキーを持つ階層的なエージェントメモリ

AWSは2026年4月29日、Bedrock AgentCore Memoryサービス内のエージェント長期記憶組織化のための参照アーキテクチャパターンを公開しました。3つの主要な名前空間パターンが異なるユースケースをカバーします:設定と事実のためのActor-Scoped、会話要約のためのSession-Scoped、セッション間の経験一般化のためのEpisodic with Reflection Hierarchy。IAM条件キーにより名前空間レベルの厳格なアクセス制御が可能になります。

AWSは2026年4月29日、Bedrock AgentCore Memoryサービス内のエージェント長期記憶組織化のための参照アーキテクチャパターンを公開しました。Noor Randhawa、Akarsha Sehwag、Piradeep Kandasamyによる記事では、異なるユースケース向けの3つのパターンを紹介し、IAM条件キーが個別の名前空間レベルでアクセス制御を確保する方法を示しています。

3つの名前空間パターン

1. Actor-Scoped(セマンティクスと設定)

ユーザーの事実と設定は複数のセッションを通じて蓄積され、単一のactor識別子の下に統合されます。構造:

/actor/{actorId}/facts/
/actor/{actorId}/preferences/

典型的なユースケース:アプリケーションのユーザー設定、過去の決定、プロファイル記憶。

2. Session-Scoped(サマリー)

会話のサマリーは特定のインタラクションに紐付けられます。構造:

/actor/{actorId}/session/{sessionId}/summary/

利点:無関係な会話間でコンテキストを混在させることなく、同一セッション内の後続ターンのトークン消費を削減します。

3. Episodic with Reflection Hierarchy

エピソードは個々のセッション内の推論トレースを記録し、リフレクション親名前空間レベルでセッション間の学習を一般化します。これはユーザーセッションを通じて「経験から学ぶ」必要があるエージェントにとって最も洗練されたパターンです。

2つの重要なAPIメソッド

AgentCore Memoryは以下を区別します:

  • RetrieveMemoryRecords — エージェントのインタラクション中にコンテキスト関連記憶のセマンティック検索
  • ListMemoryRecords — 表示、監査、一括操作のための特定名前空間内の記憶列挙

区別は重要です:前者はベクター検索を行い、後者は通常のリストです。監査ツール、GDPRスタイルの削除、ユーザーによる記憶管理に使用されます。

名前空間レベルのIAMアクセス制御

エンタープライズにとって最も重要な部分は、厳格なアクセス制御のためのIAM条件キーです:

  • bedrock-agentcore:namespaceStringEquals — 完全一致アクセス
  • bedrock-agentcore:namespacePathStringLike — 階層的な取得

動態スコーピングは${aws:PrincipalTag/userId}などのプリンシパルタグを使用してユーザー分離を実現します — あるユーザーのために動作するエージェントが誤って別のユーザーの記憶を取得することはありません。

なぜ重要なのか?

記憶は現在、本番マルチエージェントシステムの最も弱い部分です — 小さすぎる(静的プロンプトコンテキスト)か、大きすぎる(ベクターストア全体がユーザー間で漏洩する)かのどちらかです。AgentCore Memoryの名前空間パターンにより、AWSの顧客は監査可能、IAM管理可能、actor別に統合可能な規約的な構造を得ることができます。

これはAWSが4月29日に公開したAgentCore MCPプロキシの記事(エージェントとツールの間のガバナンス層)と連動しており、AWSはエンタープライズエージェントスタックをレイヤーごとに構築しています:アイデンティティ、メモリ、ツールアクセス、監査。

よくある質問

3つの名前空間パターンとは何ですか?
1)Actor-Scoped(`/actor/{actorId}/facts/`と`/preferences/`) — セッションを通じて統合される事実と設定。2)Session-Scoped(`/actor/{actorId}/session/{sessionId}/summary/`) — 特定のインタラクションのサマリー。3)Episodic with Reflection Hierarchy — エピソードがセッション内の推論トレースを記録し、リフレクションが親名前空間レベルでセッション間の学習を一般化します。
AgentCore Memoryはセマンティック検索と列挙をどう区別しますか?
2つのAPIメソッド:`RetrieveMemoryRecords`はエージェントのインタラクション中にコンテキスト関連記憶のセマンティック検索を行います。`ListMemoryRecords`は表示、監査、一括操作のために特定の名前空間内の記憶を列挙します。
アクセスはどのように制御しますか?
IAM条件キー:`bedrock-agentcore:namespace`と`StringEquals`で完全一致アクセス、`bedrock-agentcore:namespacePath`と`StringLike`で階層的な取得。動態スコーピングは`${aws:PrincipalTag/userId}`などのプリンシパルタグを使用してユーザー分離を実現します。
🤖

この記事はAIにより一次情報源から生成されました。