当前位置: 首页 > news >正文

RAG 检索增强生成(全链路)

目录

  • 一、什么是RAG(Retrieval-augmented Generation)
  • 二、核心流程
  • 三、从零实战
    • 1. 环境准备
    • 2. 准备你的资料
    • 3. 代码
    • 4. 运行结果
  • 四、RAG全链路
    • 1. 文档切分(切块)
    • 2. Embedding 向量化
    • 3. 向量库存储
    • 4. 语义检索
    • 5. LLM生成回答
    • 必备5个工具(全免费)
    • 实操最容易踩的坑

一、什么是RAG(Retrieval-augmented Generation)

RAG =给大模型配个专属“参考书”
模型不再瞎编,而是先从你上传的文档里查答案,再组织语言回复,专治幻觉、不懂私域数据、知识过时

二、核心流程

  1. 把你的文档(PDF/TXT/MD)切成小段
  2. 转成向量存在本地库
  3. 你提问 → 系统去库里找最相关的段落
  4. 把段落+问题丢给大模型 → 模型照着回答

三、从零实战

1. 环境准备

装必备包,一行命令:

pipinstalllangchain langchain-community chromadb sentence-transformers

2. 准备你的资料

新建一个info.txt,内容如下:

本公司主营企业级软件开发与数字化咨询服务,主要产品包括企业管理系统、数据可视化平台、智能客服系统三类。 企业管理系统支持财务核算、人事管理、供应链协同功能,适配生产制造、商贸流通、现代服务等行业。 数据可视化平台可对接MySQL、PostgreSQL等主流数据库,支持实时数据看板、多维度报表分析。 智能客服系统具备意图识别、多轮对话、知识库自动检索能力,可降低企业人工客服成本60%以上。 公司服务标准为工作日9:00-18:00技术支持,需求响应时效不超过4小时,提供远程部署与现场培训服务。

3. 代码

fromlangchain.document_loadersimportTextLoaderfromlangchain.text_splitterimportRecursiveCharacterTextSplitterfromlangchain.embeddingsimportHuggingFaceEmbeddingsfromlangchain.vectorstoresimportChromafromlangchain.chainsimportRetrievalQAfromlangchain.llmsimportTongyi# 1. 加载你的文档loader=TextLoader("info.txt",encoding="utf-8")docs=loader.load()# 2. 切分成小块splitter=RecursiveCharacterTextSplitter(chunk_size=200,chunk_overlap=0)splits=splitter.split_documents(docs)# 3. 向量化 + 存入本地向量库emb=HuggingFaceEmbeddings(model_name="all-MiniLM-L6-v2")db=Chroma.from_documents(splits,emb)retriever=db.as_retriever()# 4. 接入大模型(这里用通义千问,填自己的API Key)llm=Tongyi(dashscope_api_key="你的API_KEY",model_name="qwen-turbo")# 5. 组装RAG链rag=RetrievalQA.from_chain_type(llm=llm,chain_type="stuff",retriever=retriever)# 6. 提问测试question="公司的智能客服系统能带来什么效果?"print(rag.run(question))

4. 运行结果

模型会严格按你写的文档回答

公司的智能客服系统具备意图识别、多轮对话、知识库自动检索能力,可降低企业人工客服成本60%以上。

四、RAG全链路

文档切分→Embedding→向量库→检索→生成

1. 文档切分(切块)

解释:把长篇大论拆成一小段一小段短文

  • 例子:一本说明书、合同、笔记、PDF,直接整篇太长没法用,切成300-800字小片段
  • 目的:片段短好查找,信息集中,不会杂乱
  • 小技巧:切块留一点重叠内容,防止关键句子被一刀切断丢信息

2. Embedding 向量化

解释:Embedding 就是把文字、图片等东西转换成计算机能理解的数字向量(一串数字)。

  • 原理:AI看不懂纯文字,只能认数字;意思越相近的文字,数字密码越像
  • 举例:
    “今天天气很好” = 【1,3,5,7…】
    “今日天气不错” = 【1.1,3.2,5.0,7.1…】
    两句数字几乎一致
  • 作用:把所有文本块全部转成数字,为快速搜索做准备

3. 向量库存储

解释:专门放「文字片段+对应数字密码」的专属仓库

  • 和普通数据库区别:普通库搜关键词,向量库搜语义相似度
  • 通俗理解:把所有转好的数字密码整齐入库,建好索引,方便一秒查找
  • 新手首选轻量库:Chroma、FAISS(免安装、零配置)

4. 语义检索

解释:用户提问,AI去仓库里找最匹配的资料

  1. 用户输入问题
  2. 问题同样转成数字密码
  3. 向量库对比所有库存数字,捞出意思最接近的3-5段原文资料
  4. 只拿有用素材,过滤无关内容

5. LLM生成回答

解释:拿着找到的真实资料,让大模型整理成通顺答案

  • 固定指令约束:只允许用检索到的资料回答,不准自己瞎编知识
  • 流程:用户问题 + 找到的参考文档 → 丢给大模型 → 输出精准答案

必备5个工具(全免费)

  1. 文档读取:读PDF/Word/TXT
  2. 文本分割:LangChain分割器(一键切块)
  3. 嵌入模型Embedding:本地免费BGE-M3(不用付费接口)
  4. 向量库:Chroma(最简单,一行代码启动)
  5. 大模型:本地通义千问/DeepSeek(离线可用)

实操最容易踩的坑

  1. 切块太大:回答杂乱无重点
  2. 切块太小:信息残缺,答不全
  3. 检索片段太多:上下文过长,模型混乱
  4. 不加限制词:模型脱离资料自由发挥瞎编
  5. 不用本地Embedding:依赖外网接口慢还花钱
http://www.jsqmd.com/news/863508/

相关文章:

  • 2026TOP5株洲市天元区黄金,白银,铂金回收门店推荐及联系方式权威发布 - 前途无量YY
  • CVE-2026-9082深度解析:Drupal PostgreSQL高危SQL注入,未认证RCE全流程与防御实战
  • 拆解Agent大模型幻觉问题,分层约束与异常兜底全工程实践
  • Sunshine游戏串流服务器:如何5分钟内搭建私人云游戏平台?
  • 免费商用多语言字体终极指南:思源黑体TTF构建教程
  • 5分钟快速上手:免费在线EPUB编辑器终极指南
  • Cursor释放野心,要造一个Agent开发环境!
  • 2026年成都公司注册代办指南,权威榜单为你揭秘靠谱代办地! - 品牌推荐官方
  • 注意力机制:多头注意力机制、分组查询注意力机制、多查询注意力机制理论+代码
  • Windows Btrfs驱动完全指南:解锁Linux文件系统的7大核心优势
  • 新能源车辆数据处理平台架构
  • 告别克隆整个仓库:GitHub文件精准下载工具使用指南
  • Go 闭包【1】基础
  • 告别焦虑等待!Elsevier投稿状态自动追踪插件,让你的科研进度一目了然
  • 调用外部服务却无监控?这可能是下一个雪崩的源头
  • ContentBranch+CFBranch混合电影推荐模型|全网独家复现,深度学习实战篇 引入双分支融合架构,兼顾内容特征与协同信号、助力冷启动缓解、数据稀疏性优化、推荐精度有效涨点
  • 【硬件面试题精讲】运放求和 + 同相放大电路输出计算(附原理与通用公式)
  • 淘金币自动化脚本:5分钟搞定淘宝每日任务,轻松解放双手
  • 苏州德奥诚汽车服务:太仓靠谱的报废车回收推荐哪几家 - LYL仔仔
  • Go闭包【2】 1.22 对 for 循环里闭包陷阱的那个“史诗级更新”
  • HoRain云--AI 底层架构
  • QQ音乐加密文件终极转换指南:3步将.qmc文件转为MP3/FLAC
  • 达梦数据库-堆栈看问题-01-asmapi_asm_extent_load
  • 如何在Windows上实现专业级游戏控制器模拟:ViGEmBus驱动深度解析
  • DS4Windows终极指南:如何在Windows上完美使用PS4/PS5手柄玩所有游戏
  • Warcraft Helper:现代Windows环境下魔兽争霸3兼容性技术解决方案深度解析
  • TranslucentTB:Windows任务栏透明化终极指南与5大创意应用场景
  • 你的 BroadcastReceiver 为何在后台装死?—— Android 8.0+ 隐式广播限制与动态注册完全指南
  • 苏州购宠避坑指南|5 家靠谱实体门店 - 资讯速览
  • 2026年5月论文降 AI 率工具终极推荐:超过一半学生的选择,早标网为何降AI效果好? - 全维度降AI