AI Coding Agent从入门到精通(非常详细),给个文件系统就够了,收藏这篇就够了!

张开发
2026/4/17 15:41:19 15 分钟阅读

分享文章

AI Coding Agent从入门到精通(非常详细),给个文件系统就够了,收藏这篇就够了!
一句话讲清楚Duke大学团队发现让Coding Agent把文本当成文件系统来操作——用grep搜索、用sed提取、用Python聚合——在188K到3万亿token的长上下文任务上平均性能比现有最强方法高出17.3%。长上下文的图书馆悖论你面前有一座藏书三万亿册的图书馆。你向一位超级聪明的图书管理员LLM提出一个具体问题“在这份385,000页的剧本记录里每个章节中某个角色最后施放的法术是什么”这位管理员的应对方式是什么呢它试图一口气读完整个图书馆然后凭记忆回答。结果就是——读到后面忘了前面。这正是当前大语言模型在长上下文处理中的困境。尽管前沿模型的技术报告宣称支持百万级token的上下文窗口但现实是随着上下文长度增加模型性能显著下降。研究者将这种现象称为上下文腐烂Context Rot。为什么会这样因为LLM对长上下文的访问完全依赖于底层的Attention机制——一种隐式的、不可解释的数学运算。模型没办法告诉你我是从第3,427行找到这个答案的它只是在做一堆矩阵乘法然后给出一个概率最高的回复。现有的解决方案各有局限。传统RAG检索增强生成依赖固定的浅层检索管道难以支持需要中间结果指导下一步搜索的多跳推理。直接把全部上下文塞进模型窗口则面临计算成本线性增长和性能衰减的双重问题。Duke大学团队提出了一个简洁而优雅的思路与其让LLM在隐式的Attention中挣扎不如让Coding Agent把文本处理外部化为显式的、可执行的操作。核心思路把文本处理变成文件系统操作论文的核心洞察来自一个简单的观察Coding Agent在大规模代码仓库上训练天然具备处理长文件和层级目录结构的能力。这些能力能否迁移到长上下文文本处理任务上答案是肯定的。研究团队的方法框架非常直观第一步语料库格式化对于大规模语料库超过1亿token将每篇文档保存为独立的txt文件组织在目录层级中。对于单个长文档任务则将整个上下文放在一个txt文件中。第二步Agent接口Coding Agent只接收文件路径和查询然后自由运用其原生能力执行终端命令如grep、sed、nl编写和运行Python脚本进行程序化搜索和文本处理创建中间文件保存部分结果基于发现的信息迭代优化探索策略关键区别Agent完全自主决定如何处理内容——是逐行扫描文件、构建关键词搜索、编写自定义解析脚本还是组合多种策略。这与RAG管道的固定检索阶段或ReAct Agent的预定义工具API形成鲜明对比。文本处理即文件系统导航。将语料组织为可导航的文件系统Coding Agent使用原生工具如ripgrep、终端命令探索层级结构编写Python脚本进行程序化聚合保存中间结果并基于发现的信息迭代优化查询实现无需固定检索管道的多跳推理。实验设计五个基准从188K到3万亿token研究团队在五个长上下文基准上进行了全面评估覆盖从188K token到3万亿token的上下文范围BrowseComp-Plus一个网页浏览基准要求Agent从10万篇网页文档中迭代搜索和推理定位难找的、纠缠在一起的信息。需要多跳推理。LongBench-v2一个长上下文基准评估LLM在多样化真实任务上的深度理解和复杂推理能力包括单文档问答、多文档问答、长上下文学习、长对话历史理解等。Oolong-Real和Oolong-SyntheticOolong基准的两个变体要求分析、综合和聚合分布在整篇文档中的信息。测试模型在大量样本上推理、执行上下文内分类和计数的能力。Natural Questions广泛使用的开放域问答基准需要从大规模Wikipedia语料库中检索相关段落并提取简短答案语料库规模达3万亿token。由于计算成本限制每个基准随机采样200个样本并用相同子集重新运行所有基线方法以确保公平比较。基线方法对比论文将Coding Agent与多种代表性基线进行了对比GPT-5 Full Context直接将完整上下文提供给GPT-5回答问题。对于语料库过大的任务BrowseComp-Plus和NQ随机采样文档形成100K token上下文。对于LongBench和Oolong采用滑动窗口策略。标准RAG检索top-10文档语料库级任务或300词块长文档任务然后使用GPT-5生成答案。使用Gemini Embedding进行检索NQ因语料规模过大使用BM25。ReAct风格搜索Agent将LLM置于ReAct循环中提供Gemini Embedding模型作为检索工具LLM可使用检索和获取文档工具。递归语言模型RLM将长输入文本视为外部环境的一部分LLM通过Python REPL程序化检查并递归调用自身处理文本片段。Coding Agent评估了OpenAI Codex v0.46.0以GPT-5为基础模型的三种配置(1) 原生Codex无检索器(2) Codex BM25(3) Codex Gemini Embedding。此外还评估了Claude Code以Sonnet 4.5为基础模型。主要结果Coding Agent全面领先五个基准上的主要结果。绿色百分比表示相对于之前最先进方法的相对改进。Coding Agent在四个基准上建立了新的SOTA在剩余一个上保持竞争力。实验结果表明现成的Coding Agent在所有基准上均显著超越所有基线方法。BrowseComp-Plus750M token语料Codex无检索器配置达到88.50%准确率超越之前最好的80.00%提升10.6%。该基准需要在10万篇文档中进行多跳推理。Oolong-Synthetic536K tokenCodex无检索器达到71.75%超越之前最好的64.38%提升11.5%。Oolong-Real385K tokenClaude Code BM25达到37.46%超越之前最好的24.09%提升55.5%。这是所有基准中提升幅度最大的。LongBench188K tokenClaude Code BM25达到62.50%与之前最好的63.30%基本持平略有微降保持了竞争力。Natural Questions3万亿tokenCodex无检索器达到56.00% EM超越之前最好的50.90%提升10.0%。值得注意的是这些增益跨越了从数十万到数万亿token的上下文尺度且在不同LLM骨干上均保持一致。换句话说Coding Agent提供了一种通用的、不需要专门训练的长上下文处理方案。为什么有效两个关键能力论文把Coding Agent的效果归结为两点1. 原生工具熟练度Native Tool ProficiencyCoding Agent能够利用可执行代码和终端命令而不仅仅是被动的语义查询。这意味着Agent可以使用grep/ripgrep进行精确的模式匹配用sed提取特定行范围编写Python脚本实现自定义逻辑通过执行结果反馈迭代优化策略例如在Oolong-Synthetic的一个任务中Agent需要从1,772个句子对中找出哪个用户有最多的矛盾标签——而标签并未提供。Agent编写了一个Python脚本(1) 解析文档结构提取用户ID和句子对(2) 使用正则表达式实现基于规则的NLI分类器来检测否定no, not, never和数量不匹配(3) 在所有句子对上执行分类器(4) 按用户聚合结果。当初始模式遗漏边界情况时Agent检查中间输出、扩展模式集并重新执行。2. 文件系统熟悉度File System FamiliarityCoding Agent在代码仓库训练中习得了层级导航能力可以将大规模文本语料视为目录结构来浏览。消融实验表明文件夹结构优于单文件配置——有文件夹结构时Agent使用sed提取特定行范围的频率增加了634%表明Agent在构建基于坐标的阅读系统文件行号而非消耗整个文件。Oolong-Real上的迭代优化示例。Agent编写Python脚本识别385K token剧本中每个章节角色最后施放的法术通过失败分析发现特定领域的法术引用模式并迭代优化逻辑。反直觉的发现检索工具不一定管用论文中最有意思的一个发现是给Coding Agent配备标准检索工具并不总能提升性能有时甚至会降低性能。以BrowseComp-Plus为例Codex无检索器88.50%Codex Gemini Embedding84.00%下降4.5个百分点Codex BM2578.50%下降10个百分点这是怎么回事通过分析Agent行为轨迹研究团队发现了一个行为转变当提供了检索器时Agent大幅减少了原生探索工具的使用。无检索器时平均每条查询使用14.92次原生搜索命令有BM25时下降到9.84次有Gemini Embedding时进一步下降到8.33次团队的解释是标准检索器一旦可用就成为了Agent的默认发现机制挤掉了Agent原本会自主使用的文件系统探索策略。检索排序不完美这种替代就可能导致Agent遗漏相关上下文。这对Agentic RAG研究意味着什么简单地把检索工具塞给Agent并不等于更好的性能。如何在不抑制Agent原生探索能力的前提下整合检索功能还是个没解决的问题。涌现的处理策略Agent会因地制宜Coding Agent相比固定管道方法的一个优势是它能根据任务调整策略。分析Agent的行为轨迹可以看到三种不同的处理模式模式一迭代查询优化BrowseComp-Plus在需要跨大规模语料库进行多跳推理的任务中Agent展现出迭代搜索-优化模式从问题中的实体或概念出发进行初始搜索检查检索到的文档提取新实体或关系然后针对下一个推理步骤制定更精确的查询。一个典型案例是找到同时满足四个约束的职业电竞选手。Agent从搜索特定时间范围内成立的游戏开发商开始发现了Riot Games联合创始人Brandon Beck然后继续搜索其配偶、验证资质、追溯到Valorant职业选手最终识别出Max Mazanov。整个六跳推理链——Riot Games → Brandon Beck → Natasha Beck → Pepperdine → Valorant → Demon1 → Max Mazanov——完全由Agent的自主查询优化驱动。模式二程序化聚合Oolong在需要分析、汇总和聚合信息的任务中Agent放弃了搜索转向代码生成。Agent编写Python脚本实现自定义逻辑通过执行反馈迭代优化。模式三直接推理LongBenchLongBench包含多样化的长上下文挑战。Agent的总体工具使用量相对较低适度的搜索强度、很低的阅读量、接近零的代码量。最有效的策略是直接依赖LLM固有的长上下文推理能力。Agent策略的定量特征分析。y轴表示每个指标的归一化比例给定模型在所有数据集上的值之和为1。不同任务上Agent展现出截然不同的工具使用模式。成本贵不贵不过从实际角度看Coding Agent的每查询成本虽然比RAG贵一些但和其它强方法差不多有时还更便宜BrowseComp-PlusCodex无检索器查询0.237/查询Oolong-SynCodex无检索器查询0.920/查询Coding Agent更便宜且性能更好LongBenchCodex无检索器查询0.432/查询Coding Agent更便宜且性能相当考虑到性能上的提升幅度这点成本溢价在大多数场景下是可以接受的。和RLM有什么不同最接近这篇论文的并发工作是递归语言模型RLM。两者思路一致不扩展上下文窗口把长文本当作外部环境来主动探索。区别在于怎么做RLM使用专门的系统提示指导模型通过递归LLM子调用对文本片段进行问题分解Coding Agent使用现成的编码Agent无需任务特定提示而是利用原生文件系统工具如grep、sed和自定义脚本进行探索和聚合实验结果显示Coding Agent在大多数基准上优于RLM特别是在需要复杂多跳推理的任务上优势明显。这项研究告诉我们什么一个直觉上很难接受的结论代码模型做得越好编码和通用文本处理之间的界限就越模糊。以往的思路是给长上下文理解设计专门的架构——更大的Attention、更复杂的检索管道。但这篇论文说把文本整理成文件格式让Coding Agent自己去折腾效果就够了。不过论文也坦诚地指出了几个局限性朴素地提供检索工具可能降低性能未来需要研究如何在不抑制Agent原生探索能力的前提下更好地整合检索功能现成的Coding Agent虽然迁移到文本处理任务效果惊人但它们主要针对编码而非长上下文推理进行对齐和优化开发专门针对大规模文本语料导航和推理的框架是一个重要的未来方向学AI大模型的正确顺序千万不要搞错了2026年AI风口已来各行各业的AI渗透肉眼可见超多公司要么转型做AI相关产品要么高薪挖AI技术人才机遇直接摆在眼前有往AI方向发展或者本身有后端编程基础的朋友直接冲AI大模型应用开发转岗超合适就算暂时不打算转岗了解大模型、RAG、Prompt、Agent这些热门概念能上手做简单项目也绝对是求职加分王给大家整理了超全最新的AI大模型应用开发学习清单和资料手把手帮你快速入门学习路线:✅大模型基础认知—大模型核心原理、发展历程、主流模型GPT、文心一言等特点解析✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑✅开发基础能力—Python进阶、API接口调用、大模型开发框架LangChain等实操✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经以上6大模块看似清晰好上手实则每个部分都有扎实的核心内容需要吃透我把大模型的学习全流程已经整理好了抓住AI时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

更多文章