npx skills add https://github.com/mem0ai/mem0 --skill mem0Mem0 是一个面向 AI 应用程序的托管记忆层。它通过 API 存储、检索和管理用户记忆——无需部署基础设施。
Python:
pip install mem0ai
export MEM0_API_KEY="m0-your-api-key"
TypeScript/JavaScript:
npm install mem0ai
export MEM0_API_KEY="m0-your-api-key"
获取 API 密钥请访问:https://app.mem0.ai/dashboard/api-keys
Python:
from mem0 import MemoryClient
client = MemoryClient(api_key="m0-xxx")
TypeScript:
import MemoryClient from 'mem0ai';
const client = new MemoryClient({ apiKey: 'm0-xxx' });
对于异步 Python,请使用 AsyncMemoryClient。
广告位招租
在这里展示您的产品或服务
触达数万 AI 开发者,精准高效
每个 Mem0 集成遵循相同的模式:检索 → 生成 → 存储。
messages = [
{"role": "user", "content": "I'm a vegetarian and allergic to nuts."},
{"role": "assistant", "content": "Got it! I'll remember that."}
]
client.add(messages, user_id="alice")
results = client.search("dietary preferences", user_id="alice")
for mem in results.get("results", []):
print(mem["memory"])
all_memories = client.get_all(user_id="alice")
client.update("memory-uuid", text="Updated: vegetarian, nut allergy, prefers organic")
client.delete("memory-uuid")
client.delete_all(user_id="alice") # 删除用户的所有记忆
from mem0 import MemoryClient
from openai import OpenAI
mem0 = MemoryClient()
openai = OpenAI()
def chat(user_input: str, user_id: str) -> str:
# 1. 检索相关记忆
memories = mem0.search(user_input, user_id=user_id)
context = "\n".join([m["memory"] for m in memories.get("results", [])])
# 2. 结合记忆上下文生成回复
response = openai.chat.completions.create(
model="gpt-4.1-nano-2025-04-14",
messages=[
{"role": "system", "content": f"用户上下文:\n{context}"},
{"role": "user", "content": user_input},
]
)
reply = response.choices[0].message.content
# 3. 存储交互以供未来上下文使用
mem0.add(
[{"role": "user", "content": user_input}, {"role": "assistant", "content": reply}],
user_id=user_id
)
return reply
add() 之后等待 2-3 秒再搜索。同时确保 user_id 完全匹配(区分大小写)。OR 过滤器,或者分别查询。infer=True(默认)和 infer=False。坚持使用一种模式。from mem0 import MemoryClient(异步则使用 AsyncMemoryClient)。不要使用 from mem0 import Memory。client.history(memory_id) 来追踪随时间的变化。要获取参考资料之外的最新文档,请使用文档搜索工具:
python scripts/mem0_doc_search.py --query "topic"
python scripts/mem0_doc_search.py --page "/platform/features/graph-memory"
python scripts/mem0_doc_search.py --index
无需 API 密钥——直接搜索 docs.mem0.ai。
按需加载这些文件以获取更详细信息:
| 主题 | 文件 |
|---|---|
| 快速入门 (Python, TS, cURL) | references/quickstart.md |
| SDK 指南 (所有方法,两种语言) | references/sdk-guide.md |
| API 参考 (端点、过滤器、对象模式) | references/api-reference.md |
| 架构 (流水线、生命周期、作用域、性能) | references/architecture.md |
| 平台功能 (检索、图、分类、MCP 等) | references/features.md |
| 框架集成 (LangChain, CrewAI, Vercel AI 等) | references/integration-patterns.md |
| 用例与示例 (包含代码的实际模式) | references/use-cases.md |
每周安装数
90
代码仓库
GitHub 星标数
50.8K
首次出现
12 天前
安全审计
安装于
codex87
gemini-cli87
kimi-cli87
amp87
opencode87
cursor87
Mem0 is a managed memory layer for AI applications. It stores, retrieves, and manages user memories via API — no infrastructure to deploy.
Python:
pip install mem0ai
export MEM0_API_KEY="m0-your-api-key"
TypeScript/JavaScript:
npm install mem0ai
export MEM0_API_KEY="m0-your-api-key"
Get an API key at: https://app.mem0.ai/dashboard/api-keys
Python:
from mem0 import MemoryClient
client = MemoryClient(api_key="m0-xxx")
TypeScript:
import MemoryClient from 'mem0ai';
const client = new MemoryClient({ apiKey: 'm0-xxx' });
For async Python, use AsyncMemoryClient.
Every Mem0 integration follows the same pattern: retrieve → generate → store.
messages = [
{"role": "user", "content": "I'm a vegetarian and allergic to nuts."},
{"role": "assistant", "content": "Got it! I'll remember that."}
]
client.add(messages, user_id="alice")
results = client.search("dietary preferences", user_id="alice")
for mem in results.get("results", []):
print(mem["memory"])
all_memories = client.get_all(user_id="alice")
client.update("memory-uuid", text="Updated: vegetarian, nut allergy, prefers organic")
client.delete("memory-uuid")
client.delete_all(user_id="alice") # delete all for a user
from mem0 import MemoryClient
from openai import OpenAI
mem0 = MemoryClient()
openai = OpenAI()
def chat(user_input: str, user_id: str) -> str:
# 1. Retrieve relevant memories
memories = mem0.search(user_input, user_id=user_id)
context = "\n".join([m["memory"] for m in memories.get("results", [])])
# 2. Generate response with memory context
response = openai.chat.completions.create(
model="gpt-4.1-nano-2025-04-14",
messages=[
{"role": "system", "content": f"User context:\n{context}"},
{"role": "user", "content": user_input},
]
)
reply = response.choices[0].message.content
# 3. Store interaction for future context
mem0.add(
[{"role": "user", "content": user_input}, {"role": "assistant", "content": reply}],
user_id=user_id
)
return reply
add() before searching. Also verify user_id matches exactly (case-sensitive).OR instead, or query separately.infer=True (default) and infer=False for the same data. Stick to one mode.from mem0 import MemoryClient (or AsyncMemoryClient for async). Do not use from mem0 import Memory.For the latest docs beyond what's in the references, use the doc search tool:
python scripts/mem0_doc_search.py --query "topic"
python scripts/mem0_doc_search.py --page "/platform/features/graph-memory"
python scripts/mem0_doc_search.py --index
No API key needed — searches docs.mem0.ai directly.
Load these on demand for deeper detail:
| Topic | File |
|---|---|
| Quickstart (Python, TS, cURL) | references/quickstart.md |
| SDK guide (all methods, both languages) | references/sdk-guide.md |
| API reference (endpoints, filters, object schema) | references/api-reference.md |
| Architecture (pipeline, lifecycle, scoping, performance) | references/architecture.md |
| Platform features (retrieval, graph, categories, MCP, etc.) | references/features.md |
| Framework integrations (LangChain, CrewAI, Vercel AI, etc.) | references/integration-patterns.md |
| Use cases & examples (real-world patterns with code) | references/use-cases.md |
Weekly Installs
90
Repository
GitHub Stars
50.8K
First Seen
12 days ago
Security Audits
Gen Agent Trust HubPassSocketPassSnykWarn
Installed on
codex87
gemini-cli87
kimi-cli87
amp87
opencode87
cursor87
agent-browser 浏览器自动化工具 - Vercel Labs 命令行网页操作与测试
163,300 周安装
client.history(memory_id)