概述
·Mem0· 中的内存作提供 CRUD(创建、读取、更新、删除)功能以及高级搜索功能。这些作可通过多个接口进行:
- Python SDK:同步和异步客户端类
- REST API:所有作的 HTTP 端点
- 批量作 :高效批量处理多个存储器
- 搜索作 :向量相似性和基于元数据的筛选
所有内存作都支持元数据、筛选、版本控制和历史记录跟踪。
核心内存作
内存创建(添加作)
添加作从对话消息或文本输入中创建新记忆。系统从输入中提取事实并将其存储为结构化记忆。

内存检索作
内存检索包括访问存储内存的多种作:
获取单内存
通过唯一标识符检索特定内存。
获取所有回忆
检索多个内存,并支持可选的过滤和分页。

内存更新
更新作修改现有内存内容或元数据,同时保留历史记录。

内存删除
删除作支持单个内存删除和带筛选的批量删除。

搜索作
内存搜索提供向量相似性搜索与元数据过滤相结合,以实现精确的内存检索。
搜索实现

搜索参数
| 参数 | 描述 | 类型 |
|---|---|---|
| query | 搜索查询字符串 | 字符串 |
| user_id | 按用户标识符筛选 | 字符串 |
| agent_id | 按代理标识符筛选 | 字符串 |
| app_id | 按应用程序标识符筛选 | 字符串 |
| run_id | 按运行/会话标识符筛选 | 字符串 |
| metadata | 基于元数据的筛选 | 对象 |
| categories | 基于类别的筛选 | 数组 |
| top_k | 最大结果数 | 整数 |
###批量作
批处理作可在单个请求中高效处理多个内存作。
批量更新

批量删除

内存历史记录和元数据
历史跟踪
所有内存作都在基于 SQLite 的历史记录存储中进行跟踪,从而提供内存生命周期事件的完整审计跟踪。

元数据管理
内存支持丰富的元数据,用于分类、过滤和上下文保留。
| 元数据字段 | 描述 | 用法 |
|---|---|---|
| category | 内存类别分类 | 筛选和组织 |
| timestamp | 创建/修改时间 | 时态查询 |
| source | 记忆的起源 | 溯源 |
| immutable | 防止修改 | 数据完整性 |
| expiration_date | 自动删除日期 | 生命周期管理 |
客户端接口
同步客户端
MemoryClient 类使用 httpx 为 HTTP 请求提供同步内存作。

异步客户端
AsyncMemoryClient 类为非阻塞作提供异步/等待支持

REST API 端点
内存管理端点
| 端点 | 方法 | 操作 | 描述 |
|---|---|---|---|
| /v1/memories/ | GET | 列表 通过过滤检索所有记忆 | |
| /v1/memories/ | POST | 创造 添加新回忆 | |
| /v1/memories/ | DELETE | 全部删除 使用过滤器批量删除 | |
| /v1/memories/{id}/ | GET | 取回 获取特定内存 | |
| /v1/memories/{id}/ | PUT | 更新 修改现有内存 | |
| /v1/memories/{id}/ | DELETE | 删除 删除特定内存 | |
| /v1/memories/search/ | POST | 搜索 向量相似性搜索 | |
| /v1/memories/{id}/history/ | GET | 历史 内存更改历史 |
批量作端点
| 端点 | 方法 | 操作 | 描述 |
|---|---|---|---|
| /v1/batch/ | PUT | 批量更新 | 更新多个记忆 |
| /v1/batch/ | DELETE | 批量删除 | 删除多个记忆 |
与存储系统集成
内存作与工厂系统集成,支持多个存储后端:


1174

被折叠的 条评论
为什么被折叠?



