今天下午打开 Gemini,跟它说:"带我学习 Open Claw"。
架构这块过得很顺。OpenClaw 不是聊天机器人,它是靠四层架构(通信接单→网关验证→ReAct思考→工具执行)运转的全职 AI 员工。再配合 SOUL.md 控制人格、HEARTBEAT.md 做定时起搏,架子就搭起来了。
这个时候 Gemini 准备带我看落地案例,我直接拒绝:「原理都弄懂了?????我还想了解更多原理」。
它抛出了 Agent 的生死难题:几十万字的长期记忆怎么处理?全塞进大模型,Token 账单直接原地爆炸。我说是压缩。它反问,如果是几千卷的专业知识库要精准提取某一段呢? 我卡了一下:「搜索关键词?说实话这个我也不是很清楚」。
答案是传说中的 RAG(检索增强生成)。这里必须弄懂它的三步骨架: 大模型就像一个学识渊博但被关在黑屋子里的教授。 第一步(检索):当你提问时,外面的两个小弟(数据库)会冲进档案室找资料。一个小弟负责词频精确匹配(BM25,像查字典死磕字眼),另一个小弟负责向量语义匹配(SQLite-vec,像牵着猎犬闻气味)。你搜“违约金”,靠气味它连“赔偿金”的纸条也能找出来。
第二/三步(增强与生成):小弟把精确找出来的 3 页纸条,连同你的问题一起从门缝塞进去。黑屋里的教授看着纸条,结合自己的智商,写下量身定做的完美答案。 这就是 Agent 能记住海量私有知识,却不会把 Token 撑爆的底层逻辑。
我打断了它的推理,问了一个新问题:「所有的东西投射进去,维度都是一样的吗?」是的。就像 MBTI 强行把复杂人格压在 4 维指标里,嵌入模型也是把所有图文死死压在固定的 1536 维空间坐标里。
既然所有知识都挂在这个高维空间里,怎么精准捞出意思相近的那一句话?答案是:算坐标距离。 系统必须在两把不同的尺子里选一把使用:余弦法(算两个知识箭头的夹角)或者 L2 法(量两点之间的物理直线距离)。 我问它这两个方法是混合用吗?Gemini 告诉我绝大多数情况下是严格二选一。但为了追求极致的计算速度,现代大厂的模型都会在底层加一步极其核心的优化:归一化(Normalization)。
我听完它的解释,脑子里突然闪过一个念头,直接打断了它:「这个底层的终极优化,不就意味着只要提前规定好前提条件,所有向量长度都被归一化,那这两种计算方法排名的结果就完全一样,这时候单纯考虑用哪种方法算得更快、性价比更高就行了吗?」
Gemini 给了一个满分的确认。这里我必须要用一个费曼比喻来解释它这套机制的精妙: 想象夜空中有很多星星。余弦是量“两颗星在你眼皮子底下的仰角”,L2是量“两颗星之间的真实物理直线距离”。这两者原本算出来的距离排名可能不一样。 但归一化的本质,就是强行把所有星星所在的位置,按比例投影到一个半径为 1 的巨大玻璃穹顶上(也就是把所有向量的长度同比例压缩成 1)。
只要大家都在这个穹顶表面,夹角越小,两个星星在玻璃上的绝对物理距离必定越近!两把尺子量出来的排名 100% 绑定了。 既然排名完全一样,AI 工程师果断抛弃了极其耗费 GPU 算力的“开根号”距离公式,直接用最简单暴力的“内积(Dot Product)”来平替。全是 CPU/GPU 最爱的一拍即合的乘法和加法。
把 3 和 4 齐刷刷除以 5,V=[3,4] 被强行压扁成了 [0.6, 0.8]。长度变成 1 了,方向完全没变,但彻底规避了任何复杂运算,系统的检索速度瞬间翻了无数倍。这才是真实硬核的工业界实战。
这还没完。为了不让 1000 万条数据把 GPU 算冒烟,最后又掏出了 HNSW 索引:在一个大国里找人,别挨家挨户敲门。先飞跨省航班(顶层),转省内高速(中层),最后进步行街(底层找门牌号)。暴力搜索 1000 万次的过程瞬间坍缩成了极度精准的 200 次。
一下午,从最顶层的通讯架构挖到了初中教的勾股定理,最后降落在立体的高速路网里。还没学完,下一篇继续拆它的 Skill 开发。
#OpenClaw #AIAgent #RAG #向量数据库 #废柴学习笔记 #电科研一 #AI学习 #归一化 #Gemini #HNSW