私有知识库实战:查询改写、混合检索与重排优化 RAG
本文是私有知识库构建系列的第 3 篇,旨在解决基础 RAG 系统在短问题召回、关键词匹配及结果排序上的缺陷。作者详细介绍了通过 LLM 进行查询改写以补全上下文,利用 PostgreSQL 结合 Jieba 实现混合检索(向量+BM25),以及使用 RRF 算法融合检索结果,从而显著提升知识库的日常可用性。
本文是私有知识库构建系列的第 3 篇,旨在解决基础 RAG 系统在短问题召回、关键词匹配及结果排序上的缺陷。作者详细介绍了通过 LLM 进行查询改写以补全上下文,利用 PostgreSQL 结合 Jieba 实现混合检索(向量+BM25),以及使用 RRF 算法融合检索结果,从而显著提升知识库的日常可用性。
本文总结了HN上关于RAG系统实战的讨论,核心结论是检索质量主要由重排和查询改写等流程环节决定,而非模型选型。文章整理了微软Pamela Fox和Usul AI作者Abdellatif等一线工程师的学习清单,涵盖生产级RAG的ROI排序、检索理论、开源模板、模型评测、存储基础设施及产品案例,并指出query generation和reranking是性价比最高的优化点,chunking最耗时。
本文是 Agent 高频面试题详解系列第一篇,聚焦 RAG(检索增强生成)链路。文章基于近两个月牛客网 82 场面试的统计,指出 RAG 是最常被追问的题目。内容先给出 RAG 整体架构图,解释为什么需要 RAG 及其与长上下文、grep、微调、工具调用、记忆等方案的边界;再沿离线、在线两条线逐环讲解:离线部分涵盖文档解析、切分策略、embedding 向量化、HNSW/IVF 索引原理;在线部分讲解问题改写、BM25 与向量多路召回、RRF 融合、交叉编码器重排等环节。每个环节均附上面试常见追问,并提供复习优先级参考。
文章结合为大型国企交付几十万份文档知识库项目的实战经验,指出将文档导入知识库只是最容易的一步,真正难点在于知识分散在OA、ERP、CRM等多个系统中、文档质量参差不齐、版本与权限管理复杂、以及上线后的持续运营。作者提出企业真正需要的不是一个'AI知识仓库',而是一条具备知识工程能力的企业知识供应链:通过Connector持续接入知识,经解析、清洗、结构化等知识工程加工后准入,并以检索前权限过滤保障安全,最终在Agent时代构建企业上下文层,让正确的知识在正确的时间以正确的权限交给AI。
本文是 Agent 记忆系列文章的第二篇,探讨知识的存储位置与表示形式。作者将记忆拆解为表示与存储、提取、检索、维护四个环节,重点讨论第一个问题:知识存放在哪里。文章指出表示(知识形态)与物理存储是两个独立决策,文件系统因编程代理擅长 bash 而成为极佳起点。作者提出应区分“产物”(发生过的记录)与“知识”(当前应相信的事实),知识应像物化视图一样回指来源产物。知识会过时,需要版本控制、分支与合并机制;且知识应被视为缓存而非全量存储,因为维护成本高昂。
作者通过一次融资会议记忆被重新解读的经历,指出记忆的本质不是固定表示,而是一个持久系统:保留过去的证据,并随新证据不断重新编译其意义。文章批评将向量数据库、知识图谱、上下文窗口等当作记忆的常见误解,认为它们只是从记忆编译出的临时表示。作者提出记忆编译产生三类产物:状态(按序折叠事件得到)、检索(查找相关证据的工具)和上下文(为单次调用组装的有界视图),并类比编译器的中间表示(IR),指出每种表示只适合特定操作,记忆本身应是唯一不可丢弃的持久层。
本文深入解析了生产级RAG(检索增强生成)系统的完整架构。文章首先指出LLM的局限性——无法访问私有数据,而RAG通过外部知识检索来弥补这一缺陷。然后详细介绍了系统的两大核心平面:知识平面(离线索引)和运行时平面(在线问答)。知识平面涵盖数据源、解析-分块-嵌入流水线以及向量索引;运行时平面则描述了用户查询、检索重排、LLM生成和答案引用的完整流程。文章还逐步拆解了查询生命周期,包括查询嵌入、Top-K检索、重排增强和生成,并强调了监控指标的重要性。
本文深入解析了 Agent 数据面的核心概念,将其比作操作系统的内存管理单元。文章详细阐述了 Context Engineering 的演变、Session/Thread/Profile 的架构差异,以及 Session Memory 与 Long-term Memory 的区别。作者还重点介绍了 Hermes 中的 Memory 设计方案、SQLite FTS5 与 BM25 算法原理,以及向量检索与关键词检索在 RAG 中的混合应用,旨在为开发者建立一套完整的 Agent 数据面技术认知体系。