SuperAPI AI 工具集

bedrock-agentcore-memory

智能体与模型

查看项目

更新于 10-15 10:52

技能介绍

用途

Amazon Bedrock AgentCore Memory 为智能体提供持久化记忆与学习能力,使其能够在不同会话之间保留知识,从用户交互中学习,从而提供越来越个性化的体验。其目标是为智能体赋予跨会话的记忆与学习能力。

该能力采用基于能力的模式,包含两种记忆类型,并据资料所述经 AWS 于 2025 年 12 月验证。

主要能力与关键原则

  • 情节记忆(Episodic Memory):从对话中抽取的长期事实。
  • 短期记忆(Short-term Memory):原始的逐轮会话上下文。
  • 自动抽取(Automatic Extraction):通过后台反思过程创建情节。
  • 语义检索(Semantic Retrieval):上下文感知的记忆查找。
  • 按用户隔离(User-Scoped):记忆按用户/参与者隔离。
  • 隐私控制(Privacy Controls):细粒度的记忆管理。

资料列出的质量目标为:记忆检索延迟小于 100 毫秒;抽取准确率不低于 85%;存储效率方面对事实进行去重。

架构说明

资料给出的架构示意显示,智能体运行时中存在多个会话(Session 1、Session 2 直至 Session N),每个会话各有一份短期记忆;这些短期记忆向上汇聚到“反思引擎(Reflection Engine,后台进程)”,再产出情节记忆(长期存储),其中保存诸如“User prefers X”“Learned fact Y”“Historical event Z”等内容。

适用场景

资料建议在以下情况使用 bedrock-agentcore-memory:

  • 构建能够记住用户偏好的智能体;
  • 跨会话创建个性化体验;
  • 实现从过往交互中学习;
  • 为长时间运行的工作流维持上下文;
  • 构建随时间改进的智能体。

不建议在以下情况使用:

  • 简单的无状态问答(无需持久化);
  • 短暂的单一会话交互;
  • 无法存储用户数据(合规)的场景。

前提条件

必需:

  • 已部署 AgentCore 智能体;
  • 已创建记忆资源;
  • 具备记忆操作的 IAM 权限。

建议:

  • 制定用户/参与者标识策略;
  • 定义数据保留政策;
  • 记录隐私要求。

使用方式与操作

资料提供了五类操作及对应代码示例:

  1. 创建记忆资源:通过 boto3 的 bedrock-agentcore-control 客户端调用 create_memory,可配置情节记忆(enabled、reflectionConfig 中的 reflectionInterval 如 SESSION_END 或 PERIODIC、extractionModel、extractionInstructions、periodicIntervalMinutes)与短期记忆(enabled、maxTurns、contextWindowStrategy 如 SLIDING),并通过 retentionConfig 设置 episodicRetentionDays 与 shortTermRetentionDays;随后可使用 MemoryCreated waiter 等待资源就绪。资料还给出旅行智能体(长期记住偏好)与支持智能体(聚焦问题历史)两种配置示例。

  2. 存储记忆事件:通过 bedrock-agentcore 客户端调用 create_event,传入 memoryId、actorId、sessionId 以及包含 eventTime、traceId、userMessage/assistantMessage/toolCall 的事件体;资料也说明了批量事件存储的做法,并注明批量 API 可能可用,需查阅最新文档。

  3. 检索记忆:调用 retrieve_memory_records,使用 retrievalQuery 的 semanticQuery 与 maxRecords 进行语义查询;或用 paginator 调用 list_memory_records 列出某用户的全部情节记忆;资料还给出根据当前上下文提取主题、逐主题检索、去重并按 relevanceScore 排序的上下文感知检索示例函数。

  4. 手动记忆管理:调用 batch_create_memory_records 手动创建记忆记录(含 content 与 metadata,如 source、confidence、category、priority);调用 batch_update_memory_records 更新记录;调用 delete_memory_record 或 batch_delete_memory_records 删除记录,资料提及可用于 GDPR 被遗忘权场景。

  5. 记忆抽取作业:调用 start_memory_extraction_job 手动触发反思/抽取(可指定 actorIds 与 sessionFilter 的时间范围),随后通过 list_memory_extraction_jobs 轮询作业状态,直到 COMPLETED 或 FAILED,并可在完成后查看 recordsCreated;此外可用 control.update_memory 更新记忆配置中的 extractionInstructions,自定义从对话中抽取或禁止抽取的内容。

与智能体集成

资料给出“具备记忆意识的智能体”模式:在入口函数中先按 user_id 和用户消息检索相关记忆并格式化为上下文,将其拼入增强提示词,再运行 Agent(示例模型为 anthropic.claude-sonnet-4-20250514-v1:0),最后回存交互以供未来学习,并返回响应。

限制与未提供信息

资料未提供收费、价格、具体平台可用区域、性能实测数据或使用步骤之外的实施细节;上述质量目标与原则来自资料所述内容。文中标注的行内注释与示例代码保持原样,未作改动。