news 2026/4/23 14:09:55

大模型应用开发(十六)_RAG概述

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
大模型应用开发(十六)_RAG概述

4. RAG概述


提高大语言模型(LLM)回答的准确性和一致性通常有三种方式:

  • prompt优化:prompt优化可以在文本生成和行为控制上提供初步帮助。
  • RAG(检索增强生成):RAG侧重补充训练数据中没有的或过时的信息
  • fine-tuning(微调):fine-tuning则主要调整模型的行为模式,如语气、回答一致性和语言风格。

OpenAl 这个图就把优化上下文信息内容LLM 行为优化分两个轴,一个针对 what the model needs to know ,一个针对 how the model needs to act

黑色方块箭头指的是常见优化LLM accuracy保持consistent behavior的常规步骤:

1、初始提示 (Prompt):首先从一个基础提示(Prompt)开始。提示是你提供给模型的问题或输入,模型会根据这个提示生成结果

2、添加静态的 Few-Shot示例:Few-shot学习是指在提示中添加几个示例,这些示例展示了你期望的输入-输出关系。通过静态地添加这些示例,你可以提高模型生成结果的一致性。同时可以evals评估测试

3、加入动态检索步骤:通过检索机制,模型可以动态地根据问题获取与之相关的 Few-shot 示例。这有助于提高模型的性能,因为它可以在每次生成时获取到更相关的上下文。

4、准备数据集并进行微调:为了提高模型的一致性,你需要准备一个包含 50 个以上示例的数据集,并在这个数据集上对模型进行微调

5、优化检索和加入事实检查步骤::索机制帮助模型找到更相关的上下文,而事实检査步骤可以帮助检测模型生成的错误(也称为“幻觉”),以确保模型生成的内容更加准确。

6、再次训练模型:在加入了新的检索机制和事实检査步骤后,你可以用增强的输入数据重新训练模型,以进一步提高性能


RAG技术本质

4.1 RAG 是什么

RAG(Retrieval-Augmented Generation)是一种结合了信息检索(Retrieval)生成式模型(Generation)的 AI 技术框架。

它的核心思想是:

在生成回答之前,先从外部知识库中检索到相关信息,再将这些信息与用户问题一同输入大语言模型,让模型“带着事实”回答问题。

这样,模型的回答不仅更加准确可解释实时更新,还能避免模型“幻觉”(hallucination)。


4.2 RAG 的基本流程

RAG 通常分为两个阶段

1️⃣ 检索阶段(Retrieval)

  • 用户输入一个查询(query)。
  • 系统通过向量检索(如 FAISS、Milvus、Elasticsearch)在知识库中寻找最相关的文档片段。
  • 输出若干条与问题相关的文本内容(通常称为contextevidence)。

2️⃣ 生成阶段(Generation)

  • 将检索到的上下文与用户问题一起输入到大语言模型(如 GPT、Llama、Claude)。
  • 模型在这些上下文的辅助下生成答案。

4.3 RAG 架构示意

用户问题 ↓ [检索模块] → 检索外部知识库(向量数据库) ↓ 返回相关文档 [生成模块] ← 将问题 + 检索结果输入大模型 ↓ 生成增强回答

4.4 RAG 的关键组件

组件作用常见实现
文档预处理将知识源(PDF、网页、数据库)拆分成段落块(chunks)LangChain、LlamaIndex
向量化(Embedding)把文本转成向量用于相似度检索OpenAI Embeddings、Sentence-BERT、bge-large-zh
向量数据库存储并检索文本向量FAISS、Milvus、Pinecone、Chroma
检索策略根据相似度、BM25、RRF 等算法选出上下文similarity search、hybrid search
生成模型根据检索结果生成回答GPT-4、Llama3、Claude、Qwen
Prompt 模板控制生成阶段的上下文格式“Context + Question + Instruction” 模板
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 14:14:16

三菱FX5U与台达DT330温控器通讯实现远程双设定

三菱FX5U与3台台达DT330温控器通讯程序本体远程双设定(SL5U-14) 功能:通过三菱FX5U本体485口,结合触摸屏网口,实现对3台台达DT330温控器设定温度,读取温度,以及在温控器本体与远程触摸屏都能同时改变设定温度。 反应灵…

作者头像 李华
网站建设 2026/4/21 16:19:33

【毕业设计】基于SpringBoot+Vue工厂生产设备维护管理系统设计和实现基于springboot工厂生产设备维护管理系统的设计(源码+文档+远程调试,全bao定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/4/19 18:35:14

信创环境下的“构建”之痛:如何解决复杂项目依赖管理与制品库的国产化适配难题?

在信创改造的全流程中,“构建环节” 是连接研发与交付的核心枢纽,却常因依赖关系错综复杂、制品库国产化适配不足陷入效率瓶颈与合规风险。当企业将传统架构迁移至麒麟 / 统信操作系统、鲲鹏 / 飞腾芯片、达梦 / OceanBase 数据库等国产环境时&#xff0…

作者头像 李华
网站建设 2026/4/18 12:40:15

【必藏】AI智能体架构完全指南:理论到代码的全方位学习路径

这篇文章介绍了一个GitHub学习资源项目,为开发者提供了一条结构化、实用且深入的AI智能体学习路径。项目通过Jupyter Notebook实现了从基础到高级的17种智能体架构,包括反思、工具使用、ReAct、规划、多智能体系统、黑板系统等。每种架构都有详细解释和可…

作者头像 李华
网站建设 2026/4/20 20:29:52

Spring Boot:Dubbo自定义路由器Router

通过自定义一个spring-boot-starter来实现自定义路由。 一:自定义Web过滤器 1.1 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi=

作者头像 李华
网站建设 2026/4/23 1:55:06

Java毕设选题推荐:基于SpringBoot+Vue非物质文化遗产数字化传承网站基于springboot非物质文化遗产数字化传承【附源码、mysql、文档、调试+代码讲解+全bao等】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华