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

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

目录一、什么是RAG(Retrieval-augmented Generation)二、核心流程三、从零实战1. 环境准备2. 准备你的资料3. 代码4. 运行结果四、RAG全链路1. 文档切分切块2. Embedding 向量化3. 向量库存储4. 语义检索5. LLM生成回答必备5个工具全免费实操最容易踩的坑一、什么是RAG(Retrieval-augmented Generation)RAG 给大模型配个专属“参考书”模型不再瞎编而是先从你上传的文档里查答案再组织语言回复专治幻觉、不懂私域数据、知识过时。二、核心流程把你的文档PDF/TXT/MD切成小段转成向量存在本地库你提问 → 系统去库里找最相关的段落把段落问题丢给大模型 → 模型照着回答三、从零实战1. 环境准备装必备包一行命令pipinstalllangchain langchain-community chromadb sentence-transformers2. 准备你的资料新建一个info.txt内容如下本公司主营企业级软件开发与数字化咨询服务主要产品包括企业管理系统、数据可视化平台、智能客服系统三类。 企业管理系统支持财务核算、人事管理、供应链协同功能适配生产制造、商贸流通、现代服务等行业。 数据可视化平台可对接MySQL、PostgreSQL等主流数据库支持实时数据看板、多维度报表分析。 智能客服系统具备意图识别、多轮对话、知识库自动检索能力可降低企业人工客服成本60%以上。 公司服务标准为工作日9:00-18:00技术支持需求响应时效不超过4小时提供远程部署与现场培训服务。3. 代码fromlangchain.document_loadersimportTextLoaderfromlangchain.text_splitterimportRecursiveCharacterTextSplitterfromlangchain.embeddingsimportHuggingFaceEmbeddingsfromlangchain.vectorstoresimportChromafromlangchain.chainsimportRetrievalQAfromlangchain.llmsimportTongyi# 1. 加载你的文档loaderTextLoader(info.txt,encodingutf-8)docsloader.load()# 2. 切分成小块splitterRecursiveCharacterTextSplitter(chunk_size200,chunk_overlap0)splitssplitter.split_documents(docs)# 3. 向量化 存入本地向量库embHuggingFaceEmbeddings(model_nameall-MiniLM-L6-v2)dbChroma.from_documents(splits,emb)retrieverdb.as_retriever()# 4. 接入大模型这里用通义千问填自己的API KeyllmTongyi(dashscope_api_key你的API_KEY,model_nameqwen-turbo)# 5. 组装RAG链ragRetrievalQA.from_chain_type(llmllm,chain_typestuff,retrieverretriever)# 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去仓库里找最匹配的资料用户输入问题把问题同样转成数字密码向量库对比所有库存数字捞出意思最接近的3-5段原文资料只拿有用素材过滤无关内容5. LLM生成回答解释拿着找到的真实资料让大模型整理成通顺答案固定指令约束只允许用检索到的资料回答不准自己瞎编知识流程用户问题 找到的参考文档 → 丢给大模型 → 输出精准答案必备5个工具全免费文档读取读PDF/Word/TXT文本分割LangChain分割器一键切块嵌入模型Embedding本地免费BGE-M3不用付费接口向量库Chroma最简单一行代码启动大模型本地通义千问/DeepSeek离线可用实操最容易踩的坑切块太大回答杂乱无重点切块太小信息残缺答不全检索片段太多上下文过长模型混乱不加限制词模型脱离资料自由发挥瞎编不用本地Embedding依赖外网接口慢还花钱
http://www.zskr.cn/news/1344648.html

相关文章:

  • Go闭包【2】 1.22 对 for 循环里闭包陷阱的那个“史诗级更新”
  • HoRain云--AI 底层架构
  • 3分钟学会使用elan:告别Lean版本混乱的智能版本管理器
  • 达梦数据库-堆栈看问题-01-asmapi_asm_extent_load
  • 如何在Windows上实现专业级游戏控制器模拟:ViGEmBus驱动深度解析
  • Warcraft Helper:现代Windows环境下魔兽争霸3兼容性技术解决方案深度解析
  • stm32F103C8T6标准库定时器应用流水灯1——相关的寄存器
  • 你的 BroadcastReceiver 为何在后台装死?—— Android 8.0+ 隐式广播限制与动态注册完全指南
  • 插电式混合动力公交车工况预测与智能能量管理策略【附程序】
  • 3分钟快速上手SketchUp STL插件:终极3D打印模型转换完整指南
  • 深度解析Unity游戏实时翻译插件:XUnity.AutoTranslator的5大实战应用场景与架构设计
  • Sub2API + CCSwitch 实现 Codex 反向代理:多账号流量分发实战(解决codex手机号验证)可以润色吗
  • 大学买不到GPU怪我?黄仁勋斯坦福现场火力全开:是你们体制的错!
  • G-Helper终极指南:免费开源工具彻底释放华硕笔记本性能
  • 2026年国内矿粉球团粘合剂头部厂家实力排行 - 奔跑123
  • 126、强化学习:在机器人运动控制中的实战
  • N_m3u8DL-CLI-SimpleG:让M3U8视频下载变得如此简单的终极图形界面工具
  • 2026年全球优质筋膜枪选购指南:轻松找到你的专属按摩神器 - 博客万
  • 2026年软考知识点—计算机等级考试—软件设计师考前备忘录—东方仙盟
  • 125、强化学习:策略梯度与PPO算法
  • 告别抢票焦虑:Python自动化工具如何让你轻松购得心仪演出票?
  • G-Helper:3步快速配置指南,释放华硕笔记本的真正潜能
  • 5个关键技巧优化抖音素材收集:开源下载器的进阶应用指南
  • 中兴光猫终极解锁指南:一键开启工厂模式与永久Telnet的完整解决方案
  • 高效掌握外语词汇:ToastFish桌面单词记忆工具完整指南
  • 2026年成都有哪些值得信赖的AI搜索优化公司? - 品牌推荐官方
  • 解锁AMD Ryzen处理器隐藏性能:SMUDebugTool深度调试实战指南
  • 中兴光猫工厂模式解锁终极指南:zteOnu让你的网络管理更简单
  • 国内矿粉粘结剂头部品牌排行 核心性能与服务实测对比 - 奔跑123
  • Seata 分布式事务配置实战:基于 Nacos 的高可用部署方案