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

收藏 | 小白程序员必看:轻松入门RAG技术,让大模型拥有你的专业知识领域

收藏 | 小白程序员必看轻松入门RAG技术让大模型拥有你的专业知识领域本文介绍了RAG检索增强生成技术一种经济高效地解决大模型缺乏特定领域知识的方案。文章详细阐述了RAG的工作流程用户请求→查询资料→获取相关内容→组成提示词→生成回复。重点讲解了向量转换和向量数据库在实现语义匹配中的关键作用以及信息提取、文本分块、向量转换和存储的索引过程。最后提及了RAG技术的发展趋势如混合搜索、重排序模型和知识图谱应用为开发者构建RAG应用提供了理论基础。一、前提虽然我们说大模型的特点之一是知识丰富但这里的知识仅限于通用的知识也就是网上能够很容易找到的知识。对于一些特定的知识比如你所在业务领域的知识它就一无所知了。个中缘由不言而喻大模型训练时根本不可能拿到你们公司的数据。如果我打算为自己的业务开发一个聊天机器人也就是说让聊天机器人知道我的业务该怎么办呢抛开训练一个属于自己的大模型这种成本高昂的办法常见的解决方案有两种模型微调使用业务信息对已经训练好的模型进行微调。RAG在上下文中带有业务信息让大模型据此进行整合。* 于模型微调RAG 的方案成本要低一些而且更加灵活实现起来也更简单一些所以它也成为了现在解决这个问题的首选。这一讲我们就来了解一下 RAG。二、RAGRAG 是 Retrieval-Augmented Generation 的缩写也就是检索增强生成。这是什么意思呢就是通过检索的方式对要处理的内容进行增强之后再去生成。我们把大模型应用和检索增强结合起来理解一下。大模型有很多不知道的东西比如我们的业务。怎么让大模型了解我们的业务呢最简单的方式就是每次请求时把业务相关的内容放在提示词里告诉大模型。问题是业务相关的内容从何而来这就是我们要在本地检索的内容。换言之所谓检索增强生成就是我们在本地检索到相关的内容把它增强到提示词里然后再去做内容生成。下面是一个 RAG 系统处理用户请求的极简流程示意图1、用户发起请求 2、根据用户的问题在相关资料中进行查询 3、获取到资料中的相关内容 4、组成完整的提示词发给大模型 5、将大模型的回复发给用户* 对比普通的聊天机器人差别就是在这个过程中要去到相关资料中进行查询再将查询得到的相关信息和用户问题拼装成完整的提示词发给大模型。* 有了对 RAG 流程的初步认识接下来的问题就是怎样到相关资料中查询。既然要查询必然是有个地方能够存储这些资料的。对于程序员来说最熟悉的存储方案一定是数据库。* 对于大模型应用开发而言我们要根据文本去找相关内容。在业务系统开发中我们经常做的文本匹配是用 SQL 语句的 like。但是这种匹配对于大模型应用而言就显得非常单薄了因为它只能进行“字面”意义上的匹配无法进行“语义”层面的匹配。如果想进行“语义”的匹配该怎么做呢这就轮到向量登场了。三、向量和向量数据库许多 AI 算法处理的都不是文字而是向量。采用向量的方案“语义”的匹配程度就转换成了向量之间的相似程度。计算向量相似度的算法有很多比如余弦相似度、内积、欧氏距离等等。有了向量当用户提出问题时处理过程就变成了将问题转换为向量然后计算向量之间的距离找到与问题向量最接近的文档向量从而实现“语义”的匹配。3.1、怎样将文本转换成向量现在常见的做法就是把这个过程训练成一个模型。在开源社区里已经有很多人提供了这样的模型我们需要做的就是把模型部署起来然后调用这个模型。当然也有人把已经训练好的模型部署成一个服务这样我们就可以直接调用现成的服务。OpenAI 就提供了一个专门负责将文本转换成向量的 API——Embeddings。我们可以根据需要选择自己部署模型或是选择别人提供的服务。不同的 Embedding 模型之间的差异主要取决于训练样本比如有的模型会在中文处理上表现得比较好。到这里我们知道了可以用向量进行文本内容的匹配。但是我们要到哪里去匹配呢3.2、向量数据库正如我们处理任何业务数据一样在使用数据之前第一步需要做的是存储业务数据。在 RAG 系统中我们要把数据存放到哪里呢我们需要一个数据库只不过我们需要的既不是 Oracle、MySQL 这样的关系数据库也不是 MongoDB、Redis 这样的 NoSQL 数据库。因为我们后续处理的都是向量所以我们需要的是向量数据库。向量数据库并不是突然冒出来的。2000 年左右加州大学伯克利分校的研究人员开始尝试开发向量数据库用来存储和查询高维向量。2010 年VectorWise 公司发布了第一个商业向量数据库。随着 AI 应用的兴起人们对于向量数据库的兴趣日渐浓厚。在大模型兴起之后随着 RAG 的蓬勃发展向量数据库一下子站到舞台中央开始成为许多大模型应用的重要组件。向量数据库与传统数据库有很大的差别在使用方式上传统数据库搜索信息倾向于精确匹配而向量数据库的匹配则是语义上的接近。在实现上二者也存在不小的差别比如由于向量本身通常维度会很多如果按照传统数据库的方式直接进行存储将会带来很多问题。向量数据库需要把向量数据作为一个完整的单元处理底层存储结构也需要根据这个特点进行规划。另外向量数据格式也相对单一每个维度的数据往往都是固定的数据格式浮点数、二进制整数等。所以向量数据库就可以有针对性地找到一些优化手段比如相关的数学运算可以更好地利用 CPU 缓存机制加速甚至可以利用 CPU/GPU 的硬件特性再比如采用高效的数据压缩技术这样就能够显著地减少存储空间。四、索引到这里我们讲的都是怎样使用数据也就是检索的过程。其实还有一个关键的问题没有解决这些数据从何而来怎么跑到向量数据库里去的。这就是 RAG 另外一个重要的过程索引Indexing。下面是一个常见的索引过程在这个过程里面我们会先对信息源做一次信息提取。信息源可能是各种文档比如 Word 文档、PDF 文件Web 页面甚至是一些图片。从这些信息源中我们把内容提取出来也就是其中的文本。接下来我们会把这些文本进行拆分将其拆分成更小的文本块。之所以要拆分主要是原始的文本可能会比较大这并不利于检索还有一点重要原因是我们前面说过要把检索到的信息拼装到提示词里过大的文本可能会造成提示词超过模型有限的上下文窗口。再来就是把文本块转换成向量也就是得到 Embedding 的过程。前面我们说过这个过程往往是通过训练好的模型来完成的。到这里我们就把信息转换成了向量。最后一步就是把得到的向量存储到向量数据库中供后续的检索使用。至此我们对常见的 RAG 流程已经有了基本了解。但实际上RAG 领域正处于一个快速发展的过程中有很多相关技术也在不断地涌现虽然采用向量搜索对于语义理解很有帮助但一些人名、缩写、特定 ID 之类的信息却是传统搜索的强项有人提出混合搜索的概念将二者结合起来通过各种搜索方式我们会得到很多的候选内容但到底哪个与我们的问题更相关有人引入了重排序Rerank模型以此决定候选内容与查询问题的相关程度除了在已有方向的努力甚至还有人提出了 RAG 的新方向。我们前面讨论的流程前提条件是把原始信息转换成了向量但这本质上还是基于文本的更适合回答一些事实性问题。它无法理解更复杂的关系比如我的朋友里谁在 AI 领域里工作。所以有人提出了基于知识图谱的 RAG知识图谱是一种结构化的语义知识库特别适合找出信息之间的关联。* 由此你可以看到想要打造一个好的 RAG 应用并不是很容易的一件事但在一些技术框架支持下上手编写一个 RAG 应用却不是什么难事。下一讲我们就自己动手基于 LangChain 现一个 RAG 应用。最后近期科技圈传来重磅消息行业巨头英特尔宣布大规模裁员2万人传统技术岗位持续萎缩的同时另一番景象却在AI领域上演——AI相关技术岗正开启“疯狂扩招”模式据行业招聘数据显示具备3-5年大模型相关经验的开发者在大厂就能拿到50K×20薪的高薪待遇薪资差距肉眼可见业内资深HR预判不出1年“具备AI项目实战经验”将正式成为技术岗投递的硬性门槛。在行业迭代加速的当下“温水煮青蛙”式的等待只会让自己逐渐被淘汰与其被动应对不如主动出击抢先掌握AI大模型核心原理落地应用技术项目实操经验借行业风口实现职业翻盘深知技术人入门大模型时容易走弯路我特意整理了一套全网最全最细的大模型零基础学习礼包涵盖入门思维导图、经典书籍手册、从入门到进阶的实战视频、可直接运行的项目源码等核心内容。这份资料无需付费免费分享给所有想入局AI大模型的朋友扫码免费领取全部内容部分资料展示1、 AI大模型学习路线图2、 全套AI大模型应用开发视频教程从入门到进阶这里都有跟着老师学习事半功倍。3、 大模型学习书籍文档4、AI大模型最新行业报告2025最新行业报告针对不同行业的现状、趋势、问题、机会等进行系统地调研和评估以了解哪些行业更适合引入大模型的技术和应用以及在哪些方面可以发挥大模型的优势。5、大模型大厂面试真题整理了百度、阿里、字节等企业近三年的AI大模型岗位面试题涵盖基础理论、技术实操、项目经验等维度每道题都配有详细解析和答题思路帮你针对性提升面试竞争力。6、大模型项目实战配套源码学以致用在项目实战中检验和巩固你所学到的知识同时为你找工作就业和职业发展打下坚实的基础。学会后的收获• 基于大模型全栈工程实现前端、后端、产品经理、设计、数据分析等通过这门课可获得不同能力• 能够利用大模型解决相关实际项目需求 大数据时代越来越多的企业和机构需要处理海量数据利用大模型技术可以更好地处理这些数据提高数据分析和决策的准确性。因此掌握大模型应用开发技能可以让程序员更好地应对实际项目需求• 基于大模型和企业数据AI应用开发实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能 学会Fine-tuning垂直训练大模型数据准备、数据蒸馏、大模型部署一站式掌握• 能够完成时下热门大模型垂直领域模型训练能力提高程序员的编码能力 大模型应用开发需要掌握机器学习算法、深度学习框架等技术这些技术的掌握可以提高程序员的编码能力和分析能力让程序员更加熟练地编写高质量的代码。扫码免费领取全部内容这些资料真的有用吗这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理现任上海殷泊信息科技CEO其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证服务航天科工、国家电网等1000企业以第一作者在IEEE Transactions发表论文50篇获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。资料内容涵盖了从入门到进阶的各类视频教程和实战项目无论你是小白还是有些技术基础的技术人员这份资料都绝对能帮助你提升薪资待遇转行大模型岗位。这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

相关文章:

收藏 | 小白程序员必看:轻松入门RAG技术,让大模型拥有你的专业知识领域

收藏 | 小白程序员必看:轻松入门RAG技术,让大模型拥有你的专业知识领域 本文介绍了RAG(检索增强生成)技术,一种经济高效地解决大模型缺乏特定领域知识的方案。文章详细阐述了RAG的工作流程:用户请求→查询资…...

Nomic-Embed-Text-V2-MoE赋能Python爬虫:智能内容分析与去重

Nomic-Embed-Text-V2-MoE赋能Python爬虫:智能内容分析与去重 你是不是也遇到过这样的烦恼?写了个Python爬虫,吭哧吭哧爬了几万条新闻或者商品信息,结果发现里面一大堆内容都是重复的,或者只是换了个说法。用关键词去重…...

Vue Toast组件:轻量级通知解决方案的无侵入式集成实践

Vue Toast组件:轻量级通知解决方案的无侵入式集成实践 【免费下载链接】vue-sonner 🔔 An opinionated toast component for Vue. 项目地址: https://gitcode.com/gh_mirrors/vu/vue-sonner 在现代Web应用开发中,用户交互反馈是提升体…...

Next-Admin:基于Next.js的企业级中后台管理系统技术评估与实施指南

Next-Admin:基于Next.js的企业级中后台管理系统技术评估与实施指南 【免费下载链接】next-admin An out-of-the-box admin based on NextJS and AntDesign | 一款基于nextjsantd5.0的中后台系统 项目地址: https://gitcode.com/gh_mirrors/ne/next-admin Nex…...

3步开启智能歌词管理:告别手动搜索,拥抱高效音乐体验

3步开启智能歌词管理:告别手动搜索,拥抱高效音乐体验 【免费下载链接】163MusicLyrics Windows 云音乐歌词获取【网易云、QQ音乐】 项目地址: https://gitcode.com/GitHub_Trending/16/163MusicLyrics 你是否曾在深夜听到一首动人的歌曲&#xff…...

AI Agent社交网络:为什么这是比AI工具更值得关注的方向?

2026年,AI Agent已经从概念走向落地。从AutoGPT到各类AI助手产品,Agent的能力在不断提升。但有一个问题值得关注:当AI Agent越来越强大,它们之间需要社交吗?今天从行业角度,聊聊AI Agent社交网络这个话题。…...

python沉浸式戏曲文化体验系统vue3

目录 系统架构设计前端实现方案后端Python服务沉浸式体验关键技术开发里程碑计划测试策略部署方案 项目技术支持源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作 系统架构设计 采用前后端分离架构,前端使用Vue3TypeScriptPinia构…...

收藏!小白程序员必备:轻松入门大模型智能体架构的六种设计模式

收藏!小白程序员必备:轻松入门大模型智能体架构的六种设计模式 本文介绍了大模型智能体的六种设计模式,包括单智能体、网络、监督者、工具化监督者、层级和自定义工作流模式。多智能体系统通过职责分配解决了单智能体扩展性问题,提…...

Yuxi-Know终极部署指南:5步解决大模型RAG知识库常见问题

Yuxi-Know终极部署指南:5步解决大模型RAG知识库常见问题 【免费下载链接】Yuxi-Know 基于大模型 RAG 知识库与知识图谱的问答平台。Llamaindex VueJS Flask Neo4j。大模型适配 OpenAI、国内主流大模型平台的模型调用、本地 vllm 部署。 项目地址: https://gitc…...

5大优势:邱锡鹏《神经网络与深度学习》如何帮新手系统掌握AI核心技术

5大优势:邱锡鹏《神经网络与深度学习》如何帮新手系统掌握AI核心技术 【免费下载链接】nndl.github.io 《神经网络与深度学习》 邱锡鹏著 Neural Network and Deep Learning 项目地址: https://gitcode.com/GitHub_Trending/nn/nndl.github.io 神经网络与深…...

AI辅助数据库设计:让快马平台智能生成优化过的社区论坛系统数据架构

今天想和大家分享一个用AI辅助设计数据库的实践案例——社区论坛系统的数据架构设计。整个过程在InsCode(快马)平台上完成,体验非常流畅。 业务场景分析 社区论坛的核心是内容交互,需要支持用户发帖、互动和管理。通过AI分析,我们确定了几个关…...

STM32平台VL53L8CH多区ToF传感器驱动库详解

1. 项目概述STM32duino VL53L8CH 是专为 STM32 平台(兼容 Arduino API 风格)设计的 VL53L8CH 多区飞行时间(Time-of-Flight, ToF)传感器驱动库。该库并非从零编写,而是基于 ST 官方 VL53LMZ ULD SDK v1.7.0 进行深度适…...

3D Face HRN生产环境部署:支持Nginx反向代理+HTTPS外网安全访问

3D Face HRN生产环境部署:支持Nginx反向代理HTTPS外网安全访问 你想把那个酷炫的3D人脸重建模型放到公网上,让团队成员或客户也能用上吗?直接暴露Gradio的端口,不仅不安全,还可能因为网络问题访问不了。 今天&#x…...

SDMatte透明物体模式深度解析:为什么玻璃杯开启后边缘断裂明显减少?

SDMatte透明物体模式深度解析:为什么玻璃杯开启后边缘断裂明显减少? 1. 透明物体抠图的挑战 透明物体抠图一直是图像处理领域的难题。当我们尝试用传统方法抠取玻璃杯、薄纱这类半透明物体时,经常会遇到以下问题: 边缘断裂&…...

Pixel Fashion Atelier应用场景:高校数字媒体专业像素艺术教学辅助工具

Pixel Fashion Atelier应用场景:高校数字媒体专业像素艺术教学辅助工具 1. 教学痛点与解决方案 在高校数字媒体专业的像素艺术教学中,传统教学方式面临几个核心挑战: 创作效率低:学生需要从零开始绘制像素画,耗时耗…...

Django Admin 后台让邮箱、科目必填 + 下拉选择

Django Admin 自定义用户必填字段 下拉科目选择在使用 Django 自定义用户模型时,默认邮箱是非必填,科目容易输入错误,本文实现:邮箱必填科目从下拉框选择(语文、数学、英语、政治、历史、地理、生物、物理、化学&…...

计算机毕业设计springboot社区物业管理系统 基于SpringBoot的智慧社区综合服务平台 基于SpringBoot的小区数字化运营管理系统

计算机毕业设计springboot社区物业管理系统59b07osb (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。 在快速城市化的今天,社区物业管理作为城市生活的重要组成部分&a…...

NanoMsg vs ZeroMQ:轻量级通信库选型指南(性能对比+迁移成本分析)

NanoMsg vs ZeroMQ:轻量级通信库选型指南(性能对比迁移成本分析) 在构建分布式系统或微服务架构时,选择合适的通信库往往决定了系统的可扩展性和维护成本。NanoMsg和ZeroMQ作为两款轻量级、高性能的通信库,经常被开发者…...

FPGA DSP48E2实战避坑:为什么你的32x32定点乘法性能上不去?从原理到优化全解析

FPGA DSP48E2实战避坑:为什么你的32x32定点乘法性能上不去?从原理到优化全解析 在FPGA信号处理系统设计中,32x32定点乘法器是构建数字滤波器、FFT核心和矩阵运算的基础模块。许多工程师在使用Xilinx UltraScale系列FPGA的DSP48E2 Slice时&…...

经典蓝牙双机控制 APP-完整版1

经典蓝牙双机控制 APP-完整版1🎯 第一步:创建总开关(最重要) 文件:app/src/main/java/com/bt/BuildConfig.java package com.bt;/*** 条件编译开关* true 服务端(被控端 被控制的手机)* fals…...

老旧设备焕新:OpenClaw在GTX1080上优化运行Qwen3-32B的技巧

老旧设备焕新:OpenClaw在GTX1080上优化运行Qwen3-32B的技巧 1. 为什么要在GTX1080上折腾大模型? 我的GTX1080显卡已经服役七年,原本打算让它光荣退休。直到上个月尝试在本地部署Qwen3-32B模型时,系统提示显存不足——这张老卡只…...

DeepSeek-OCR镜像免配置方案:开箱即用的智能文档解析终端

DeepSeek-OCR镜像免配置方案:开箱即用的智能文档解析终端 1. 引言:重新定义文档解析体验 在日常工作中,你是否遇到过这样的困扰?收到一份扫描的PDF合同需要提取关键条款,或者拿到一张表格图片想要转换成可编辑格式&a…...

Windows Defender禁用技术深度解析:通过WSC API实现安全控制

Windows Defender禁用技术深度解析:通过WSC API实现安全控制 【免费下载链接】no-defender A slightly more fun way to disable windows defender. (through the WSC api) 项目地址: https://gitcode.com/GitHub_Trending/no/no-defender Windows Defender作…...

惊艳效果展示:实时手机检测-通用镜像识别复杂场景手机案例

惊艳效果展示:实时手机检测-通用镜像识别复杂场景手机案例 1. 开箱即用的手机检测神器 想象一下这样的场景:你需要快速检测一张照片中有多少部手机,可能是为了分析会议记录、监控考场纪律,或者统计零售店铺的顾客行为。传统方法…...

从N元文法到BERT:用Python代码串讲NLP核心模型演进(附实战代码)

从N元文法到BERT:用Python代码串讲NLP核心模型演进(附实战代码) 自然语言处理(NLP)正以前所未有的速度改变我们与数字世界的交互方式。从早期的简单统计模型到如今动辄数十亿参数的预训练模型,这条技术演进…...

『NAS』在NAS部署简易版PS-miniPaint

点赞 关注 收藏 学会了 💡整理了一个 NAS 专属玩法专栏,感兴趣的工友可以戳这里关注 👉 《NAS邪修》 miniPaint 是一款开源的在线图片编辑器。你可以把它理解为**“运行在浏览器里的轻量级 Photoshop”**。 打开飞牛的「文件管理」应用&am…...

康威生命游戏中的简易CPU设计与实现

生命游戏中的简易CPU - 第4部分 这是关于在生命游戏中创建数字逻辑门系列文章的第四篇。前几篇文章从如何创建数字逻辑门开始,并利用它们来构建简单的电路。在这篇文章中,我们将实际构建第一台真正的计算机:一个(2级流水线&#x…...

IntelliJ+Tomcat部署draw.io开发环境避坑指南(含乱码解决方案)

IntelliJTomcat深度定制draw.io开发环境实战手册 作为一款开源的流程图设计工具,draw.io因其轻量级和高度可定制性受到开发者青睐。但将其源码导入本地开发环境时,不少Java开发者会在IntelliJ与Tomcat的配置环节遭遇"水土不服"。本文将系统梳理…...

『NAS』老破小也能玩 AI?飞牛 NAS 部署 LocalAI

点赞 关注 收藏 学会了 💡整理了一个 NAS 专属玩法专栏,感兴趣的工友可以戳这里关注 👉 《NAS邪修》 LocalAI 是一个开源的"AI壳",它能让你在自己的硬件上(比如 NAS)离线运行各种大模型&#…...

智能体记忆:结构化索引优化上下文效率

在之前的文章中,我探讨了在与AI智能体协作时,角色设定为何仍然重要。不同的视角能以原始上下文无法复制的方式影响输出。但我也提出了一个需要正面解决的局限:每一个全新的上下文窗口都是从零开始的。角色设定每次都需要从头重建对你代码库的…...