方法介绍
count_atomic 用于统计 L1 原子记忆笔记的数量,仅返回满足条件的笔记总数,不返回笔记列表本身,适合面板展示、用量统计等场景。功能说明如下:统计作用域:
team_id、agent_id、user_id 由构造 MemoryClient 时必填,三者共同确定统计范围;task_id 可选,传入后进一步收敛到指定任务。过滤条件:与
query_atomic 使用相同的过滤条件(type / session_id / time_start / time_end)。如需跨所有会话聚合统计,可通过 with_isolation(session_id=None) 创建新的隔离上下文后调用本方法。导入
from tencentdb_agent_memory.v3 import MemoryClient
方法签名
def count_atomic(self,*,type: Optional[str] = None,time_start: Optional[str] = None,time_end: Optional[str] = None,session_id: Optional[str] = None,) -> Dict[str, Any]
使用示例
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']} 条笔记")# 跨会话统计笔记数(需通过 with_isolation 创建隔离上下文)cross = client.with_isolation(session_id=None).count_atomic()print(f"所有会话共 {cross['total']} 条笔记")
请求参数
参数名 | 类型 | 必填 | 描述说明 |
type | str | 否 | 记忆类型: episodic / persona / instruction |
time_start | str | 否 | 统计起始时间(暂未生效),当前可传入但服务端未校验 ISO 8601 格式,传时间范围暂不会影响统计结果 |
time_end | str | 否 | 统计截止时间(暂未生效),当前可传入但服务端未校验 ISO 8601 格式,传时间范围暂不会影响统计结果 |
session_id | str | 否 | 指定要统计的会话 ID。不传时默认使用初始化客户端时绑定的值;如需跨所有会话聚合统计,请通过 with_isolation(session_id=None) 创建新隔离上下文 |
响应示例
{"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 | 构造参数缺失 | 确保构造时传入必填归属参数 |