/memory_retrieval.endpoint请求头
Content-Typestring*application/jsonAcceptstring*application/jsonAuthorizationstring*<memory_retrieval.authorization>Body 参数
业务侧外接记忆 API 需要遵循的 HTTP JSON 协议
endpoint和authorization来自 CreateLive 请求中的memory_retrieval配置。- 外部服务应自行根据鉴权信息、endpoint 绑定关系或服务端上下文确定可检索范围。
- 请求体不包含
user_id、character_id、数据库过滤条件、embedding 向量或敏感信息开关。
memory_types 枚举
类型 | 含义 |
|---|---|
`preference` | 用户偏好,例如饮食、语言、工具、回答风格 |
`profile` | 用户基本信息,例如职业、所在地、角色 |
`history` | 过往对话事实、历史选择 |
`project` | 用户正在做的项目、长期任务 |
`constraint` | 用户明确限制,例如不要用 Python、预算有限 |
`relationship` | 人际关系、团队成员、联系人 |
`style` | 用户喜欢的输出风格、语气、格式 |
`other` | 其他不确定类型 |
响应示例
外部 API 应返回 JSON。推荐只返回 memories 数组;不需要返回 has_more。
memories[].summary:给模型看的核心内容,建议是短自然语言句子,不要返回大量原始聊天记录。memories[].type:记忆类型,建议与请求中的memory_types枚举保持一致。memories[].confidence:可信度,建议0..1。高置信度可自然使用;中置信度谨慎使用;低置信度应向用户确认,而不是直接当作事实。memories[].updated_at:更新时间,建议 RFC3339。新旧记忆冲突时优先参考较新记忆,但仍要结合当前用户输入。memories[].source:记忆来源,例如long_term_memory、explicit_user_statement。- 空结果:当结果为空时,这样返回“"memories": []”,不要返回纯文本(例如“没查到”)。
错误响应
外部 API 返回非 2xx 时,系统会把工具结果归一化为错误输出提交给模型。系统会限制响应体大小,过大响应会被视为 response_too_large。推荐仍返回结构化 JSON:
联调示例
live 服务内置一个无认证 fake provider,用于本地联调、演示和内置人设记忆检索。它不是正式用户长期记忆服务,不写入、不持久化真实用户记忆。
- HTTP 接口
该接口不需要 Authorization。如果经过网关聚合,路径可能是:
fake provider 不校验 live_id,即使不传也会固定返回角色 01 的内置记忆。它固定读取 live 服务配置中的 live.builtin_avatars["01"].memories,不根据 live_id 或 character_id 切换角色。内部规则:读取内置记忆 → 按 memory_types 过滤 → 按 query/time_hint 与 summary/keywords 简单命中排序 → 按 max_results 截断。
- Vidu s1自调用示例
创建校验仍要求 authorization 非空;fake provider 会忽略该 header。
- demo 验证流程(角色 01)
当前 fake persona memory demo 固定返回内置角色 character_id="01" 的可感知记忆。创建 live 时建议也使用角色 01,让形象与 fake API 返回的人设记忆一致。推荐方式:先直接调 fake memory API 让用户看到返回了哪些“记忆”,再在对话里问数字人相同或相关问题,让用户明显感知数字人用到了 API 返回的数据。
推荐演示问题速查:
先调用 API 的 query | 再问数字人的问题 | 预期回复中的明显记忆点 |
|---|---|---|
`用户喜欢灵绯怎么称呼自己` | `你还记得我喜欢你怎么叫我吗?` | `阿澈` |
`用户和灵绯之前约定的暗号` | `我们之前约定的暗号是什么?` | `月亮醒了` |
`用户喜欢灵绯用什么格式给建议` | `按我喜欢的方式,给我一个今晚睡前放松建议。` | 先给结论,再补充两三条理由 |
示例(昵称记忆),先调用 API:
API 返回:
然后用户问数字人“你还记得我喜欢你怎么叫我吗?”,预期回复自然出现 阿澈。
面向最终用户时,角色应自然表达“我记得……”,不要说“我调用了 API / 工具 / fake provider”。

