检索用户记忆并渲染画像¶
使用 AI Studio SDK 以已知主体 ID 检索记忆,并为同一主体渲染画像。主体由调用方的业务系统确定,不一定等同于登录用户。
任务流程¶
使用业务系统提供的主体 ID 绑定记忆对象。
提交非空检索内容,读取该主体的记忆列表。
需要画像时,对同一主体提交渲染请求并读取返回文本。
准备¶
需要的内容 |
在本页中的作用 |
|---|---|
已绑定目标工作区的客户端上下文 |
确定记忆和画像操作的工作区。 |
业务系统提供的主体 ID |
固定检索和画像的主体范围。 |
非空检索内容 |
在该主体范围内查找记忆。 |
记忆和画像内容可能包含业务或个人数据。只查询当前业务场景允许访问的主体,避免将结果写入不受控日志。
检索记忆¶
返回列表是当前检索结果,不表示画像已更新或记忆已写入。
memory, err := workspace.ConsumerMemory(subjectID)
if err != nil {
return err
}
result, err := memory.Retrieve(ctx, query)
if err != nil {
return err
}
_ = result
memory = workspace.consumer_memory(subject_id)
result = memory.retrieve(query)
读取结果中的记忆条目,并按调用方的业务规则处理。空检索内容会在 SDK 侧被拒绝。
使用关键词或条件筛选¶
关键词检索要求非空关键词,结果数量可设为 0 到 100。结构化查询可设置 0 到 500 条的返回上限。两类查询都可按会话、记忆类型、信任等级、分支和额外元数据筛选。
额外元数据只接受扁平过滤结构;嵌套对象或不合法的键会在请求前被 SDK 拒绝。筛选条件不替代访问控制。
渲染画像¶
画像渲染继续使用同一主体。请求返回的是当前渲染结果,不表示记忆内容已经改变。
profile, err := memory.RenderProfile(ctx)
if err != nil {
return err
}
_ = profile
profile = memory.render_profile()
渲染响应包含当前主体的画像文本和令牌估算。如需最新结果,应在合适的业务时机重新查询或重新渲染。
限制¶
检索和画像渲染都是读取操作。不要把一次检索或渲染请求写成记忆已经写入、更新或持久化的证明。
最后更新于