方法介绍
count_atomic 用于统计 L1 原子记忆笔记的数量,仅返回满足条件的笔记总数,不返回笔记列表本身,适合面板展示、用量统计等场景。功能说明如下:统计作用域:
team_id、agent_id、user_id 由构造 MemoryClient 时必填,三者共同确定统计范围;task_id 可选,传入后进一步收敛到指定任务。过滤条件:与
query_atomic 使用相同的过滤条件(type / session_id / time_start / time_end)。如需跨 session 聚合统计,请使用 client.with_isolation(session_id=None).count_atomic(...)。注意:调用时传入 session_id=None 不会清除构造时已绑定的值,必须通过 with_isolation 创建新隔离上下文来跨 session 聚合。导入
from tencentdb_agent_memory.v3 import MemoryClient
使用示例
from tencentdb_agent_memory.v3 import MemoryClientwith MemoryClient(endpoint="https://memory.tdai.tencentyun.com",api_key="sk-xxxxxxxxxxxxxxxx",service_id="tdai-mem-xxxxxxxx",team_id="team-abc123",agent_id="agt-xyz789",user_id="usr-456",) as client:result = client.count_atomic(type="persona",time_start="2026-07-01T00:00:00Z",time_end="2026-07-22T23:59:59Z",)print(f"共 {result['total']} 条笔记")# 跨 session 统计笔记数(需通过 with_isolation 创建隔离上下文)cross = client.with_isolation(session_id=None).count_atomic()print(f"所有会话共 {cross['total']} 条笔记")
请求参数
参数名 | 类型 | 必填 | 描述说明 |
type | str | 否 | 记忆类型: episodic / persona / instruction |
session_id | str | 否 | 覆盖默认 session_id。调用时传 None 不会清除构造值,需跨 session 统计请用 with_isolation(session_id=None) |
time_start | str | 否 | 统计起始时间(暂未生效),当前可传入但服务端未校验 ISO 8601 格式,传时间范围暂不会影响统计结果 |
time_end | str | 否 | 统计截止时间(暂未生效),当前可传入但服务端未校验 ISO 8601 格式,传时间范围暂不会影响统计结果 |
响应示例
{"total": 56}
Running Environment
Operating System: Ubuntu 24.04.3 LTS / x86_64
Runtime Version: Python 3.11.1
响应参数说明
参数名 | 类型 | 参数含义 |
total | int | 满足条件的笔记总数 |
错误码
错误码 | 触发场景 | 处理建议 |
401 | API Key 无效或过期 | 检查 api_key 配置 |
422 | 构造参数缺失 | 确保构造时传入必填归属参数 |