检索增强生成(Retrieval-Augmented Generation,RAG)已经成为企业将大模型应用到业务场景的标配方案。从2023年作为LLM接入外部数据的默认方案起步,到2025年几乎每家企业都搭建了自己的知识问答助手,RAG技术在短短几年内完成了从概念验证到规模化应用的跨越。本文结合企小脉团队在多个企业场景中的实践,梳理RAG系统从原型到生产环境的关键技术路径,并给出面向企业AI建设的实用建议。

一、为什么企业需要RAG
将通用大模型直接应用于企业业务,通常面临三个层面的挑战。
首先是知识的边界问题。 主流大模型(DeepSeek、GPT、通义千问等)的训练数据主要来自公开网络,对于企业的内部文档、实时数据、专有知识基本不具备。当一个客服系统需要回答用户关于最新产品参数的问题时,通用大模型给出的答案往往过时或不准确。
其次是输出结果的稳定性。 深度学习模型的本质是基于概率的预测系统,大模型也不例外。当模型遇到自身知识盲区时,会产生“一本正经地胡说八道”的现象,这在严肃的业务场景中是不被接受的。
再者是数据安全的考量。 对企业而言,将内部数据上传到第三方平台进行推理存在明显的数据泄露风险。RAG通过将私有数据本地部署、仅将检索结果提供给大模型的方式,在数据安全与AI能力之间找到了一个平衡点。
RAG的核心逻辑并不复杂:将用户问题与自有数据库中的相关内容进行匹配,将这些内容作为上下文提示给大模型,再由大模型生成回答。RAG = 检索技术 + LLM 提示。这种“先查后答”的模式,让大模型不再依赖训练阶段的知识,而是可以在每一次回答中调用动态的企业信息。
二、核心架构:数据准备与在线推理的两阶段设计
一个完整的RAG应用包含两个阶段:离线数据准备和在线推理服务。
2.1 数据准备阶段
数据准备是一个离线流程,主要包括四个环节。
数据提取与解析。 企业知识以多种格式存在——PDF、Word、PPT、Excel、Markdown,甚至扫描件图片。一个生产级的数据提取层需要能够处理这些异构格式,保留文档的结构化信息(如标题层级、表格结构),同时提取关键元数据(文件名、创建时间、作者等)。
文本分割(Chunking)。 这是数据准备中容易被忽视但却重要的环节。文本分割主要考虑两个因素:一是嵌入模型的上下文长度限制(例如早期的BERT模型仅支持512个Token,而最新的模型可以处理更长序列);二是语义的完整性。过小的分块会丢失上下文信息,过大的分块则可能导致检索精度下降。实践中,常见策略包括按句子切分(以句号、问号、换行符作为分隔符)、按固定Token长度切分(并在块与块之间设置重叠区域以缓解语义断裂)。
向量化(Embedding)。 向量化是将文本转换为数值矩阵的过程,直接决定了后续检索的质量。当前可选的嵌入模型包括OpenAI的text-embedding系列、百度的ERNIE-Embedding V1,以及开源模型如M3E和BGE。对于涉及行业专有术语的场景,可以选择开源模型进行微调以提升效果。
向量数据库入库。 向量化后的数据需要存入专门的向量数据库以便高效检索。常见选择包括FAISS(适用于中小规模)、Chroma(轻量级)、Milvus(企业级)、Elasticsearch(同时支持全文检索和向量检索)等。企业在选型时需综合考虑数据规模、并发要求、硬件资源和安全合规等维度。
2.2 应用推理阶段
在线推理阶段处理用户的实际查询,包含三个关键步骤。
数据检索。 将用户问题向量化后,在向量数据库中执行相似性搜索,召回相关的知识片段。常见的检索方法包括相似性检索(计算查询向量与存储向量的余弦相似度)和全文检索(基于关键词的倒排索引)。研究表明,将两种方法融合使用的混合检索策略,在召回率和准确率上往往优于单一检索方式。
Prompt构造。 检索到的知识片段需要被整合到大模型的提示词中。一个典型的知识问答场景提示词结构如下:
【任务描述】
你是一个专业的客服助手。请参考【背景知识】中的内容,回答用户的问题。
【背景知识】
{检索到的知识内容}
【用户问题】
{用户输入的问题}
答案生成。 大模型根据上述提示生成最终答案。这一步的关键在于Prompt的工程化设计——既要确保模型充分使用检索到的背景知识,又要防止模型在缺乏相关知识时强行编造答案。
三、从基础RAG到高级RAG
基础的RAG流程已经能够解决不少简单场景的问题,但在实际业务中,企业往往会遇到更复杂的查询需求,需要引入一些高级技术。
3.1 分块策略优化:语句窗口与父文档检索
在标准RAG中,文本被均匀切分成固定大小的块进行索引。这种方式的问题在于:小分块检索精度高但上下文不足,大分块上下文丰富但检索精度下降。
语句窗口检索器采用了一种折衷方案:将每个句子单独嵌入进行索引,以获得更高的检索精度;检索到相关句子后,再将其前后若干句子的上下文一并提供给大模型。这样既保证了检索的精准性,又为大模型提供了足够的推理上下文。
父文档检索器的思路类似但实现方式不同:文档被切分成较小的子块用于索引检索,每个子块与一个更大的父块建立引用关系。当检索到一定数量的子块来自同一个父块时,系统自动将父块替换到最终上下文中。这种“自动合并”机制在处理跨段落内容的问答时效果更好。
3.2 混合检索:关键词+向量的互补策略
纯语义向量检索在处理专有名词和精确匹配时往往不如传统的关键词检索。混合检索技术将两者的优势结合起来——同时执行向量相似度检索和BM25关键词检索,然后通过倒数排名融合(RRF)算法对结果进行合并和重新排序。在某制造企业的实施案例中,混合检索策略使设备故障知识检索的召回率从73%提升至89%,同时降低了35%的计算资源消耗。
3.3 查询转换:让LLM帮助理解用户意图
用户的问题并不总是适合直接用于检索。LLM可以作为推理引擎对原始查询进行转换,以提高检索质量。
多重查询生成将一个复杂问题拆解为多个子问题。例如,当用户问“LangChain和LlamaIndex哪个更适合文档问答场景”时,LLM可以生成“LangChain在文档问答中如何实现”“LlamaIndex的检索准确率表现如何”等多个子查询,分别检索后再综合答案。
HyDE(假设性文档嵌入) 则采取了相反的策略:LLM先根据用户问题生成一个假设性的答案,再将这个假设答案与原始问题一起用于检索。由于假设答案与目标文档在语义上更接近,这种方式有时能获得更好的检索效果。
3.4 检索后重排
检索回来的Top-K个结果中,并非全部都与用户问题相关。重排(Reranking)技术通过在检索与生成之间增加一个过滤层,使用交叉编码器或其他模型对结果进行重新排序和筛选,剔除不相关内容后再送入LLM。这能有效减少上下文中的噪声,提升最终答案的质量。
四、企业部署RAG的实践经验
4.1 数据安全优先:私有化部署的必要性
对大多数企业而言,数据安全是部署AI系统的首要考量。实践证明,RAG架构天然支持私有化部署:向量数据库和嵌入模型可以部署在企业内部环境,LLM可以选择本地部署的开源模型(如Llama、DeepSeek、Qwen等)或通过安全通道调用云端API。全链路国产化适配方案在金融、政务等关键领域已得到验证,具备完整的安全合规能力。
4.2 评估体系的建立
RAG系统的性能评估需要建立一套可量化的指标体系。开源框架Ragas提供了四个核心评估指标:
上下文召回率(Context Recall) 评估系统是否检索到了回答问题所需的内容。得分1.0表示所有必要信息都被检索到。
上下文精确率(Context Precision) 评估检索到的内容中有多少是真正有用的。得分1.0表示无噪声干扰。
忠实度(Faithfulness) 检查模型的回答是否完全基于检索到的上下文,用于量化和控制幻觉现象。得分1.0表示没有任何编造的内容。
答案相关性(Answer Relevancy) 评估回答是否准确回应了用户的问题,有无偏离主题。
对于已经上线运行的系统,企业可通过用户反馈闭环和持续评测不断优化检索策略和Prompt设计。
4.3 成本与延迟的权衡
向量检索的成本远低于LLM推理成本。RAG融合等高级技术引入额外的LLM调用会增加延迟,但第一次调用(生成相似查询)通常比第二次调用(生成最终答案)便宜10到100倍。如果每10次查询节省一次后续问题,整体成本反而可能更低。决策的关键在于具体场景的延迟要求和用户耐心阈值。
五、面向企业的RAG建设建议
5.1 起点要低,迭代要快
建议企业不要一开始就追求复杂的智能体架构。从单文档库的问答系统起步,完成从“能用”到“好用”的快速验证。某制造业客户的实践显示,基于RAG构建的知识库问答系统将知识查询耗时从平均15分钟降至28秒,新员工培训周期缩短40%,专家咨询工单减少65%。
5.2 分阶段实施路线图
第一阶段:基础RAG。 选择一个简单的向量数据库(如Chroma或FAISS),配合开源嵌入模型和LLM,完成端到端流程的打通。这一阶段的重点是验证业务流程与技术栈的匹配度。
第二阶段:检索优化。 根据真实用户查询的评估数据,逐步引入混合检索、重排器、查询转换等技术。确保每一步改进都能通过量化指标得到验证。
第三阶段:场景扩展。 在处理多文档、多领域知识时,引入多智能体架构或分层索引。多文档智能体方案为每个文档构建独立的Agent,并由顶层Agent负责路由和答案综合,能够处理跨文档的复杂比较与综合分析。
5.3 避免的误区
不要盲目追求大参数模型。 对于大部分企业问答场景,经过微调的中小规模LLM(7B-13B参数)已经能提供良好的效果,同时在成本和响应速度上更具优势。
不要忽视评估环节。 许多RAG项目失败的原因不在于技术选型,而在于缺乏持续的评估和优化机制。建议在项目启动时就建立评估体系,将指标迭代作为常规工作流程的一部分。
注意场景适配性。 RAG融合等技术在内容基于常见概念时效果较好,但在涉及内部行话、专业术语或品牌专有名词时可能需要进行提示微调或定制化处理。
六、示例:面向企业客服的RAG知识库构建
假设某电商企业需要构建一个智能客服助手,回答用户关于商品参数、退换货政策和物流状态的问题。
第一步:数据准备。 将产品说明书(PDF格式)、退换货政策文档(Word格式)、历史客服对话记录(JSON格式)导入系统。使用Unstructured库进行文档解析,按语义边界分割为500-800字符的文本块。
第二步:向量化与索引。 选择开源嵌入模型(如bge-large-zh-v1.5)将文本块转换为向量,存入Milvus向量数据库。同时为每个向量附加元数据(文档来源、创建日期、产品型号),支持后续的过滤检索。
第三步:检索策略。 对用户问题同时执行向量相似度检索(召回语义相关内容)和BM25关键词检索(召回精确匹配内容),通过RRF融合算法合并结果,再使用交叉编码器对Top-20结果进行重排,最终保留Top-5个段落。
第四步:生成答案。 构造提示词,将检索到的内容作为背景知识提供给LLM,要求模型仅基于提供的内容作答。通过设置temperature参数控制答案的稳定性。
第五步:闭环优化。 收集用户对答案的满意度反馈,标记回答不佳的案例,定期进行检索质量评估和Prompt调优。
结语:RAG是起点而非终点
RAG技术经历了从基础检索到智能体架构的快速演进。从2023年作为LLM默认的知识接入方案起步,发展到如今已能将知识与生成深度耦合。对于企业而言,RAG提供了一个务实的AI落地路径:它不需要重新训练大模型,不需要将数据上传给第三方,可以从具体业务场景切入,通过持续迭代逐步扩大应用范围。
随着Agentic RAG、Graph RAG等新范式的出现,企业AI系统正从“问-答”的简单交互向“自主规划-分解任务-检索信息-执行行动”的智能代理模式演进。但对于绝大多数企业而言,扎实做好基础RAG的评估、优化和运营工作,比追逐技术前沿更为迫切。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...













