0

0

什么是RAG(检索增强生成)?构建本地知识库问答AI的原理与实践

星降

星降

发布时间:2026-01-22 19:07:01

|

974人浏览过

|

来源于php中文网

原创

RAG是通过检索外部知识库增强大模型生成能力的技术,核心流程包括本地知识库构建、语义检索、提示增强与可控生成,全程可私有化部署。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

什么是rag(检索增强生成)?构建本地知识库问答ai的原理与实践

一、RAG的本质:为大模型配备可更新的外部知识源

RAG(Retrieval-Augmented Generation,检索增强生成)不是对大模型的替代,而是对其能力的结构性增强。它通过在生成答案前主动检索外部知识库中的相关片段,将真实、可控、可追溯的上下文注入提示词,使大模型的回答始终锚定在企业或用户提供的权威材料之上。该机制从根本上规避了纯生成模式下因参数化知识固化而导致的时效缺失与幻觉输出。

1、将用户自然语言问题转换为向量表示,作为检索的“查询钥匙”。

2、在已构建的向量数据库中执行近似最近邻搜索,匹配语义最相近的若干文本块。

3、将检索出的Top-K文本块与原始问题拼接,形成结构化增强提示(Augmented Prompt)。

4、将增强提示输入大语言模型,驱动其基于确切依据生成回答,而非依赖内部记忆。

二、本地知识库构建的核心流程:从文档到可检索向量

本地知识库是RAG系统的数据地基,其质量直接决定问答效果。整个构建过程不依赖云端API,所有环节均可在私有服务器或本地设备完成,确保敏感业务文档不出内网。关键在于将非结构化文档转化为机器可计算、可比对、可召回的高维语义向量。

1、收集多格式原始资料,包括PDF手册、Word产品说明、Excel业务规则表、Markdown培训文档及HTML内部Wiki页面。

2、清洗冗余内容:删除重复文件、标注过期版本、移除扫描件中的水印与页眉页脚噪声。

3、按语义边界进行智能分块:对技术文档采用“章节+标题”切分,对FAQ列表采用“问题-答案对”粒度,避免跨段落割裂逻辑。

4、使用轻量级嵌入模型(如text-embedding-3-small或bge-small-zh)将每个文本块编码为固定维度向量。

5、将向量及其原始文本元数据(来源文件名、页码、更新时间)存入本地向量数据库(如Chroma或Milvus单机版)。

三、检索阶段的关键控制点:提升查全率与查准率

检索并非简单关键词匹配,而是语义层面的意图对齐。本地部署环境下,需手动调优三个核心参数以适配业务语料特性:向量相似度阈值、返回片段数量K值、以及混合召回策略权重。低阈值易引入噪声,过高则遗漏边缘但关键信息。

1、启用多路召回机制:并行执行向量相似度检索与BM25关键词检索,再对结果融合重排序。

2、设置动态K值:对定义类问题(如“什么是SLA?”)设K=3;对操作类问题(如“如何重置SaaS后台密码?”)设K=5,保障步骤完整性。

Powtoon
Powtoon

AI创建令人惊叹的动画短片及简报

下载

3、引入查询重写:当检测到用户提问含模糊代词(如“这个功能”“上述配置”)时,调用小模型补全指代对象,再发起二次检索。

4、对检索结果做置信度打分:基于余弦相似度与文本块长度加权,过滤低于0.42的低相关性片段。

四、增强与生成环节的工程实践:确保答案可控可溯

增强环节决定模型“看到什么”,生成环节决定模型“说什么”。二者协同构成RAG可信输出的最后防线。本地部署中必须显式约束提示结构与输出行为,杜绝自由发挥空间。

1、强制使用系统级提示模板:以“你是一个严格依据以下上下文作答的AI助手”开头,明确角色边界。

2、上下文拼接时保留原始文本块编号与来源标识,例如“【来源:《客户服务SOP_V3.2.pdf》P17】…”。

3、在提示末尾添加硬性指令:“若所给上下文中无对应信息,仅回答‘未在知识库中找到依据’,禁止推测、补充或引用外部知识。”

4、对LLM输出做后处理校验:使用正则匹配识别“可能”“一般而言”“通常”等模糊表述,触发二次验证或降级响应。

五、本地化部署的典型技术组合

无需依赖商业云服务即可实现完整RAG闭环。主流开源组件已支持全链路本地运行,且多数可在消费级GPU(如RTX 4090)或无GPU环境(CPU+量化模型)下稳定工作。

1、文档解析层:使用Unstructured.io处理PDF/DOCX,集成OCR模块(PaddleOCR)识别扫描件。

2、向量化层:选用Sentence-BERT中文微调版或BGE系列模型,在本地批量生成嵌入向量。

3、向量存储层:ChromaDB适用于轻量场景(单机、无认证),Weaviate适用于需属性过滤与图关系扩展的中型知识库。

4、检索增强层:LangChain或LlamaIndex作为编排框架,支持自定义检索器与提示模板注入。

5、生成层:部署Qwen2-7B-Instruct或Phi-3-mini等量化INT4模型,通过Ollama或llama.cpp本地加载。

相关专题

更多
html版权符号
html版权符号

html版权符号是“©”,可以在html源文件中直接输入或者从word中复制粘贴过来,php中文网还为大家带来html的相关下载资源、相关课程以及相关文章等内容,供大家免费下载使用。

616

2023.06.14

html在线编辑器
html在线编辑器

html在线编辑器是用于在线编辑的工具,编辑的内容是基于HTML的文档。它经常被应用于留言板留言、论坛发贴、Blog编写日志或等需要用户输入普通HTML的地方,是Web应用的常用模块之一。php中文网为大家带来了html在线编辑器的相关教程、以及相关文章等内容,供大家免费下载使用。

657

2023.06.21

html网页制作
html网页制作

html网页制作是指使用超文本标记语言来设计和创建网页的过程,html是一种标记语言,它使用标记来描述文档结构和语义,并定义了网页中的各种元素和内容的呈现方式。本专题为大家提供html网页制作的相关的文章、下载、课程内容,供大家免费下载体验。

471

2023.07.31

html空格
html空格

html空格是一种用于在网页中添加间隔和对齐文本的特殊字符,被用于在网页中插入额外的空间,以改变元素之间的排列和对齐方式。本专题为大家提供html空格的相关的文章、下载、课程内容,供大家免费下载体验。

245

2023.08.01

html是什么
html是什么

HTML是一种标准标记语言,用于创建和呈现网页的结构和内容,是互联网发展的基石,为网页开发提供了丰富的功能和灵活性。本专题为大家提供html相关的各种文章、以及下载和课程。

2898

2023.08.11

html字体大小怎么设置
html字体大小怎么设置

在网页设计中,字体大小的选择是至关重要的。合理的字体大小不仅可以提升网页的可读性,还能够影响用户对网页整体布局的感知。php中文网将介绍一些常用的方法和技巧,帮助您在HTML中设置合适的字体大小。

507

2023.08.11

html转txt
html转txt

html转txt的方法有使用文本编辑器、使用在线转换工具和使用Python编程。本专题为大家提供html转txt相关的文章、下载、课程内容,供大家免费下载体验。

312

2023.08.31

html文本框代码怎么写
html文本框代码怎么写

html文本框代码:1、单行文本框【<input type="text" style="height:..;width:..;" />】;2、多行文本框【textarea style=";height:;"></textare】。

426

2023.09.01

菜鸟裹裹入口以及教程汇总
菜鸟裹裹入口以及教程汇总

本专题整合了菜鸟裹裹入口地址及教程分享,阅读专题下面的文章了解更多详细内容。

0

2026.01.22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Excel 教程
Excel 教程

共162课时 | 12.9万人学习

成为PHP架构师-自制PHP框架
成为PHP架构师-自制PHP框架

共28课时 | 2.4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号