基于 M-Flow 的记忆系统,提供 Karpathy 风格的 4 阶段记忆管理工作流。
M-Flow 是一个集成了 Cone Graph、向量搜索 (LanceDB) 和图数据库 (Kuzu) 的记忆框架。
from m_flow_memory import MFlowMemory
memory = MFlowMemory()
await memory.add("session content or knowledge point")
await memory.memorize() # 索引所有未处理的内容
# 全文搜索 (BM25)
results = await memory.search("query", mode="lexical")
# 向量搜索 (Cone Graph)
results = await memory.search("query", mode="episodic")
# 三元组搜索
results = await memory.search("query", mode="triplet")
HF_HUB_OFFLINE=1
LLM_PROVIDER="ollama"
LLM_MODEL="ollama/qwen2.5:14b-instruct-q8_0"
OLLAMA_BASE_URL="http://localhost:11434/v1"
LLM_ENDPOINT="http://localhost:11434/v1"
LLM_API_KEY="ollama"
EMBEDDING_PROVIDER="ollama"
EMBEDDING_MODEL="nomic-embed-text:latest"
EMBEDDING_ENDPOINT="http://localhost:11434/v1/embeddings"
EMBEDDING_DIMENSIONS=768
VECTOR_DB_PROVIDER=lancedb
DB_PROVIDER=sqlite
GRAPH_DATABASE_PROVIDER=kuzu
⚠️ 重要: LanceDB 必须使用 0.26.0(0.27.1 有 bug)
uv pip install lancedb==0.26.0
source | content | tags | timestampm-flow-memory/
├── SKILL.md # 本文件
├── scripts/
│ ├── __init__.py
│ ├── client.py # M-Flow Python 客户端封装
│ ├── distill.py # 记忆蒸馏
│ ├── query.py # 记忆查询
│ └── config.py # 配置
└── docs/
└── README.md # 详细文档
await memory.add("用户询问了 OpenClaw 的记忆系统架构")
# 混合搜索
results = await memory.search(
"OpenClaw memory system",
mode="episodic",
top_k=10
)
# 从会话中提取知识要点
knowledge_points = await memory.distill(session_transcript)
共 1 个版本