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

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依赖外网接口慢还花钱

相关文章:

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

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

OBS-VST插件完整指南:5分钟让直播音频秒变专业的终极方案

OBS-VST插件完整指南:5分钟让直播音频秒变专业的终极方案 【免费下载链接】obs-vst Use VST plugins in OBS 项目地址: https://gitcode.com/gh_mirrors/ob/obs-vst 想在OBS Studio中免费获得专业级音频处理效果吗?OBS-VST插件正是你需要的解决方…...

2026年3大知识竞赛软件测评:告别抢答器,手机闯关如何玩出高级感?

在2026年的今天,组织一场知识竞赛不再需要搬运笨重的抢答硬件,也不再需要人工统计分数。无论是学校的百科竞赛,还是企业的安全生产月活动,组织者最核心的需求已经演变为:如何在保证万人并发稳定的前提下,玩…...

3分钟学会使用elan:告别Lean版本混乱的智能版本管理器

3分钟学会使用elan:告别Lean版本混乱的智能版本管理器 【免费下载链接】elan The Lean version manager 项目地址: https://gitcode.com/gh_mirrors/el/elan 还在为不同Lean项目需要不同版本而头疼吗?elan作为Lean定理证明器的智能版本管理器&…...

stm32F103C8T6标准库定时器应用流水灯1——相关的寄存器

目录1.SysTick介绍2.芯片架构2.1 M3系统架构图3.SysTick使用4.readme5.定时器中断配置5.1 core_cm3.h文件5.1.1 函数头注释部分5.1.2 函数名5.1.3 判断重装值是否超过 24 位5.1.4 设置重装载寄存器5.1.5 设置中断优先级5.1.6 清空当前计数器5.1.7 配置 CTRL 寄存器(…...

CANN-opbase-昇腾NPU算子开发的基础设施为什么这么重要

CANN-opbase-昇腾NPU算子开发的基础设施为什么这么重要 所有 CANN AOL 算子仓库的底层都依赖 opbase。它不提供任何算子实现,提供的是算子注册、编译、调度的基础设施。如果你要写自定义 Ascend C 算子,opbase 是绕不过去的第一步。 opbase 提供了什么组…...

插电式混合动力公交车工况预测与智能能量管理策略【附程序】

✨ 长期致力于插电式混合动力系统、行驶工况构建、工况预测、预测能量管理策略、智能能量管理策略研究工作,擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流,点击《获取方式》 (1)自组…...

终极指南:如何使用qmc-decoder快速解密QMC音频文件 [特殊字符]

终极指南:如何使用qmc-decoder快速解密QMC音频文件 🎵 【免费下载链接】qmc-decoder Fastest & best convert qmc 2 mp3 | flac tools 项目地址: https://gitcode.com/gh_mirrors/qm/qmc-decoder qmc-decoder是一款专为QQ音乐用户设计的QMC音…...

如何让老款Mac重获新生:OpenCore Legacy Patcher完全指南

如何让老款Mac重获新生:OpenCore Legacy Patcher完全指南 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 还在为苹果官方停止支持的老款Mac无法升…...

9. Python 文件与输入输出 深度解析

Python 文件与输入输出 深度解析 目录 Python I/O 概述文件对象与基本操作 2.1 打开文件:open 与模式2.2 读取数据2.3 写入数据2.4 使用 with 自动管理文件 文件指针与随机访问路径操作:os、os.path 与 pathlib 4.1 os 模块与 os.path 基础4.2 现代路径…...

大裁员前夜Meta员工疯狂「薅羊毛」;腾讯操作系统层级AI助手“马维斯”正式上工;GitHub确认遭入侵:3800个内部仓库被窃取 | 极客头条

「极客头条」—— 技术人员的新闻圈!CSDN 的读者朋友们好,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。(投稿或寻求报道:zhanghycsdn.net)整理 | 苏宓出品 | CSDN(ID&…...

STL转STEP格式转换实战指南:如何实现CAD模型的无缝迁移与工程化应用

STL转STEP格式转换实战指南:如何实现CAD模型的无缝迁移与工程化应用 【免费下载链接】stltostp Convert stl files to STEP brep files 项目地址: https://gitcode.com/gh_mirrors/st/stltostp 在数字化制造与工程设计领域,STL格式作为3D打印的标…...

8. Python 模块与包 深度解析

Python 模块与包 深度解析 目录 模块与包的概念模块基础 2.1 模块即 .py 文件2.2 import 语句与 from ... import2.3 模块搜索路径 sys.path 模块的编译与缓存包 4.1 常规包与 __init__.py4.2 命名空间包4.3 相对导入与绝对导入 __name__ 与 "__main__"模块与包的组…...

Lean开发环境终极解决方案:3步完成版本管理工具配置

Lean开发环境终极解决方案:3步完成版本管理工具配置 【免费下载链接】elan The Lean version manager 项目地址: https://gitcode.com/gh_mirrors/el/elan elan是专为Lean定理证明器设计的智能版本管理工具,能够自动处理Lean和lake二进制文件的安…...

3步掌握抖音批量下载:终极免费无水印下载器完整指南

3步掌握抖音批量下载:终极免费无水印下载器完整指南 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support…...

BarrageGrab:企业级多平台直播弹幕一体化采集解决方案

BarrageGrab:企业级多平台直播弹幕一体化采集解决方案 【免费下载链接】BarrageGrab 抖音快手bilibili直播弹幕wss直连,非系统代理方式,无需多开浏览器窗口 项目地址: https://gitcode.com/gh_mirrors/ba/BarrageGrab 在直播电商、游戏…...

FreeMove:Windows系统C盘空间终极清理方案,无需重装释放数十GB

FreeMove:Windows系统C盘空间终极清理方案,无需重装释放数十GB 【免费下载链接】FreeMove Move directories without breaking shortcuts or installations 项目地址: https://gitcode.com/gh_mirrors/fr/FreeMove 还在为C盘空间不足而烦恼吗&…...

千问 LeetCode 2543. 判断一个点是否可以到达 Java实现

这道题的核心思路是从终点反向推导回起点,并利用最大公约数(GCD) 的性质来判定。核心思路从 (1, 1) 正向推导到 (targetX, targetY) 路径太多,不好下手。我们反过来想:从 (targetX, targetY) 能否通过逆操作回到 (1, 1…...

5.12linux自学

1,安装vMware2,部署Kali Linux虚拟机3,了解Linux的优点:多人多任务环境安全性高4,格式化的概念:每种操作系统所配置的文件属性/权限并不相同,为了存放这些文件所需的数据,因此就需要进行格式化,以成为操作系…...

Warcraft Helper:现代Windows环境下魔兽争霸3兼容性技术解决方案深度解析

Warcraft Helper:现代Windows环境下魔兽争霸3兼容性技术解决方案深度解析 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper Warcraft Helper…...

告别焦虑等待!Elsevier投稿状态自动追踪插件,让你的科研进度一目了然

告别焦虑等待!Elsevier投稿状态自动追踪插件,让你的科研进度一目了然 【免费下载链接】Elsevier-Tracker 项目地址: https://gitcode.com/gh_mirrors/el/Elsevier-Tracker 还在每天刷新Elsevier投稿页面,只为查看论文审稿状态吗&…...

注意力机制:多头注意力机制、分组查询注意力机制、多查询注意力机制理论+代码

文章目录导语1.注意力机制2.多头注意力机制3.多查询注意力机制4.分组查询注意力机制5.三者对比导语 注意力机制作为transformer体系中最核心的方法,是NLP、LLM等都绕不开的一部分,多头注意力机制是transformer模型提出的“基石”,分组查询注…...

ZenTimings:AMD Ryzen用户的硬件监控与性能优化利器

ZenTimings:AMD Ryzen用户的硬件监控与性能优化利器 【免费下载链接】ZenTimings 项目地址: https://gitcode.com/gh_mirrors/ze/ZenTimings 在AMD Ryzen平台日益普及的今天,如何精准掌握硬件运行状态成为许多用户关心的问题。ZenTimings作为一款…...

ThinkPad风扇控制终极指南:TPFanCtrl2让你的笔记本更安静更智能

ThinkPad风扇控制终极指南:TPFanCtrl2让你的笔记本更安静更智能 【免费下载链接】TPFanCtrl2 ThinkPad Fan Control 2 (Dual Fan) for Windows 10 and 11 项目地址: https://gitcode.com/gh_mirrors/tp/TPFanCtrl2 还在为ThinkPad笔记本风扇噪音而烦恼吗&…...

抖音无水印批量下载终极指南:douyin-downloader免费神器

抖音无水印批量下载终极指南:douyin-downloader免费神器 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback sup…...

深度解析Unity游戏实时翻译插件:XUnity.AutoTranslator的5大实战应用场景与架构设计

深度解析Unity游戏实时翻译插件:XUnity.AutoTranslator的5大实战应用场景与架构设计 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator XUnity.AutoTranslator是一款革命性的Unity游戏实时翻译插…...

HoRain云--AI 底层架构

🎬 HoRain 云小助手:个人主页 ⛺️生活的理想,就是为了理想的生活! ⛳️ 推荐 前些天发现了一个超棒的服务器购买网站,性价比超高,大内存超划算!忍不住分享一下给大家。点击跳转到网站。 目录 ⛳️ 推荐 …...

ContentBranch+CFBranch混合电影推荐模型|全网独家复现,深度学习实战篇 引入双分支融合架构,兼顾内容特征与协同信号、助力冷启动缓解、数据稀疏性优化、推荐精度有效涨点

目录 一、前言:混合推荐模型的核心价值与行业痛点 二、模型核心原理(全网独家拆解,通俗易懂) 2.1 整体架构逻辑 2.2 ContentBranch(内容分支)原理详解 2.3 CFBranch(协同过滤分支)原理详解 2.4 特征融合与预测层原理 2.5 模型优势总结 三、环境搭建(全平台适配…...

免费开源AMD Ryzen硬件调试神器:SMUDebugTool完整使用指南

免费开源AMD Ryzen硬件调试神器:SMUDebugTool完整使用指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https:…...

穆斯堡尔谱—固态研究中不可或缺的工具

...