接口介绍
本接口(/memory/v1/record/query)用于查询指定条件下的长期记忆。
按用户查询:通过 actor_id 查询特定用户的记忆。
按会话查询:通过 session_id 查询特定会话产生的记忆。
灵活的条件查询:支持按时间范围、记忆策略类型、记忆 ID 等多字段组合筛选,并提供丰富的比较操作符和集合操作符实现条件查询。
分页查询:使用 limit + offset 实现大量记录的分批加载。
Method 与 URL
POST https://{服务访问地址}/memory/v1/record/query使用示例
curl -i -k -X POST \\-H 'Content-Type: application/json' \\-H 'Authorization: Bearer ******************************' \\-H "x-tdai-service-id: tdai-mem-8i8t****" \\https://memory.tdai.tencentyun.com/memory/v1/record/query \\-d '{"memory_id": "tdai-mem-8i8t****","where": {"activity_start_time": {"$gte": "2025-12-01T00:00:00Z","$lte": "2025-12-01T23:59:59Z"},"record_id": {"$in": ["mem_42fd5d10********", "mem_2804a35a********"]},"type": {"$in": ["persona", "episodic"]}},"limit": 3,"offset": 0}'
请求参数
参数 | 是否必选 | 参数含义 | 配置方法及要求 |
memory_id | 是 | 指定查询 Record 所关联的 Memory ID。 | |
actor_id | 否 | 指定查询 Record 用户的唯一标识 ID。 | 数据类型:String。 长度限制:[1,128]。 字符规则:任意字符。 |
session_id | 否 | 指定查询 Record 的 Session ID。 | |
where | 否 | 指定 Record 查询条件。通过键值对定义字段匹配规则,支持使用比较操作符和集合操作符,返回符合满足匹配规则的 Record。 | 支持设置查询条件的字段,如下所示: created_at: Record 创建时间,支持 ISO 8601 格式。 updated_at:Record 最后更新时间,支持 ISO 8601 格式。 record_id:Record 唯一标识 ID,用于精确匹配特定 Record。 type:Record 类型,默认采用 persona 和 episodic 策略配置。 persona:画像记忆。持久化存储用户画像、社交关系与偏好特征,支撑跨会话的个性化服务与身份一致性。 episodic:事件记忆。自动提取并时序化存储用户行为、决策与经历,构建交互编年史。支撑对话里程碑回溯,实现基于历史事实的主动服务。 支持用户自定义其他策略方案。登录 Memory 智能体控制台,在 Memory 详情页面的长期记忆策略区域,复制自定义的策略。具体信息,请参见 查看 Memory。 activity_start_time:活动/事件的开始时间,表示与记录内容相关活动开始的时间戳。支持 ISO 8601 格式。 activity_end_time:活动/事件的结束时间,表示与记录内容相关活动结束的时间戳。支持 ISO 8601 格式。 支持使用的操作符,如下所示: 比较操作符:$eq(等于,默认可省略)、$ne(不等于)、$gt(大于)、$gte(大于等于)、$lt(小于)、$lte(小于等于)。 集合操作符:$in(包含在数组中)、$nin(不包含在数组中)。 |
limit | 否 | 指定返回的 Record 数量。 | 数据类型:integer,正整数。 取值范围:1~1000。 默认值:10。 |
offset | 否 | 指定返回结果列表的起始偏移量。 | 数据类型:integer,正整数。 默认值:0,表示从数据集的第一条记录开始返回。 示例:offset=20表示跳过前20条记录,从第21条开始返回。 |
响应消息
执行成功,输出如下信息。
{"code": 0,"message": "success","data": {"memory_id": "tdai-mem-228j****","records": [{"actor_id": "user-service-test","session_id": "session-e53171ad********","record_id": "mem_2804a35a********","record_content": "用户于2025年12月1日提出计划下周前往杭州进行为期3天的旅行,表达了对安静环境和美食的兴趣,并进一步细化需求:希望住宿带健身房、对花生严重过敏、女朋友喜欢现代艺术。AI据此为其定制了一条包含美术馆与艺术展览、避开人群、注重自然与饮食的个性化行程方案。","type": "episodic","scene_name": "我(AI)在和用户做杭州三日旅行规划,包含安静景点、地道美食、健身房酒店及现代艺术体验","activity_start_time": "2025-12-01T10:04:05Z","activity_end_time": "2025-12-01T10:07:05Z","event_ids": ["event-56c31d95********","event-08c68d96********"],"created_at": "2026-02-03T03:08:14.839000Z","updated_at": "2026-02-03T03:08:14.839000Z"}],"total_count": 1}}
参数名(一级) | 参数名(二级) | 参数名(三级) | 参数含义 |
data | memory_id | - | 记忆 ID。 |
| records | actor_id | 用户 ID。 |
| | session_id | Session 的唯一标识 ID。 |
| | record_id | 长期记忆 ID,唯一标识该记录的标识符。 |
| | record_content | 记录内容,描述 Record 记忆的实际信息。 |
| | type | 生成记录的策略名称。默认支持如下策略,可自定义其他策略。 persona:画像记忆。持久化存储用户画像、社交关系与偏好特征,支撑跨会话的个性化服务与身份一致性。 episodic:事件记忆。自动提取并时序化存储用户行为、决策与经历,构建交互编年史。支撑对话里程碑回溯,实现基于历史事实的主动服务。 |
| | scene_name | 情景概述,用于描述记忆产生时的对话场景或交互上下文。 |
| | activity_start_time | 活动/事件的开始时间,表示与记录内容相关活动开始的时间戳。 |
| | activity_end_time | 活动/事件的结束时间,表示与记录内容相关活动结束的时间戳。 |
| | event_ids | 生成 Record 的事件 ID 列表。 |
| | created_at | Record 创建时间。 |
| | updated_at | Record 最后一次更新时间。 |
| total_count | - | 符合查询条件的总 Record 数量。 |