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

10分钟搞懂 RAG:大模型如何边检索边生成答案

幻觉Hallucination很多人第一次用大模型时都会有一种感觉它好像什么都懂什么都能答。但真把它放到实际场景里很快就会发现问题没有那么简单。比如你去问公司的报销规则、某个项目的最新文档内容或者你自己知识库里某条笔记的细节它有时会答得很泛有时会答得不准甚至一本正经地说错这种现象通常被称为幻觉Hallucination。而更多时候问题并不只是“说错了”这么简单而是模型虽然学过大量通用知识却并不知道你手头这份最新资料、这套内部文档或者这批不断变化的私有数据。于是一个很现实的矛盾就出现了我们希望模型回答得像个真正“查过资料的人”但它很多时候却只能像个“凭印象作答的人”。照资料找答案的人针对幻觉问题一个很自然的想法就是不要让模型一上来就直接回答而是先去查和问题相关的资料再根据查到的内容组织答案。RAG中文通常叫“检索增强生成”Retrieval-Augmented Generation核心思想其实并不复杂把“找资料”和“生成答案”拆成两个步骤。先由系统从知识库中检索出和问题最相关的文档片段再把这些片段和用户的问题一起交给大模型让它基于资料生成最终回答。这样一来模型就不再只是依赖自己参数里记住的知识“凭印象作答”而更像是在“开卷答题”。针对这个问题RAG 的思路其实很直接不要让模型直接凭记忆回答而是先去外部知识库中查找相关资料再结合查到的内容生成答案。它本质上结合了两部分能力一部分是模型参数中已经学到的语言能力、常识和推理能力也就是参数化部分另一部分是从外部文档中实时检索到的信息也就是非参数化部分。前者负责“怎么说”后者负责“根据什么说”两者结合起来模型的回答就不再只是凭印象生成而是尽量建立在外部资料之上。进一步来说这种方法还可以分成两种典型形式。一种是先检索出一组相关资料再基于这组固定资料生成整段答案另一种则更灵活允许模型在生成答案的不同位置参考不同的检索结果。前者更直观、更稳定后者更细粒度也更复杂。信息堵塞非参数部分的引入扩大了系统可访问的知识范围但也带来了新的瓶颈信息规模迅速增长而单个问题所需要的有效信息却通常十分稀疏。也就是说知识库中的绝大多数内容在当前问题下都是无关或弱相关的真正决定回答质量的往往只是其中少量高度相关的片段。当系统无法在大规模外部信息中高效识别这些高价值内容时信息接入能力就会进一步演化为信息堵塞问题可用知识虽然更多了但真正能够进入生成阶段、并对回答产生正向作用的信息反而更难被准确选出。向量数据库--照着标签找文献随着外部知识的引入系统面临的核心问题不再是“是否拥有足够多的信息”而是“如何在大量信息中找到真正有用的那一小部分”。对于一个具体问题而言知识库中真正相关的内容通常只占很小比例其余大部分信息虽然客观存在却并不能直接支持当前回答。于是非参数知识规模越大系统越容易面临新的挑战有效信息被淹没在大量低相关内容中导致上下文利用率下降甚至影响最终生成质量。换句话说外部知识的增长并不天然等于回答能力的提升只有先完成高质量的信息筛选知识接入才真正有意义。为了从大量外部信息中快速找到真正有用的内容向量数据库通常会先把文本转换成向量表示。这里的“向量”可以理解为把一句话投射到另一个可计算的空间里用一组数字来近似表示它的语义特征。真实系统里这个向量往往是几百维甚至上千维的但为了方便理解我们可以先假设每条文本都被映射成一个二维向量。比如某条文档片段被表示为 (0.9,0.2)(0.9, 0.2)(0.9,0.2)用户问题被表示为 (0.8,0.3)(0.8, 0.3)(0.8,0.3)它们在这个空间里的位置很接近就说明两者在语义上更相似而另一条无关文本如果被表示为 (0.1,0.95)(0.1, 0.95)(0.1,0.95)它和问题向量距离较远相关性通常就更弱。因此当用户提出问题后系统并不是去逐字匹配全部文档而是先把问题也映射成向量再在数据库中寻找距离最近、也就是语义最接近的若干文本片段并把它们选出来交给后续生成模块。这样向量数据库就把“从海量信息中筛选少量有效信息”的问题转化成了“在向量空间中寻找最相近内容”的问题。最后的最后在实际应用中RAG 的价值并不只是给模型额外接入一批外部知识而是让模型在回答之前先从当前任务相关的资料中找到最有用的那一部分再基于这些信息生成结果。它特别适合那些知识量大、信息更新快、且回答必须依赖具体上下文的工业场景。例如在企业知识库问答、智能客服、运维支持、风控与反诈系统中如果模型只依赖参数中的通用知识往往只能给出泛化、模糊的回答而在 RAG 框架下系统会先检索与当前问题最相关的产品手册、制度文档、错误码说明、历史工单、风险规则、案例库或法条依据再由模型组织成面向当前问题的回答。这样输出就不再只是“看起来合理”的通用回复而是建立在具体资料和证据基础上的场景化结果。进一步看RAG 的一个重要延伸价值就是个性化。因为它接入的并不一定只是公共业务知识也可以是当前用户相关的外部信息所以同一个问题在不同用户、不同场景下可以得到不同答案。比如在个性化助手里同样一句“我现在最需要注意什么”系统会因为检索到的日程、待办和历史记录不同而生成不同提醒在反诈系统里同样一句可疑话术也会因为检索到的案例、规则、用户当前对话内容和风险上下文不同而输出不同层次的分析结果。这正是 RAG 的特点所在它不是让模型单纯“记住更多知识”而是让模型先拿到当前问题真正相关的外部信息再据此回答。

相关文章:

10分钟搞懂 RAG:大模型如何边检索边生成答案

幻觉(Hallucination)很多人第一次用大模型时,都会有一种感觉:它好像什么都懂,什么都能答。但真把它放到实际场景里,很快就会发现问题没有那么简单。比如你去问公司的报销规则、某个项目的最新文档内容&…...

OpenClaw数据整理术:千问3.5-9B自动化清洗Excel数据

OpenClaw数据整理术:千问3.5-9B自动化清洗Excel数据 1. 为什么需要AI驱动的数据清洗 每次面对杂乱无章的Excel表格时,我都忍不住想起上个月那个加班的深夜。市场部发来的客户名单里,同一家公司的联系人分散在十几行,电话号码格式…...

Java安全编程与静态分析实战

由于当前年份尚未到达2026年,且未明确具体代码功能需求,以下提供一份通用的Java代码质量与静态分析实战示例,涵盖常见代码规范、静态分析工具集成和单元测试实践。假设需求为“实现一个安全的字符串处理工具类并集成静态分析”:代…...

可解释AI(XAI):让黑盒模型变得透明

XAI在软件测试中的革命性意义在人工智能(AI)技术迅猛发展的今天,深度学习等黑盒模型已成为软件系统的核心组件,广泛应用于推荐系统、自动驾驶、金融风控等领域。然而,这些模型的决策过程往往像“黑箱”一样不可预测&am…...

Django怎么进行依赖注入_Python在Django中实现依赖解耦模式

Django 不支持原生依赖注入,需手动通过构造函数参数等方式显式传递依赖;推荐在视图初始化时传入服务实例,避免全局状态、单例污染及 settings 动态导入,中小项目优先采用最简构造函数注入方式。依赖注入在 Django 里不是靠框架原生…...

压力测试如何模拟真实用户行为?告别“简单粗暴”

从“机械并发”到“行为仿真”的范式转变传统压力测试常陷入数量陷阱——过度关注并发用户数、请求吞吐量等表面指标,却忽视用户行为的真实性和复杂性。这种“简单粗暴”的方式导致测试结果与生产环境严重脱节:测试时系统表现优异,真实流量下…...

如何安装Oracle 12c Cloud Control_OMS服务端组件与Agent部署

OMS安装卡在“Configuring Enterprise Manager Cloud Control”阶段主因是数据库连接失败或SYSAUX表空间不足;Agent状态为“Unknown”多因证书未信任或OMS URL缺失协议/端口;升级失败系OMS更新目录未手动同步补丁;Windows监控SQL Server需启用…...

OpenClaw备份恢复指南:Phi-3-vision-128k技能配置迁移技巧

OpenClaw备份恢复指南:Phi-3-vision-128k技能配置迁移技巧 1. 为什么需要备份OpenClaw环境 上周我的主力开发机突然硬盘故障,不得不紧急更换设备。当我面对一台全新的MacBook Pro时,最头疼的不是重装开发环境,而是如何恢复那个精…...

一个简洁易用的 Delphi JSON 封装库,基于 System.JSON`单元封装,提供更直观的 API幼

一、前言:什么是 OFA VQA 模型? OFA(One For All)是字节跳动提出的多模态预训练模型,支持视觉问答、图像描述、图像编辑等多种任务,其中视觉问答(VQA)是最常用的功能之一——输入一张…...

OpenClaw语音控制扩展:千问3.5-27B实现本地语音指令识别

OpenClaw语音控制扩展:千问3.5-27B实现本地语音指令识别 1. 为什么需要语音控制OpenClaw? 去年冬天的一个深夜,我正在赶制一份数据分析报告。双手忙着在Excel和Python脚本间切换时,突然冒出一个念头:如果能用语音直接…...

写程序相册内页分隔卡,复古做旧风,输出:纪念册/影楼增值项目。

构建一个矢量图形生成算法,模拟激光切割/雕刻出的复古质感分隔卡,作为影楼的增值项目。项目名称:VintageSeperator (复古相册分隔卡生成器)一、 实际应用场景描述场景设定为高端婚纱影楼或独立摄影工作室的后期制作部门。为了提升客单价&…...

TMC7300单线UART电机驱动库技术解析与ESP32实践

1. TMC7300驱动库技术解析:面向嵌入式工程师的UART单线直流电机控制实践指南TMC7300是Trinamic(现属Analog Devices)推出的高集成度、低功耗直流电机驱动IC,专为电池供电、空间受限及对EMI敏感的应用场景设计。其核心创新在于采用…...

Go 语言构建 Agent 服务的优势

Go 语言构建 Agent 服务的核心优势与工程实践全解析作者: 架构师阿哲 发布时间: 202X-XX-XX 阅读时长: 约45分钟 字数统计: 12,870前置说明:系统需求与读者画像的校准 首先,我注意到当前的输入上下文存在一…...

800V高压机柜来袭,两相液冷为何成了“刚需“?

800V高压机柜来袭,两相液冷为何成了"刚需"?当一个机柜的功率突破120kW,传统散热方案正在触及物理天花板。2025年GTC大会上,英伟达抛出了一颗"深水炸弹":从2027年起,数据中心电力基础设…...

原生Android工程与Unity互相调用

原生Android工程与Unity互相调用教程,包含代码实现和注意事项。以下是详细步骤:一、Unity调用Android原生方法1. Android端准备在Android Studio中创建原生模块:// MyNativePlugin.java package com.example.unityplugin;import android.util…...

轻量级替代方案:OpenClaw+Phi-3-vision-128k-instruct在树莓派上的极限部署

轻量级替代方案:OpenClawPhi-3-vision-128k-instruct在树莓派上的极限部署 1. 为什么要在树莓派上折腾多模态AI? 去年夏天,我在整理家庭照片时突然意识到一个问题:现有的云相册服务虽然方便,但自动分类和搜索功能总是…...

ollama v0.20.4 正式发布!MLX 性能大幅提升 , Gemma4 闪光注意力全面启用

前言 2026年4月9日,本地大模型运行框架ollama正式推出v0.20.4 Latest稳定版本。本次更新围绕MLX硬件加速性能优化、Gemma4系列模型支持、前端代码规范、Safetensors模型创建流程、函数调用输出能力、MLX动态库兼容、集成测试体系搭建等多个核心维度展开,…...

2026-04-10:连接非零数字并乘以其数字和Ⅱ。用go语言,对每个查询区间 [l, r],按以下步骤处理字符串中的连续片段 s[l..r]: 1.在该子串中按从左到右的顺序,把所有“非零”字符数字

2026-04-10:连接非零数字并乘以其数字和Ⅱ。用go语言,对每个查询区间 [l, r],按以下步骤处理字符串中的连续片段 s[l…r]: 1.在该子串中按从左到右的顺序,把所有“非零”字符数字依次拼接成一个新整数 x;如…...

ESP32驱动A7608SA-H LTE Cat.1模组全栈固件库

1. 项目概述Modem-a7608sa-library是一个专为 ESP32 平台深度优化的开源固件库,面向 SIMCom A7608SA-H LTE Cat.1 模组提供全栈式驱动支持。该模组采用 LCC 封装,集成 LTE-FDD 频段(B1/B3/B5/B8/B20/B28)、GSM/GPRS(90…...

OpenClaw学习助手:Qwen3.5-9B生成Anki记忆卡片与错题集

OpenClaw学习助手:Qwen3.5-9B生成Anki记忆卡片与错题集 1. 为什么需要AI驱动的学习助手? 作为一名经常需要记忆大量知识点的学生,我一直在寻找更高效的学习方法。传统的手工制作Anki卡片不仅耗时耗力,而且很难保证知识点的系统性…...

实时行情系统设计:从协议选择到高可用架构,再到数据源选型睬

一、核心问题及解决方案(按踩坑频率排序) 问题 1:误删他人持有锁——最基础也最易犯的漏洞 成因:释放锁时未做身份校验,直接执行 DEL 命令删除键。典型场景:服务 A 持有锁后,业务逻辑耗时超过锁…...

【GraalVM静态镜像内存优化终极指南】:20年JVM专家亲授3大内存压缩技法,启动速度提升87%的私密实践

第一章:GraalVM静态镜像内存优化快速接入全景概览GraalVM 静态镜像(Native Image)通过提前编译(AOT)将 Java 应用编译为独立、无 JVM 依赖的原生可执行文件,在启动速度与内存占用方面具备显著优势。然而&am…...

大模型“入侵”广告推荐

引言:一次失败的“All in LLM”实验去年,某头部信息流平台进行了一次激进的实验:尝试用一个大语言模型(LLM)完全替换其精排层的深度模型。核心逻辑是:既然LLM能理解一切,那么理解用户和内容&…...

OpenClaw二次开发:基于Qwen3-14B扩展自定义自动化协议

OpenClaw二次开发:基于Qwen3-14B扩展自定义自动化协议 1. 为什么需要自定义协议 去年夏天,当我尝试用OpenClaw控制实验室的智能家居设备时,发现现有的指令集无法满足红外遥控和Zigbee设备联动的需求。官方提供的标准协议主要针对办公场景的…...

2025届毕业生推荐的降AI率助手解析与推荐

Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 在内容创作这个范畴里,要降低AIGC也就是人工智能生成内容的那种明显特征&#xf…...

HSA:FcRn中和抗体筛选化学发光检测试剂盒:FcRn-lgG半衰期延长工程化抗体筛选

新生儿Fc受体(FcRn)是一种由FCGRT基因编码的Fcγ受体与β2-微球蛋白(B2M)组成的异源二聚体蛋白。FcRn在超过25种组织中表达,脾脏和肠道中水平最高,其核心功能是结合并保护单体免疫球蛋白G(IgG&a…...

高性能客服系统技术内幕:通过 SpinWait 自旋等待结构体提升高频消息分发性能舶

1. 智能软件工程的范式转移:从库集成到原生框架演进 在生成式人工智能(Generative AI)从单纯的文本生成向具备自主规划与执行能力的“代理化(Agentic)”系统跨越的过程中,.NET 生态系统正在经历一场自该平台…...

科研人福音!PaperOrchestra 把实验日志变投稿论文,文献综述图表全包

AI能替你写论文了?谷歌这个多智能体框架,从实验记录直接生成投稿级论文!研究背景 做AI研究的人都懂那种痛苦:实验跑完了,数据也有了,但把这些东西整理成一篇像样的论文,往往比做实验本身还费劲。…...

节能模式:OpenClaw+Qwen3.5-9B定时任务CPU优化方案

节能模式:OpenClawQwen3.5-9B定时任务CPU优化方案 1. 为什么需要关注OpenClaw的能耗问题 去年冬天,我的MacBook Pro风扇突然在凌晨三点狂转,把我从睡梦中惊醒。排查后发现是OpenClaw正在执行夜间数据抓取任务,Qwen3.5-9B模型的全…...

AI最强模型发布却说太危险不能公开:这次不是演习

Anthropic刚刚发布了一个AI模型,然后说:太危险,不能让你用 :2026年4月7日,Anthropic发布了一个叫Claude Mythos Preview的新模型。它能自主发现数千个零日漏洞,覆盖所有主流操作系统。它能在未经专项安全训练的情况下&…...