资讯动态

memsearch无缝接入LangChain/LangGraph/LlamaIndex/CrewAI:RAG记忆管道集成实战清单

发布时间:2026/10/2 17:27:11 来源:尧图企业网站定制
memsearch无缝接入LangChain/LangGraph/LlamaIndex/CrewAIRAG记忆管道集成实战清单【免费下载链接】memsearchA persistent, unified memory layer for all your AI agents (e.g. Claude Code, Codex, DSH), backed by Markdown and Milvus.项目地址: https://gitcode.com/gh_mirrors/mem/memsearchmemsearch 是一个由 Markdown Milvus 驱动的持久化语义记忆层让 LangChain、LangGraph、LlamaIndex、CrewAI 四大 AI 框架都能以极低成本获得会记住的 RAG 记忆管道。只需几行 Python 代码memsearch 的混合检索向量 BM25 RRF 重排即可替换掉传统 RAG 中脆弱的关键词检索把你的 Agent 从金鱼记忆升级为有长期记忆的团队大脑 为什么 RAG 管道需要一个记忆层传统 RAG 的典型痛点每次对话都从零开始检索Agent 不记得上一轮聊过什么团队知识散落在聊天记录里无法沉淀。memsearch 的思路是Markdown 是唯一真相源— 记忆就是可读、可 git 管理的.md文件随时可人工编辑Milvus 只是可随时重建的影子索引零厂商锁定混合检索— 稠密向量 BM25 稀疏检索 RRF 融合重排召回率显著优于纯向量检索增量索引— SHA-256 内容哈希去重未变化的片段永不重复嵌入文件监视器实时同步渐进式召回— 三层披露先给摘要片段 → 展开完整章节 → 回溯原始会话架构细节可参考 docs/architecture.md核心引擎源码在 src/memsearch/core.py。一分钟上手安装与最小化配置memsearch 是一个纯 Python 库天然适配任何框架。推荐用本地 ONNX 嵌入免费、无需 API Keyuv tool install memsearch[onnx] # 或 pip install memsearch[onnx]from memsearch import MemSearch mem MemSearch(paths[./memory/]) # 指向你的 Markdown 记忆目录 await mem.index() # 增量索引所有 .md 文件 results await mem.search(Redis caching, top_k3) # 混合语义检索就这三行你的 RAG 管道已经拥有了跨会话的记忆能力。完整参数说明见 docs/python-api.md。LangChain 集成把 memsearch 变成标准 Retriever核心思路用BaseRetriever包装MemSearch即可插进任意 LangChain 链或 Agent。官方文档中已有现成模式见 docs/integrations.mdfrom langchain_core.retrievers import BaseRetriever class MemSearchRetriever(BaseRetriever): mem: MemSearch top_k: int 5 def _get_relevant_documents(self, query: str, **kwargs): results asyncio.run(self.mem.search(query, top_kself.top_k)) return [ Document(page_contentr[content], metadata{source: r[source], score: r[score]}) for r in results ]之后用 LCEL 一行管道就能组装成完整 RAG 链{context: retriever | format_docs} | prompt | llm | StrOutputParser()。检索质量提升的实测数据见下图memsearch 检索管道在重排阶段的召回对比LangGraph 集成封装为搜索工具交给 ReAct Agent 自主决策相比固定链路的 RAG 链LangGraph 的玩法是让 Agent自己决定什么时候查记忆。官方模式见 docs/integrations.md只需两步用tool装饰器把mem.search包成一个search_memory工具传给create_react_agent(llm, [search_memory])其余全自动tool def search_memory(query: str) - str: Search the teams knowledge base for relevant information. results asyncio.run(mem.search(query, top_k3)) return \n\n.join(f[{r[source]}] {r[heading]}: {r[content][:300]} for r in results) agent create_react_agent(ChatOpenAI(modelgpt-5-mini), [search_memory])用户提问我们的前端负责人是谁、最近在做什么时Agent 会自主调用search_memory检索记忆再作答完全不需要手写检索逻辑。LlamaIndex 集成实现 BaseRetriever直连 QueryEngineLlamaIndex 用户可实现BaseRetriever并委托给 memsearch结果以NodeWithScore形式返回可直接喂给任意查询引擎见 docs/integrations.mdfrom llama_index.core.retrievers import BaseRetriever from llama_index.core.schema import NodeWithScore, TextNode, QueryBundle class MemSearchRetriever(BaseRetriever): def _retrieve(self, query_bundle: QueryBundle): results asyncio.run( self._mem.search(query_bundle.query_str, top_kself._top_k)) return [NodeWithScore(nodeTextNode(textr[content]), scorer[score]) for r in results] # 端到端 RAG 只需一行 query_engine RetrieverQueryEngine.from_args(retriever)适合作为 LlamaIndex 现有管道中知识检索一环的低成本替换原有的文档解析和切分工作全部由 memsearch 的标题感知分块器src/memsearch/chunker.py接管。CrewAI 集成注册为 Crew 工具多智能体共享同一记忆多智能体场景下把 memsearch 注册为 CrewAI 工具团队里每个 Agent 都能查同一份知识库见 docs/integrations.mdtool(search_memory) def search_memory(query: str) - str: Search the teams knowledge base for relevant information. ... researcher Agent(roleKnowledge Base Researcher, tools[search_memory]) crew Crew(agents[researcher], tasks[research_task]) crew.kickoff()配合pathscollection双隔离参数还能给不同用户/项目划分独立记忆空间方案详见 docs/python-api.md 的Per-User Memory Isolation一节。集成清单与最佳实践框架集成形态关键类/装饰器适用场景LangChainRetrieverBaseRetriever固定链路的 RAG 管道LangGraphTooltool ReAct Agent需自主决策检索时机的 AgentLlamaIndexRetrieverBaseRetrieverRetrieverQueryEngine替换现有管道检索环节CrewAICrew Tooltool(search_memory)多智能体共享团队记忆实战清单按顺序勾选即可跑通pip install memsearch[onnx]用本地 bge-m3 嵌入零 API Key 起步把记忆以 Markdown 形式放进./memory/运行mem.index()按上表选择框架集成模式包装一层 Retriever 或 Tool生产环境切换 Milvus 后端本地.db→ Milvus Server → Zilliz Cloud改一行milvus_uri即可需要更强检索质量时开启可选的远程重排src/memsearch/jev_reranker.py用mem.watch()启动文件监视器实现记忆文件变更自动再索引避坑提示⚠️切换嵌入提供方后记得mem.index(forceTrue)强制重建索引search是异步方法在同步框架里用asyncio.run(...)桥接即可多个 Agent 共用同一 Milvus 时用不同collection名称隔离避免记忆串库总结一套记忆引擎四种框架玩法memsearch 用Markdown 为真相 Milvus 影子索引的设计把长期记忆变成了 RAG 管道的即插即用组件LangChain/LlamaIndex 用它做检索器LangGraph/CrewAI 用它做 Agent 工具。完整集成代码可对照 docs/integrations.mdCLI 与 API 参考分别在 docs/cli.md 和 docs/python-api.md — 今天装好你的 Agent 明天就有记忆了 【免费下载链接】memsearchA persistent, unified memory layer for all your AI agents (e.g. Claude Code, Codex, DSH), backed by Markdown and Milvus.项目地址: https://gitcode.com/gh_mirrors/mem/memsearch创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑