当前位置: 首页 > news >正文

10万开发者调查证实AI写的代码大部分是垃圾,这个Harness Engineering方法论把产出质量拉高了3倍

Dex Horthy 是 HumanLayer 的创始人,他之前在 AI Engineer 大会上讲的 12 Factor Agents 是全场最火的演讲之一。这次他带来了续集,主题是怎么在真实的、复杂的、十年历史的代码库里让 AI 编码 Agent 真正干活

他的团队三个人,花了八周时间,彻底重构了用 AI 写代码的工作流。效率提升了 2 到 3 倍,而且产出质量高到他们不得不改变整个团队的协作方式。他说这个过程非常痛苦,但回不去了

大多数人用 AI 写代码,写的是垃圾

Dex 开场引用了一组数据:Eigor 调查了 10 万开发者,发现大部分人用 AI 写代码的结果是大量返工。代码量确实上去了,但很多只是在修上周 AI 写出来的烂代码

绿地项目(全新的 Vercel dashboard 之类)效果很好。但如果是一个十年历史的 Java 代码库,AI 基本就废了

这和 Dex 自己的体验完全一致。他第一次用 Claude Code 的时候并没有觉得多惊艳,就觉得"还行,比手写好一点"。直到他们团队摸索出了一套方法,才真正把产出质量拉上来

上下文窗口就是一切

LLM 是无状态的。每次调用的时候,模型能看到的只有当前上下文窗口里的内容。放进去什么 token,就出来什么质量的结果

Dex 把上下文窗口分成了"聪明区"和"笨蛋区"。以 Claude Code 为例,大概在 40% 使用率的时候就开始出现质量下降。如果你的 MCP 工具往上下文里灌了一堆 JSON 和 UUID,那你所有的工作都在笨蛋区里完成,结果不可能好

优化上下文窗口要看四个维度:正确性、完整性、大小、轨迹

轨迹这个维度很有意思。很多人跟 Agent 对话的模式是:下指令,Agent 做错了,骂它,Agent 又做错了,再骂它。模型看到的对话历史就是"做错,被骂,做错,被骂",它推测出的下一步就是"我最好再做错一次好让人骂我"。所以如果对话走偏了,最好直接开一个新的上下文窗口重来

Research-Plan-Implement:三步压缩法

Dex 团队的核心工作流叫 Research-Plan-Implement(RPI),本质上是一套持续压缩上下文的方法

Research 阶段:搞清楚系统怎么运作。找到相关文件,理解代码流程,把结论压缩成一份研究文档。这份文档就是对代码库真实状态的快照,不是文档里可能过时的描述,是从代码本身提取的事实

Plan 阶段:把研究结论和需求合在一起,列出精确的执行步骤。关键是要包含具体的文件名、行号、代码片段。一份好的计划应该让最笨的模型都能按步骤执行不出错

Implement 阶段:按计划执行,保持上下文小。每一步完成后可以做"有意压缩"(intentional compaction),把当前进展总结成 markdown 文件,新的 Agent 接手时直接从总结开始,不用重新搜索和理解整个代码库

这三个阶段的共同目标是一个:始终待在上下文窗口的聪明区

Sub-agent 是用来控制上下文的,不是用来扮演角色的

很多人用子 Agent 的方式是:一个前端 Agent,一个后端 Agent,一个 QA Agent,一个数据科学 Agent

Dex 说,别这样

子 Agent 的正确用法是控制上下文。比如你要搞清楚一个大型代码库里某个功能怎么运作,可以派一个子 Agent 去做所有的搜索、读文件、理解代码流程的工作。这些操作会消耗大量上下文空间。子 Agent 完成后只返回一条简洁的消息:“你要的文件在这里”。父 Agent 读那一个文件就能直接开工,上下文干干净净

渐进式加载:别把整个代码库的知识塞进去

最常见的做法是在仓库根目录放一个大的 onboarding 文件,写清楚整个项目的架构、约定、关键文件。问题是代码库一大,这个文件要么太长吃掉整个聪明区,要么信息不够 Agent 还是会犯错

Dex 推荐的做法是分层加载。根目录放全局上下文,每个子目录放局部上下文。Agent 工作的时候只加载根上下文加上当前工作区域的局部上下文,其他的不碰。这样上下文小,还有足够的空间做实际工作

还有一个更好的方案:按需压缩上下文。不维护一个可能过时的静态文档,而是每次开始新任务的时候,让 Agent 现场去代码里找,然后压缩成一份当前有效的研究文档。因为代码本身是真相源,文档只会越来越不准

Dex 画了一张图问观众:"在代码、函数名、注释和文档之间,哪个的谎话最多?"答案是文档

计划就是杠杆

计划的核心价值是压缩意图。一份好的计划不只是步骤列表,它包含了具体的代码片段,让审阅者能快速判断"这个方向对不对"

Dex 特别强调了"心理对齐"(mental alignment)这个概念。代码审查的真正目的不只是找 bug,是让团队所有人对代码库的变化保持同步理解。当 AI 每周产出的代码量是以前的 2 到 3 倍,传统的逐行审查已经跟不上了

他们的做法是审查计划而非审查代码。团队 leader 可以通过读计划来了解系统在怎么演进,在计划阶段就能发现方向性的问题。Mitchell 还把他的 Agent 对话线程直接附在 Pull Request 里,让审查者能看到完整的推理过程,不只是一堆绿色的新增代码

一条坏的 research 结论(对系统的错误理解)会导致整个计划偏离,进而产生几百行错误代码。所以人的精力应该集中在链条最上游:确保 research 是对的,确保 plan 是对的

实战验证:30 万行 Rust 代码库的一次性修复

Dex 拿了一个真实案例做验证。他的朋友 Vibv 是 Boundary ML 的 CEO,有一个 30 万行的 Rust 代码库(BAML 编程语言项目)。Dex 用 RPI 方法论尝试一次性修复一个问题

先做了几轮 research,扔掉了质量不好的,重新做。然后分别用有 research 和没 research 的方式生成了计划,对比效果。周一晚上做完,周二早上 CTO 看了 PR 说"看起来没问题,下个版本合进去"

后来他们又花了一个周六 7 小时,往 BAML 提交了 35000 行代码(部分是 codegen),Vibv 估计这相当于 1 到 2 周的正常工作量

但也有失败的案例。他们尝试从 Parquet Java 中移除 Hadoop 依赖,RPI 方法论到了某个点就不够用了,最后不得不回到白板前用人脑思考整体架构

不要外包思考

这是 Dex 反复强调的一句话:AI 不能替代思考,它只能放大你已经做过的思考,或者放大你没做过的思考

不是所有任务都需要完整的 RPI 流程。改个按钮颜色,直接跟 Agent 说就行。做一个小功能,写个简单计划就够。跨多个仓库的中型功能,做一次 research 再写计划。只有最复杂的问题才需要完整的多轮 research 加详细计划

怎么判断需要多少 context engineering?没有公式,靠经验。你会做错很多次,有时候准备过度,有时候准备不足。Dex 的建议是选一个工具然后大量练习,不要在 Claude、Codex、Cursor 之间反复切换试图找到最优解

Spec-driven 开发已经语义扩散了

Dex 提到了 Martin Fowler 在 2006 年说过的概念:语义扩散(semantic diffusion)。一个好的术语被提出来之后,所有人都开始用它表达不同的意思,最终这个词变得毫无意义

"Agent"经历过这个过程,从一个人到一个微服务到一个聊天机器人到一个工作流。现在 “spec-driven development” 也在经历同样的事。有人说它是写更好的 prompt,有人说是产品需求文档,有人说是可验证的反馈循环,有人说只是在写代码的时候用一堆 markdown 文件

Dex 说真正重要的不是叫什么名字,是背后的原理:压缩上下文,管理上下文窗口,待在聪明区

下一步是团队变革

Dex 认为 AI 编码工具本身会被商品化,所有人都会学会怎么用。真正难的是怎么让团队和开发流程适应一个 99% 代码由 AI 产出的世界

现在正在出现一个裂痕:资深工程师不用 AI,因为觉得提升不大。中级工程师大量使用,因为能填补技能缺口,但同时也产出了一些低质量代码。然后资深工程师越来越烦,因为每周都在清理 Cursor 生产出来的烂代码

这不是 AI 的错,也不是中级工程师的错。这是文化变革的问题,需要从团队顶层推动

学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%免费

http://www.jsqmd.com/news/621307/

相关文章:

  • 告别一人一链!微信URL Scheme新规详解:如何让同一个链接被千万用户访问
  • Arduino嵌入式Modbus RTU通信实战指南
  • 雪女-斗罗大陆-造相Z-Turbo生成视频封面实战:结合AE模板批量产出
  • Qwen3.5-4B-Claude-Opus详细步骤:修改系统提示词打造专属AI助教方法
  • 单片机实战:按键切换LED流水灯模式与定时器中断的协同设计
  • Deneyap气压传感器模块与MS5637嵌入式驱动开发指南
  • AI理论能力或吞噬美国就业市场?真相并非如此
  • 深入解析SQL中的SYSDATE函数:从基础到高级应用
  • DeepSeek V4将至,基础设施能扛住吗?
  • Qwen2.5-VL图文对话模型应用:智能识图助手快速搭建与体验
  • 高效开发者的秘密武器:深度工作与心流状态
  • 从湖北师大真题看C语言核心考点:循环、递归、数组实战避坑指南
  • Krita AI绘画插件终极指南:如何一键实现智能选区与背景移除
  • 基于分时电价的改进粒子群算法在电动汽车充放电优化调度中的应用
  • BRIICK单总线按键模块:嵌入式低功耗矩阵键盘解决方案
  • M5-SX127x:面向ESP32的轻量级LoRa驱动库
  • PS2键盘鼠标接口电路设计实战指南
  • 当AI学会编程,我们还能做什么较
  • Stable Diffusion像素化创新:Pixel Fashion Atelier对复古RPG UI的现代化重构
  • VS2015环境下FreeImage库的安装与配置全攻略(含常见问题解决)
  • 一文讲清,精益成本管理是什么意思?精益成本的核心是什么?
  • 使用 Cloudlare 实现免费邮箱服务器搭建
  • OpenClaw 大结局——接入个人微信诤
  • 从基础设施到应用:小白程序员必备大模型学习与收藏指南
  • 基于Docker与Frigate的智能家居监控系统:从本地部署到远程安全访问
  • 五菱N15A发动机拆装检修仿真教学软件技术解析——适配职教场景的虚拟实训解决方案
  • OFA与LangChain集成:构建智能图文问答系统
  • 2026年评价高的道路修复专用密封胶公司哪家好 - 品牌宣传支持者
  • 告别手动排版!用Zotero插件在Word中一键生成标准参考文献(含会议论文特殊处理)
  • HunyuanVideo-Foley镜像深度解析:CUDA12。4与RTX4090D的优化细节