微信扫码
添加专属顾问
我要投稿
Claude Code颠覆传统RAG玩法,揭秘源码中四大反常识技巧,让检索增强生成进入操作系统级内存管理新时代。核心内容: 1. 摒弃向量库的即时检索技术:用Glob和Grep实现更精准的代码定位 2. 巧妙的Prompt缓存经济学:将系统提示词分为静态前缀和动态后缀 3. Agent fork机制:通过继承系统提示词实现API缓存优化
嗨,我是PaperAGI,主要关注LLM、RAG、Agent等AI前沿技术,每天分享业界最新成果和实战案例。
本文基于对Claude Code源码的深入分析,揭示其如何将RAG从"外挂知识库"升级为"操作系统级内存管理"。
最近,Claude Code的源码被动开源,引发了广泛关注。在深入分析其源码后,我们发现它完全颠覆了传统RAG(检索增强生成)的玩法。传统RAG大多停留在"文档切分、向量库存储、相似度检索"的初级阶段,而Claude Code则通过一系列反常识的技巧,将RAG提升到了一个全新的高度。
本文将详细拆解Claude Code源码中四个关键的RAG高级技巧,这些技巧不仅改变了RAG的实现方式,更重新定义了RAG的本质。
传统RAG的第一反应往往是构建向量库:先对文档进行Embedding,存储到向量数据库,查询时再通过相似度检索召回。这一流程虽然直观,但带来了延迟、成本和准确率等多方面的挑战。
Claude Code的Explore Agent则完全摒弃了向量库。它作为一个纯读模式的代码探索专家,当主Agent需要了解某个模块、查找某个函数或理解某段逻辑时,不会去向量库中"搜相似",而是直接调用Glob和Grep进行实时搜索。
很多人写系统提示词时,恨不得把所有规则、规范和例子都塞进去,导致Prompt越来越长,每次调用都消耗大量Token。
Claude Code的提示词设计则巧妙地按"能否缓存"进行了切分:
这种设计将Prompt从文本变成了"可缓存的运行时资源"。更进一步,在Agent的fork机制中,Claude Code甚至刻意让子Agent继承主Agent的系统提示词和工具定义,以确保API请求的前缀字节完全相同,从而命中缓存。
这意味着Claude Code将Token视为需要精细管理的预算,而非无限消耗品。一个会"算账"的RAG系统,才可能真正在生产环境中高效运行。
传统RAG流程中,检索出的上下文往往过长,超出模型窗口限制。为此,通常会进行"预筛选",基于向量相似度或其他规则挑选最相关的几条信息。
Claude Code则采取了更聪明的做法:让模型自己压缩上下文。
源码中存在明确的Session-specific guidance和Token预算管理逻辑。当上下文逼近窗口上限时,系统不会粗暴地删除旧消息,而是让模型将之前的对话、工具结果、中间产出压缩成一个结构化的"紧凑摘要"。这个摘要保留了关键信息,但去掉了冗长细节,可能将10000 Token的上下文压缩到2000 Token,而核心内容不丢失。
这相当于将RAG的"预筛选"从"检索阶段"移到了"模型消费阶段"。向量相似度永远无法准确判断"什么信息对当前任务重要",但模型自己知道。因此,模型的自压缩比外部预筛选更精准。
MCP(Model Context Protocol)通常被用作让模型调用外部工具的桥梁。但Claude Code的源码揭示了一个更深层的用法:MCP还能注入"如何使用工具的行为说明"。
在prompts.ts中,有一个关键函数getMcpInstructionsSection()。该函数会遍历所有连接的MCP Server,如果某个Server提供了instructions字段,就会将这些说明直接拼进系统提示词中。
这打破了RAG的边界——它不再局限于"搜网页、搜文档",而是可以扩展到"搜工具怎么用、搜系统怎么玩"的层面。
Claude Code的这四个技巧,共同指向一个核心理念:RAG的本质不是"外挂知识库",而是"让模型在正确的时候,拿到正确的信息" 。
向量库只是实现这一目标的手段之一,而非唯一,甚至不一定是最好的。Claude Code通过实时检索、Prompt缓存、上下文压缩和MCP行为注入,构建了一个更智能、更高效的RAG系统。
如果你也在构建Agent系统,不妨思考一下:你的RAG是否还停留在"向量库+召回"的阶段?还是已经向"操作系统级内存管理"的方向迈进?
https://github.com/ultraworkers/claw-code
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业
2026-04-01
Claude Code 源码一夜流出:会看热闹的人很多,会读源码的人很少
2026-03-31
OpenDataLoader:PDF文档提取的一站式方案
2026-03-30
只用文件系统和 Bash,Vercel 做出了一套高效 RAG
2026-03-25
GraphRAG新范式 = LPG + 本体RDF
2026-03-25
基于 Ray 的蚂蚁数据构建引擎在搜推和 RAG 场景的实践
2026-03-23
知识基座:让“AI 越用越懂业务”的团队经验实践【天猫AI Coding实践系列】
2026-03-21
面向手机Agent的记忆系统工程:OPPO的Agentic-RAG实战与演进
2026-03-20
为什么总感觉 Claude Code 比 Cursor 聪明?真正的原因根本不是模型能力!
2026-01-15
2026-02-13
2026-01-02
2026-02-03
2026-01-06
2026-02-03
2026-02-06
2026-02-02
2026-01-28
2026-02-05
2026-03-17
2026-03-11
2026-02-22
2026-02-15
2026-02-04
2026-02-03
2026-01-19
2026-01-12