RAG(检索增强生成)的简单理解

一个完整的企业级或个人级 RAG(检索增强生成)项目,包含数据流、检索流、生成流、运维评测的完整闭环系统。

一个标准的 RAG 项目,通常包含以下四大核心组成部分:

一、 RAG数据接入与处理层(ETL / Data Pipeline)

这是 RAG 的地基,决定了喂给 AI 的原料质量(Garbage in, garbage out)。

  • 多源数据采集器:
    支持连接各种数据源:MySQL 业务数据、对象存储(MinIO/S3)里的 PDF/Word/Markdown、Confluence 页面、Git 仓库、网页爬虫等。

  • 文档解析与清洗(Document Parser):
    提取非结构化文件中的纯文本、表格、图片(配合 OCR 或多模态模型解析图表)。

  • 智能文本切分(Chunking Strategy):
    将长文档切分成合适大小的文本块(如按固定 Token 数、按 Markdown 标题层级、或语义切分),并保留前后上下文重叠(Overlap)。

  • 向量化与索引生成(Embedding & Indexing):
    调用 Embedding 模型(如 BGE、Qwen-Embedding)将文本块转为高维向量,存入向量数据库(如 Milvus、PGVector、ES)。

二、 RAG检索与增强层(Retrieval & Enhancement)

这是 RAG 的核心大脑,负责把最准、最相关的知识片段精准捞出来。

  • 混合检索(Hybrid Search):
    结合向量语义检索(懂意思)和 BM25 关键词/全文检索(懂专有名词、代码、型号),互补盲区。

  • 多路召回与重排(Rerank):
    初筛阶段先捞出几十个候选片段,再通过专门的 Rerank 模型(如 BGE-Reranker) 进行深度语义打分和精细化排序,只留下最核心的 Top 3-5 个片段。

  • 元数据过滤与权限管控(Metadata Filtering):
    在检索时带上业务条件(如用户角色、所属部门、数据密级),确保用户只能搜到自己权限允许范围内的数据,解决企业级安全合规问题。

  • 查询重写(Query Rewriting):
    用户的提问往往口语化或含糊不清。通过小模型或大模型先对用户的提问进行润色、扩写或拆解,提高检索命中率。

三、 RAG生成与交互层(Generation & Interaction)

这是 RAG 的门面,负责把检索到的知识转化为人类易读的答案。

  • Prompt 模板工程:
    将检索到的知识片段(Context)与用户的原始提问(Query)按照严谨的提示词模板组装,防止大模型自由发挥或胡说八道(减少幻觉)。

  • 大模型驱动(LLM Integration):
    调用本地大模型(如 Ollama 跑 Qwen)或云端大模型(如 DeepSeek、OpenAI)生成最终回答。

  • 流式响应与前端交互(Streaming & UI):
    实现打字机效果(Stream 流式输出),支持多轮对话(Chat History 记忆),并能展示引用来源(References / Citations),让用户点击即可追溯原文出处。

四、 RAG运维、评测与治理层(Ops & Evaluation)

决定 RAG 系统能否从Demo 玩具走向生产可用的关键。

  • RAG 评估体系(Evaluation):
    使用类似 RAGASTruLens 的自动化评测框架,对系统的检索召回率、答案忠实度(Faithfulness)、回答相关性进行打分和持续优化。

  • 数据增量同步与生命周期管理:
    数据库或文档更新时,系统能通过监听变更(如 CDC)自动更新或删除对应的向量索引,保持数据的“鲜活度”。

  • 日志审计与监控:
    记录用户的每一次提问、检索到的知识片段、大模型的 Token 消耗、耗时以及用户的反馈(点赞/踩),用于后续的 Prompt 调优和数据闭环。

posted on 2026-08-14 11:45  乐之者v  阅读(5)  评论(0)    收藏  举报

导航