文章目录一、先吐槽大模型的两大经典毛病二、RAG 是什么说白了就是开卷考试三、以前的搜索只认字不懂意思四、语义搜索终于能看懂人话了五、手把手整个最小版语义搜索第一步准备好接口客户端第二步批量把文章转成向量第三步把用户问题也转成向量第四步算相似度挑最相关的六、完整的 RAG还差两步七、RAG 和普通搜索到底差在哪八、真要上线坑多着呢最后唠两句P.S. 无意间发现了一个巨牛的人工智能教程非常通俗易懂对AI感兴趣的朋友强烈推荐去看看传送门https://blog.csdn.net/HHX_01一、先吐槽大模型的两大经典毛病不知道你们用AI有没有踩过这俩坑。第一种问点新鲜事它直接摆烂“我的知识截止到某个时间这个我不清楚。”第二种更气人不清楚就不清楚吧它还一本正经给你瞎编逻辑顺得不行你不核实根本发现不了。说白了就是要么装哑巴要么装懂哥主打一个薛定谔的靠谱。为啥会这样很简单模型训练的时候学的都是公开旧知识。你公司的内部文档、刚写完的项目代码、小区刚改的物业规定它见都没见过。总不能为了这点内容就把大模型拉回去重新训一遍吧那成本跟给全公司发双倍年终奖差不多了。二、RAG 是什么说白了就是开卷考试为了解决这个问题就有了 RAG 这个东西。全称叫 Retrieval-Augmented Generation中文叫检索增强生成名字听着挺高科技其实原理特别接地气。拆成三步就是先找相关资料再把资料塞给模型最后让模型照着资料组织答案。说直白点就是不让大模型闭卷答题了提前给它把相关的资料都翻好摆到它面前照着抄就行。模型本身啥新知识也没学会但架不住它翻书快、抄得工整啊。三、以前的搜索只认字不懂意思说到找资料咱们先说说传统的关键词搜索。就好比你去图书馆找书跟管理员说“找书名带Vue的”管理员就把所有带Vue字样的书全给你抱过来。好使吗也能用但有个致命毛病它只认字面不懂语义。你搜“酸辣土豆丝的做法”它绝对不会给你推“马铃薯家常烹饪指南”。合着土豆换个马甲叫马铃薯它就不认得了跟我那换个发型就认不出员工的领导似的。只要字面上没匹配到哪怕意思一模一样它也假装看不见。四、语义搜索终于能看懂人话了怎么破这个局靠 Embedding也就是文本向量化。这玩意说玄乎也玄乎说简单也简单就是给每一段文字生成一串数字坐标。语义越接近的文字在向量空间里的距离就越近。就好比“土豆”和“马铃薯”字面长得完全不一样但意思差不多所以它们的坐标就住对门。“Vue”和“前端框架”哪怕一个字都不重样语义近坐标也挨得近。这样搜索的时候就不是比有没有相同的字了是比谁的意思更贴近。你问“马铃薯怎么做”系统一算坐标哦跟“酸辣土豆丝做法”挨得最近直接就给你捞出来了。终于不用跟搜索引擎玩文字抠字眼游戏了。五、手把手整个最小版语义搜索光说不练假把式咱们整个最简单的 demo 感受一下四步就能搞定。第一步准备好接口客户端先搭好 embedding 接口的调用工具现在很多平台都兼容 OpenAI 的 SDK改个请求地址、填个密钥就能用。友情提示密钥一定要放环境变量里别写死在代码里。不然哪天代码不小心传公开仓库了你就等着收到天价账单吧。第二步批量把文章转成向量写个小脚本把你库里的每一篇文章都调用接口生成对应的向量提前存起来。相当于提前给每本书都编好语义门牌号以后搜索直接查门牌号就行不用每次都重新算一遍。不然每次搜索都把所有文章算一遍向量那速度比我下班收拾东西还磨叽。第三步把用户问题也转成向量用户输入问题之后别着急搜先把问题也转成向量。相当于你要找书先把你想问的话也换成门牌号这样才能跟书架上的书比远近。第四步算相似度挑最相关的向量之间怎么比远近最常用的就是余弦相似度。不用纠结公式啥意思你就理解成看两个向量的方向对不对齐方向越一致说明语义越像。给每篇文章算个相似度分数排个序把分数最高的前几个拎出来就是最相关的内容。到这一步咱们就把语义搜索搞定了也就是 RAG 的前半段检索。六、完整的 RAG还差两步很多人以为语义搜索就是 RAG其实不对这才刚走了三分之一。完整的 RAG 分三步检索、增强、生成。咱们刚才只做完了检索也就是找到了相关资料。接下来还要做两件事第一把找到的资料整理好塞到给大模型的提示词里这叫“增强”相当于把参考资料递到模型手里。第二让大模型看着这些资料组织语言生成最终的答案这叫“生成”。整个流程串起来就是用户提问题 → 问题转向量 → 检索相关资料 → 资料塞进提示词 → 大模型输出答案。全程不用改模型一丁点儿参数纯纯的开卷考试资料带够就能答题。七、RAG 和普通搜索到底差在哪有人说了这不就是搜索吗跟普通搜索引擎有啥区别区别可太大了。普通搜索是啥你搜个问题它给你甩一堆链接列表你得自己点开一篇一篇翻自己总结答案。相当于你去书店问问题店员给你抱来十本书说“答案都在里面了自己找吧”。RAG 是啥你问问题它自己找资料自己读完总结直接给你最终答案。相当于你雇了个专属助理你问啥它自己去翻书整理好要点告诉你连书都不用你碰。所以像企业知识库、客服机器人、文档助手、制度查询这些场景用 RAG 就特别合适。谁上班摸鱼的时候愿意翻几十页制度文档啊直接问一句“报销五千以上走啥流程”一秒出答案多爽。八、真要上线坑多着呢刚才那个 demo 看着简单跑起来也美滋滋但真要放到生产环境用那坑可就多了去了。比如文档怎么切分切太大了搜不准切太小了上下文又断了跟切葱花似的多一点少一点都不对味。比如召回几个结果合适召多了模型记不住召少了信息不全跟食堂打饭似的多了吃不了少了不够吃。还有要不要做重排序向量数据库选啥敏感资料权限怎么控搜不到资料的时候怎么回答才不瞎编说白了demo 只是个 Hello World真正的工作量全在这些细节里。别觉得写了个语义搜索 demo 就懂 RAG 了那才刚摸到门槛。最后唠两句最后简单总结一下。Embedding 让文字能按语义攀亲戚检索把相关的资料捞出来增强把资料塞给模型生成让模型照着资料输出答案。RAG 不是让大模型变成行走的数据库它是给大模型配了个专职资料员。不用重新训练模型就能让它用上私有资料还能减少胡说八道这就是它最香的地方。也是目前大模型落地最实在、最容易上手的玩法之一。P.S. 无意间发现了一个巨牛的人工智能教程非常通俗易懂对AI感兴趣的朋友强烈推荐去看看传送门https://blog.csdn.net/HHX_01
C++ 程序崩溃捕获:MiniDumpWriteDump 实战与 5 类异常过滤策略 C 程序崩溃捕获:MiniDumpWriteDump 实战与 5 类异常过滤策略在 Windows 平台开发 C 应用程序时,崩溃问题是最令开发者头疼的挑战之一。当程序在客户环境中崩溃时,如何快速定位问题?本文将深入探讨如何利用 MiniDumpWriteDump API …
SenseNova-U1-8B多模态模型:信息图表生成的架构解析与实战指南 在信息图表生成领域,开发者们经常面临一个核心挑战:如何在保持高质量视觉输出的同时,实现文本与图像的深度融合?传统多模态模型通常需要依赖视觉编码器(VE)和变分自编码器(VAE)进行模…
Arbotix ROS Noetic 差速控制器配置:YAML 参数详解与 3 种运动模式实测 Arbotix ROS Noetic 差速控制器配置:YAML 参数详解与 3 种运动模式实测在机器人仿真开发中,让静态的 URDF 模型动起来是迈向真实交互的第一步。Arbotix 提供的差速控制器(diff_controller)通过解析 YAML 配置文件,将/c…
编译原理核心6阶段实战:从 `id1:=id2+id3*70` 到四元式与DAG优化 编译原理核心6阶段实战:从id1:id2id3*70到四元式与DAG优化在计算机科学领域,编译原理一直被视为"程序员的内功心法"。当我们写下printf("Hello World")这样的高级语言代码时,背后其实经历了一场精妙的语言转换魔术。本文…
Verilog CDC 单bit同步:3种电路(打两拍、边沿、脉冲)适用场景与失效边界分析 Verilog单bit跨时钟域同步:三种电路方案深度解析与工程实践指南在数字IC设计中,跨时钟域(CDC)问题如同电路板上的暗礁,稍有不慎就会导致系统功能异常。单bit信号同步作为CDC处理的基础单元,其重要性不言而喻…
数据存储:TXT/CSV/JSON/Excel——爬虫数据落盘的全格式工程化实践 文章目录 每日一句正能量 一、引言:数据存储是爬虫工程的"最后一公里" 二、四种数据存储格式全景对比 2.1 格式选择的核心考量维度 2.2 各格式详细对比 TXT(纯文本) CSV(逗号分隔值) JSON(JavaScript Object Notation) Excel(电子表格) 三、pandas I/O 工具…
SSD1306 0.96寸OLED I2C/SPI 双协议驱动对比:STM32F103实测 3ms 刷新差异 SSD1306 OLED驱动协议深度对比:I2C与SPI在STM32F103上的性能实测与选型指南当你在嵌入式项目中需要选择OLED显示屏时,通信协议的选择往往比想象中更关键。上周调试一个工业传感器项目时,我原本习惯性选择了I2C接口的0.96寸OLED,结…
十大排序和搜索算法的代码示例 大二学习十大排序和搜索时完成的代码#include <iostream> #include<string> #include <algorithm> #include <random> #include <ctime> #include <cmath> #include <vector> #include <queue> #include <list> #includ…
LV3296与PIC18F8722硬件系统架构及通信协议优化 1. LV3296与PIC18F8722硬件系统架构解析LV3296作为一款工业级条码扫描模块,其核心由三个关键子系统构成:高灵敏度CMOS图像传感器、专用数字信号处理器(DSP)和多功能通信接口控制器。在实际项目中,我发现这款模块最突出的特性是其全局快门设计…
2026年7月最新金华宇舶官方售后客户服务热线与维修网点地址汇总 - 亨得利官方服务中心 金华宇舶官方售后客户服务热线与维修网点地址信息是每一位宇舶腕表拥有者都极为关注的核心内容。作为瑞士高端制表品牌,宇舶以其精湛工艺与创新设计闻名,确保腕表始终处于理想运行状态,离不开官方售后渠道的合规支持…
HS2汉化补丁终极指南:一键解锁Honey Select 2完整中文体验 HS2汉化补丁终极指南:一键解锁Honey Select 2完整中文体验 【免费下载链接】HS2-HF_Patch Automatically translate, uncensor and update HoneySelect2! 项目地址: https://gitcode.com/gh_mirrors/hs/HS2-HF_Patch 还在为Honey Select 2的日文界面而苦恼吗…
怎么寄快递才能便宜呢?2026年7月寄快递省钱攻略 - 生活情报姬 同一箱老家特产,同事花22寄的,我花9块。不是我路子野,是我按场景选了渠道。寄快递便宜不便宜,一半看你会不会"对号入座"——退换货、卖闲置、寄礼物,招数都不一样。 分场景才最省 丰火递想不管啥场景都…
3步彻底解决Windows右键菜单混乱问题:ContextMenuManager使用全攻略 3步彻底解决Windows右键菜单混乱问题:ContextMenuManager使用全攻略 【免费下载链接】ContextMenuManager 🖱️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 你是否曾为Windows右键菜单中那些…
GXDE OS下Wayland兼容性实战:从deepin-mutter原理到VMware Tools修复 如果你正在用 GXDE OS 或者任何基于 Deepin 的发行版,并且遇到了“检测到窗口系统采用 Wayland 协议,程序即将退出”这类弹窗,或者发现 VMware Tools 在 Ubuntu 24.04 这类默认 Wayland 的系统上启动失败,那这篇文章就是为你准备的…
企业AI落地困境与AgenticOps实践指南 1. 企业AI落地的现实困境与破局之道过去两年,大模型技术呈现爆发式增长,从GPT-3到GPT-4,从LLaMA到DeepSeek,模型参数规模从百亿级跃升至万亿级,多模态能力从单一文本扩展到图文音视频的综合处理。然而在企业应用层面&a…
[C++]内存管理:串顺序存储的内存回收 在串(字符串)的顺序存储中,内存回收的方式取决于字符串的存储方式以及所使用的编程语言和相关库。以下以 C 为例进行说明,因为 C 对内存管理有较为直接的控制。 1. 基于 char 数组的串顺序存储 如果使用普通的 char 数组来存储字…
移动端游戏功耗测试实战:电流、功率、亮度和场景对比 移动端游戏功耗测试:先控制变量,再比较优化是否真的省电 摘要:功耗测试最容易犯的错误,是拿两次不同温度、不同亮度、不同场景的平均功率直接比较。本文给出一套可复现的游戏功耗测试方法,覆盖引擎特性验证、版本回归和黑盒体验测试,并说明如何把功耗与帧率、温控、CPU/G…
足球口袋教练 HarmonyOS 离线应用实战(03/20):ArkUI 首页仪表盘搭建 本文是“足球口袋教练 HarmonyOS 离线应用实战”系列第 3 篇。示例项目是一个 HarmonyOS / ArkTS / ArkUI 编写的离线足球训练助手,围绕真实页面、真实截图和可复现操作展开。 本篇要解决的问题 训练 App 的首页不能只展示欢迎语,它要解决“我现在该点哪…