企业级 RAG 问答系统开发上线流程分析

该项目从企业级应用的角度,可以划分为 四个主要阶段数据与知识库准备(ETL)核心功能开发与优化系统工程化与部署 ,以及测试与持续优化


1. 📚 数据与知识库准备(ETL 流程)

此阶段重点是将企业的非结构化知识(如汽车手册)转化为可供 RAG 系统高效检索的格式。

步骤 对应项目内容 关键技术点
文档处理与解析 "先用 PyMuPdf 识别出文档块,然后利用 滑动窗口和父子文档 结合的方法,同时考虑语义感知切分对用户手册进行解析" 保证文本内容的 完整性跨页连续性。这是 RAG 系统的基石。
数据存储 "并用 mongoDB 存储文本块和元数据" 非结构化数据(文本块)与结构化信息(元数据)的分离存储,利于管理和更新。
数据清洗与增强 对应项目亮点中的"对 pdf 解析后的数据用 DeepSeek 进行清洗优化" 清除杂乱、解析错误和不通顺的候选文本,保证知识源的质量。
向量化与入库 隐含步骤。将处理好的文本块转化为向量。 对应后续检索使用的 Qwen3-EmbeddingBGE-M3 等 Embedding 模型。

2. 🧠 核心功能开发与优化(RAG 架构实现)

此阶段是实现问答系统的核心逻辑,确保能准确检索和高质量生成答案。

步骤 对应项目内容 关键技术点
混合检索策略实现 "采用 多路召回策略 ,使用 Dense 召回(Qwen3-Embedding),Sparse 召回(BGE-M3)" 结合语义匹配(Dense)和关键词匹配(Sparse),提高检索的召回率。
召回结果融合 "Milvus 实现向量检索,同时用 RRF 做粗排" RRF(Reciprocal Rank Fusion) 融合不同召回结果的排名,得到更优的初步候选集。
重排(Re-rank) "BGE-Reranker 做精排" 对粗排后的候选集进行更细致的排序,选出最相关的几条文档,交给 LLM。
LLM 答案生成 "结合 LLM大型模型微调和提示工程,优化知识库结构和检索生成流程" LLM 结合重排后的文档片段和用户提问,生成自然、准确、快速的回答。
附加能力实现 "问答系统支持输出答案、引用页码和关联链接 的能力" 提高答案的可追溯性可靠性

3. ⚙️ 系统工程化与部署(Engineering & MLOps)

此阶段侧重于系统的性能、稳定性和可部署性,是从"Demo"走向"产品"的关键。

步骤 对应项目内容 关键技术点
模型量化加速 "对 Qwen3-8BAWQ INT4 量化加速" 在不显著损失性能的前提下,减小模型大小、降低内存占用,提高推理速度。
推理服务部署 "项目工程代码做 docker 容器化 部署,并利用 vLLM 框架 对大模型进行推理" Docker 保证环境一致性,vLLM 优化 LLM 的高并发、低延迟推理。
分布式部署 "实现 8卡 A100 分布式部署,极大提升了推理效率" 满足企业级应用对**高并发(3K+ token/s)低延迟(尾延迟降低 55%)**的要求。
API 接口封装 隐含步骤。将问答服务封装为 API 接口,供前端或其他业务系统调用。 保证系统易于集成和使用。

4. ✅ 测试、评估与持续优化(Evaluation & Iteration)

此阶段通过科学的评估确保系统质量,并规划后续迭代。

步骤 对应项目内容 关键技术点
构建评测集 "人工构造 2000 条测试集" 为系统提供一个基准的、可重复的评估标准。
制定评估指标 "采用 RAGAs相似度和实体键值加权评分 为评测指标" RAGAs 专注于 RAG 特有的指标(如忠实度、上下文相关性),结合业务特定指标(实体键值),进行全面评估。
基线对比 "相比用 GPT-4o+OpenAI Embeddings 外挂知识库提升 18%" 证明自研 RAG 策略相比于通用/商业方案的显著优势和价值。
数据飞轮优化 对应项目亮点中的"在输入侧做 query 的纠错、改写和扩展" 利用用户的实际 Query 数据进行数据增强,形成一个持续迭代优化的飞轮机制。

总结: 这个项目流程是一个非常典型的 企业级 RAG 研发到上线 的完整体现,它不仅关注 算法效果(RAG 策略) ,更注重 工程化(量化、vLLM、分布式部署)项目价值(高并发、低延迟、高准确率),是高质量 LLM 应用的范例。

相关推荐
serve the people2 小时前
tensorflow tf.nn.softmax 核心解析
人工智能·python·tensorflow
癫狂的兔子2 小时前
【BUG】【Python】eval()报错
python·bug
啃火龙果的兔子2 小时前
java语言基础
java·开发语言·python
masterqwer2 小时前
day42打卡
python
不会飞的鲨鱼2 小时前
抖音验证码滑动轨迹原理(很难审核通过)
javascript·python
我命由我123452 小时前
Python 开发问题:No Python interpreter configured for the project
开发语言·后端·python·学习·pycharm·学习方法·python3.11
闲云一鹤2 小时前
Claude Code 接入第三方AI模型(MiMo-V2-Flash)
前端·后端·claude
shiwulou12 小时前
如何在 Windows 中使用 Kimi CLI
后端
多米Domi0112 小时前
0x3f第12天 0-1背包
python·算法·leetcode·动态规划