2026/1/5 10:40:00
网站建设
项目流程
google play下载官方版,外贸网站优化哪家好,搜索历史记录,网页设计的概念和特点本文分享了作者从头搭建RAG系统的实践经历。RAG通过检索增强生成解决大模型幻觉问题#xff0c;提供可靠信息来源。文章详细介绍了系统搭建步骤#xff08;文档加载、文本分割、向量嵌入存储等#xff09;及实现过程中遇到的技术难题#xff08;数据更新、本地AI设置、嵌入…本文分享了作者从头搭建RAG系统的实践经历。RAG通过检索增强生成解决大模型幻觉问题提供可靠信息来源。文章详细介绍了系统搭建步骤文档加载、文本分割、向量嵌入存储等及实现过程中遇到的技术难题数据更新、本地AI设置、嵌入模型选择等。最终系统存在检索关键词生成能力不足、元数据利用不充分等局限。作者认为RAG只是权宜之计期待AI在agent和上下文处理方面的突破。最近的空闲时间在研究一个事就是怎么自己从头搭建一个RAG系统。目前总算是有了个框架但结果并不算是让人满意。我把这过程中我的一些感觉记录下来。首先回顾一下RAG是什么RAG是Retrieval-Augmented Generation的缩写这里的G就是GPT里的G代表由AI大模型最后生成回答。我们的实验室的同事们也陆续开始用AI了然而总体的体验很不好。通过询问主要有以下两方面的抱怨“我下了最近做广告很多的那个腾讯元宝满血版但是它经常引用公众号上的不靠谱内容。”哎元宝我反正看到这种走量宣发就烦我是不会用它的。“虽然用它来当翻译软件修改投稿文章很方便可是每次我想追问一些细节它便开始编造不存在的内容甚至连假的DOI号都给出来了。”这就是著名的大模型幻觉问题而且某种程度上说这就是大模型的本质——你不能只在大模型的头头是道不符合你预期时才觉得大模型是“懂得”的。那么怎么解决这第二个问题呢大模型既然可以回答出如何换内存条、如何写代码这样的问题那显然它在训练时也看过了相关的资料。那我只需要把本领域的文献转换为数据文件喂给大模型不就好了这里又有两个问题。第一个问题是这种技术称为微调而微调需要的计算能力非常大和推理可以理解为日常使用不同。用一个好的量化版本显存有多少G就能装下多少B的大模型然而微调由于需要计算梯度等等所需的显存G数是模型尺寸的B数的十几倍也就是说我在家用机上只能微调1B“大”模型这应该说是不可接受的。第二个问题是化学和生物领域数学物理我不敢妄言的结构化数据库非常缺乏。即使是Reaxys这样的大型专业数据库也不能准确地parse所有的元数据。更不用提那些良莠不齐的研究论文如方法学文献中报告的产率可能会对AI造成的影响了。记得曾经有一篇论文声称给某小模型微调写代码能力之后它变得非常支持种族歧视。所以我们需要RAG这个系统。按照我的理解它做的事情是on-the-fly地从当前数据库中搜索可能与你要问的问题有关的文献片段然后转交给AIAI再像做阅读理解题似的去根据给定的片段回答你的问题。相比于纯AI多了信息来源可靠的优点相对于纯搜索多了AI的语义理解的优点。我之前用过AnythingLLM这么一款软件微信公众平台上吹的不少。但是最终我觉得它实在是太不透明了所有东西都是“用户无须担心设置”只需要提供一个API密钥就能开始使用。不透明也就算了关键是我感到RAG只是一种权宜之计这个最后讲那么我不如现在先学习它的构成原理为将来的可能的更新换代做准备。其实写出代码这一步理论上并不困难。用最新的DeepSeek-V3-0324直接问它“我想写一个本地RAG系统”就能输出一长串东西了。真正的难点全在后面。于是DeepSeek给我的规划是这样的分为两部分一部分是数据预处理与向量化存储另一部分是问答和检索生成。我看了看代码理解了RAG的工作原理。首先是装载文档langchain.document\_loaders这里的文档可以是pdf、txt、docx等等等等不过由于大部分开源模型不支持多模态其实就是除了文本阅读理解以外的能力所以单独的图片文件和文档里的图片不在此列。然后提取文档里的文字将其切成一块一块的文本langchain.text\_splitter。这是因为目前主流大模型还不能做到一次读取大量文本虽然大模型本身占用内存很大但一次能读取的所谓最大上下文长度只有65536token约3w个汉字所以如果想让大模型综合全文内容回答的话就得让它获取到的有用内容之和不超过这个数。然后把文本片段“嵌入”为向量也就是为每一段话指定一组数。我觉得word2vec是一个非常神奇的发明按照那个论文的说法向量运算[mother] - [father] [king]的结果居然和[queen]的向量差不多也就是说这些数字里面真的编码了关于这些字词句的信息。然后把这些向量用专门架构的数据库存储用于后续使用。接着就来到问答部分。构造的顺序和问答时实际发生的顺序有一点区别这里按照构造的顺序来。首先你需要一个大模型用来“吃下”准备好的知识然后给出回答。这部分是最简单的只要有一个API密钥就行。然后你需要RAG里面的R这部分也可以自动实现vector\_db.as\_retriever。它负责根据提问去你前面准备好的数据库里找可能有用的文本片段然后把结果返回给大模型。这里有一个进阶技巧就是所谓的rerankerCrossEncoder。虽然向量化存储已经初步解决了检索速度问题但有时候还是会被特定关键词绑架。reranker是一类轻量级的大模型它们能不依靠向量直接比较问题和给出的上下文之间的语义相关性。所以我们可以让retriever放手去检索数据库返回原文之后再让reranker去粗取精。最后就是一个简单的QA交互代码设计了。是的上面这些代码只要你有适量的语言组织表达能力和一戳一蹦哒的耐心都可以通过与DeepSeek的对话写出来。可是难点不在这里。我遇到的第一个问题是AI数据更新的时效性。按照AI的说法我需要的嵌入模型功能和向量数据库功能都需要在langchain-community这个包里获得。但是实际上机一执行马上弹出显示DeprecationWarning原来它们现在有专门的langchain-hugginface等包了。然后还遇到一个问题是本地AI的设置。我一开始的时候用的是ollama本来看着没问题。但后来我得知ollama上提供的大模型权重文件有的有一些bug比如微软的Phi-4多模态模型的EOS和其他一些token配置就写错了所以我想着从huggingface上下载别人修好的文件搭配ollama使用。结果聊天效果并不好排查之后我才知道这是因为ollama使用的提示词模板和hugginface基于的sentence-transformer库里的写法是不同的好像涉及到一个叫Jinja的东西。最后因为实在是懒得学习我就把后端换成了能智能导入huggingface模型的LM Studio。接着还遇到了一个问题是嵌入模型的选择。我本来想着既然最近开始用字节跳动的火山引擎了那要不也顺便用用他们家的豆包嵌入模型吧但是结果开通服务设置好密钥却提示报错。排查了一下发现原来这是因为OpenAIEmbeddings默认传入的是tokenizer处理过的数组而豆包模型要求传入的是原始文本字符串。我又找了找有没有兼容豆包大模型的实现发现只在Java(Script?)版的LangChain里有一个很久没有维护的包而Python版本的根本就没有。所以我最后只好老老实实下载了一个本地的嵌入模型用HuggingFaceEmbeddings去做嵌入。最后还有个问题原始数据库从哪里来我用Zotero已经快5年了里面有好几个GB的文档但是它并不支持直接导出pdf。我又是请DeepSeek帮我写了一个命令行脚本才把所有pdf提取出来移动到一处文件夹。所以你看吧vibe coding有时候是vibe不起来的。这里面许多的技术细节还是要你自己去排查像我这样没有计算机科班教学的人来做动不动就要花上几个小时。而且就算是费掉了我将近一个星期的闲暇时间最后的效果也不好。我试着问了它一些问题然后感到它在以下方面有所欠缺。第一点是缺少联想生成合适的搜索关键词的能力。因为RAG的原理是把提问的向量和向量数据库中文本片段的向量作相似性比较如果我的问题是开放性的或者没有含有某个词对应的文本片段就很难被选中。一种理想的情景本应该是大模型拿到问题之后先思考为了解决问题需要查询哪些内容然后主动发起检索将所有检索的结果汇总后再告知用户。第二点是需要其他软件顺着AI走而不能让AI顺着软件走。比如说Zotero内部其实对每篇文献的元数据如DOI之类的有很好归类但无法导出为AI可读的描述文件于是就只能导出pdf这部分元数据就浪费了。RAG系统不是没有元数据管理功能问题是大多数应用还没有主动向这一块靠拢。……果然RAG只是一种权宜之计。我希望今年内能看到AI在agent方面和上下文大小方面的突破这样就能够做出比现有架构更好的表现了。最后我在一线科技企业深耕十二载见证过太多因技术卡位而跃迁的案例。那些率先拥抱 AI 的同事早已在效率与薪资上形成代际优势我意识到有很多经验和知识值得分享给大家也可以通过我们的能力和经验解答大家在大模型的学习中的很多困惑。我整理出这套 AI 大模型突围资料包✅AI大模型学习路线图✅Agent行业报告✅100集大模型视频教程✅大模型书籍PDF✅DeepSeek教程✅AI产品经理入门资料完整的大模型学习和面试资料已经上传带到CSDN的官方了有需要的朋友可以扫描下方二维码免费领取【保证100%免费】为什么说现在普通人就业/升职加薪的首选是AI大模型人工智能技术的爆发式增长正以不可逆转之势重塑就业市场版图。从DeepSeek等国产大模型引发的科技圈热议到全国两会关于AI产业发展的政策聚焦再到招聘会上排起的长队AI的热度已从技术领域渗透到就业市场的每一个角落。智联招聘的最新数据给出了最直观的印证2025年2月AI领域求职人数同比增幅突破200%远超其他行业平均水平整个人工智能行业的求职增速达到33.4%位居各行业榜首其中人工智能工程师岗位的求职热度更是飙升69.6%。AI产业的快速扩张也让人才供需矛盾愈发突出。麦肯锡报告明确预测到2030年中国AI专业人才需求将达600万人人才缺口可能高达400万人这一缺口不仅存在于核心技术领域更蔓延至产业应用的各个环节。资料包有什么①从入门到精通的全套视频教程⑤⑥包含提示词工程、RAG、Agent等技术点② AI大模型学习路线图还有视频解说全过程AI大模型学习路线③学习电子书籍和技术文档市面上的大模型书籍确实太多了这些是我精选出来的④各大厂大模型面试题目详解⑤ 这些资料真的有用吗?这份资料由我和鲁为民博士共同整理鲁为民博士先后获得了北京清华大学学士和美国加州理工学院博士学位在包括IEEE Transactions等学术期刊和诸多国际会议上发表了超过50篇学术论文、取得了多项美国和中国发明专利同时还斩获了吴文俊人工智能科学技术奖。目前我正在和鲁博士共同进行人工智能的研究。所有的视频教程由智泊AI老师录制且资料与智泊AI共享相互补充。这份学习大礼包应该算是现在最全面的大模型学习资料了。资料内容涵盖了从入门到进阶的各类视频教程和实战项目无论你是小白还是有些技术基础的这份资料都绝对能帮助你提升薪资待遇转行大模型岗位。智泊AI始终秉持着“让每个人平等享受到优质教育资源”的育人理念通过动态追踪大模型开发、数据标注伦理等前沿技术趋势构建起前沿课程智能实训精准就业的高效培养体系。课堂上不光教理论还带着学员做了十多个真实项目。学员要亲自上手搞数据清洗、模型调优这些硬核操作把课本知识变成真本事如果说你是以下人群中的其中一类都可以来智泊AI学习人工智能找到高薪工作一次小小的“投资”换来的是终身受益应届毕业生无工作经验但想要系统学习AI大模型技术期待通过实战项目掌握核心技术。零基础转型非技术背景但关注AI应用场景计划通过低代码工具实现“AI行业”跨界。业务赋能 突破瓶颈传统开发者Java/前端等学习Transformer架构与LangChain框架向AI全栈工程师转型。获取方式有需要的小伙伴可以保存图片到wx扫描二v码免费领取【保证100%免费】**