引入
大家好我是一颗米,欢迎来到 Mem0的专栏,Mem0 是一个强大的记忆管理系统,专门设计用于存储和检索对话式 AI 应用中的上下文信息。通过 Mem0,您可以轻松地为您的应用添加"记忆"功能,使 AI 能够记住并利用过去的对话内容,从而提供更加个性化和连贯的用户体验。本文档将指导您如何使用 Mem0 的核心功能,包括记忆的添加、检索以及基本配置。
代码示例
完整代码示例
from mem0 import MemoryClient
# 创建客户端实例
client = MemoryClient(
api_key="m0-kG0zZELfBHr8MW4mezm69o09ZlPJ5SGVsId23BeK"
)
# 定义消息列表
messages = [
{"role": "user", "content": "Hi, I'm Alex. I'm a vegetarian and I'm allergic to nuts."},
{"role": "assistant", "content": "Hello Alex! I've noted that you're a vegetarian and have a nut allergy. I'll keep this in mind for any food-related recommendations or discussions."}
]
# 添加记忆
client.add(messages, user_id="alex")
# 定义查询
query = "What can I cook for dinner tonight?"
# 搜索记忆
result = client.search(query, user_id="alex")
print(result) # 打印搜索结果
运行结果示例
[{
'id': '1711f4cf-e2de-4085-a94f-3bb3cf52a379',
'memory': 'Is a vegetarian',
'user_id': 'alex',
'metadata': None,
'categories': ['user_preferences', 'food'],
'immutable': False,
'created_at': '2025-03-19T04:20:41.725058-07:00',
'updated_at': '2025-03-19T04:20:41.725070-07:00',
'feedback': None,
'feedback_reason': None,
'score': 0.30164014110804493
}]
代码说明
主要组件
-
MemoryClient 初始化
- 使用 API key 创建客户端实例
- 当前版本仅支持基本的 API key 参数
-
消息定义
- 使用标准的消息格式
- 包含用户和助手的对话内容
- 使用
user_id
标识不同用户
-
记忆操作
add()
: 添加新的记忆search()
: 搜索相关记忆- 所有操作都需要指定
user_id
输出说明
- 搜索结果返回一个列表,包含相关的记忆信息
- 每条记忆包含以下主要字段:
id
: 记忆的唯一标识符memory
: 记忆的具体内容user_id
: 用户标识categories
: 记忆的分类标签score
: 与查询的相关度分数created_at
: 创建时间updated_at
: 更新时间
使用说明
- 确保已安装 mem0 库
pip install mem0
- 使用有效的 API key
- 按照示例代码添加和搜索记忆
注意事项
- API key 需要妥善保管,不要泄露
- 所有操作都需要指定
user_id
- 建议打印搜索结果以便查看返回内容
- 当前版本会显示关于 output_format 的警告信息,但不影响功能使用