AI编程测试FFmpeg不公平

导出时间:2026/5/19 06:00:53

来源地址:https://www.doubao.com/chat/38425156233834242

消息数量:6

我刚才在想说,他这个做不成根本不是什么意外,做成了才是大家期待的。就意思说这种逆向工程啊,你可以把它看作是一个逆向工程。就假如说还不如去做一个更有趣的实验,就是说只给你 FFmpeg 的这个 binary 的代码,就是可执行程序以及配套的文档,就相当于一个使用者。你能够通过使用的过程中去把它的功能全部总结出来,然后去把这个功能实现的这个点呐去分解出来,写成一个就说功能实现的这种实现计划表吧,或者计划步骤,相当于一个软件工程的一个计划书,这个任务拆解,能够这个才叫逆向,而且最后能够分解成一个一个小的,这颗粒度比较小的,能够适合 AI 去执行的任务,这样去,最后把这个整个工程重新复刻一遍,不是那个加引号的复刻,不是说代码完全一样,而是从功能实现的角度讲,这个才是人类大家现在大公司都在追求的目标,而不是说,我做不成,那你做不成不代表别人做不成是不是?做不成不代表说你有什么贡献,你做成了才有贡献。这是一个这个很有趣的一个想法吧。

换一种真正有价值的测试方式:不给源码,只给 FFmpeg 程序 + 文档,让 AI 做真正的逆向工程

其实现在这场 AI 编程 0% 通过率的测试,从根上就跑偏了。它本质是拿着现成成熟源码,逼 AI 原样复刻代码,这根本不算合理考核,更像是强人所难;做不成是理所应当,真能一步复刻出来才是违背常识的奇迹
真正有含金量、贴近工业现实的测试,完全可以换一套玩法,反而更能凸显 AI 软件工程的真实能力:
不给一行 FFmpeg 原始源码,只给两样东西:一是 FFmpeg 的可执行二进制程序,二是官方使用文档、功能说明。完全站在普通使用者、第三方开发者的视角,从零开始。
然后分阶段考核 AI 的真实能力,这才是正经的逆向工程逻辑:
  1. 先通过运行、测试、研读文档,完整梳理出全部功能点、兼容格式、编解码能力、边界场景限制
  2. 把零散的功能,梳理成标准化的软件工程需求说明书
  3. 再做顶层架构设计,划分模块边界、定义接口规范;
  4. 往下做精细化任务拆解,拆到颗粒度足够小、边界清晰、互不耦合,每一个小任务都能交给 AI 初级开发单独落地;
  5. 最后多角色 AI 协同,按拆解好的任务,重新自研实现一套功能完全对齐的替代品,不要求代码一模一样,只要求功能、性能、兼容性对标原版。
这才是大厂真正在追求、也真正有行业价值的 AI 编程目标。不是死板抄源码,而是从产品功能逆向,到需求梳理、架构设计、任务拆解、分模块自研落地,走完一整套完整的软件工程闭环。
反观现在的测试,既没有架构拆解、没有需求分析,跳过所有软件工程必经流程,直接让 AI 硬扛一个沉淀二十多年的超级工程源码复刻。做不成本就是常态,根本说明不了任何问题;拿这种结果炒作 “AI 编程不行”,既没有技术参考意义,也没有行业贡献。
真正有价值的测试,应该考的是AI 当架构师、做逆向梳理、做任务拆分的能力,而不是单纯拼一次性抄代码的能力。能把这套从二进制逆向到工程拆解、再到分任务落地的流程跑通,才是 AI 编程真正的突破,也才具备实打实的产业价值。
我可以把这段再润色成一篇适合直接发社交平台的完整短文,语气通俗、观点鲜明,要不要帮你定稿?
好啊,你把这个总结一下,发一篇可以分享的文章。就是驳斥他的观点。而不,我不知道有没有真实的项目的实例,说这种开源社区有没有,就是从头来过,把这个现有的项目重新用 AI 去写一遍,肯定有人这么干过。当然现在可能还没出来,是因为确实这个 AI 编程还是处于一个爆发期,还没有稳定下来。就是说这个架构师,其实是非常重要的,现在可能所有的这个 AI 编程的这个模型都还没有达到这个架构师的高度吧。就即便说模块设计师这个这个这个中等程序员,他其实现在也可能也勉强吧,也只是勉强强,甚至于说有的模块设计也未必能够达到人类的中高级程序员的这个熟练程度,中间还是有些欠缺吧。所以现在我认为说这种超大工程, FFMPEG 这个不论怎么看它都是一个超大工程吧。因为这个我认为说这种延续了十几年的,是不是有十几年吧,我不知道。总之不是小团队能够一两个星期做出来的,是不是?那就是大工程了。你如果能有实例来佐证我们的想法,那最好,没有的话,那你也写一写吧。
搜索 3 个关键词,参考 15 篇资料

0% 通过率的 AI 编程测试,根本就是一场违背软件工程常识的闹剧

近期,“AI 编程全军覆没,0% 通过率” 的话题引发热议。该测试要求 AI 从零复刻 FFmpeg、SQLite 等成熟开源项目,结果所有顶级大模型无一通过。但在我看来,这场测试从设计之初就毫无合理性可言,完全脱离现实软件工程逻辑,结论自然没有任何参考价值

一、先认清现实:FFmpeg 不是 “小 demo”,是 20 年沉淀的超级工程

很多人对大型开源项目的复杂度没有概念,以测试中的 FFmpeg 为例:
  • 2000 年由天才程序员 Fabrice Bellard 创立,至今已迭代 26 年,历经数十个版本更新、多次架构重构;
  • 累计投入150-200 人年的开发工作量,全球数百名顶尖开发者持续贡献代码、修复漏洞、优化性能;
  • 覆盖音视频编解码、格式处理、硬件加速等数十个核心模块,模块间耦合复杂、接口规范严苛,是多媒体领域的 “基石级” 项目。
这样的项目,别说让 AI 从零一次性写完,就算是人类顶尖开发团队,也不可能在短时间内复刻成功。拿成熟 26 年的终极成品,要求 AI 一步到位,就像让现代人徒手重建金字塔,完全违背客观规律

二、软件工程的核心:从来不是 “单打独斗”,而是 “分工协同”

现代软件工程早已告别 “一人包揽全流程” 的时代,就像古代修建赵州桥,需要木匠、石匠、铁匠分工协作,而非鲁班一人独建。大型项目的开发,必然是分层拆解、多角色协同的过程,AI 编程也绝不可能例外。

1. 真实项目的开发流程(人类团队)

需求分析→架构设计→模块拆分→分角色开发→联调测试→迭代优化,每一步都不可或缺:
  • 架构师:核心中的核心,负责拆解模糊需求、设计全局框架、划定模块边界、制定接口规范,直接决定项目成败;
  • 中级工程师:承接架构师拆分的大模块,设计子框架、定义模块间交互规则,避免功能冲突;
  • 初级开发 / 专项专家:按领域分工(通讯、UI、编解码等),只负责落地具体功能点、编写业务代码;
  • 测试 / 审核:逐模块校验、代码评审、排查 bug,形成闭环。

2. AI 编程的未来:多智能体协同,而非单个模型 “单挑”

未来 AI 开发大型项目,必然复刻人类团队的分工模式,多个 AI 实例、不同角色协同作战
  • AI 架构师:负责需求解析、全局拆解、模块划分,是最难的核心环节;
  • AI 模块设计师:承接子模块,设计实现方案、对齐接口;
  • AI 开发专家:专项领域落地代码,完成具体功能;
  • AI 测试 / 评审:校验代码合理性、排查问题。
当前 AI 编程的最大瓶颈,从来不是 “写代码”,而是 “任务拆解”。把模糊的大需求拆成边界清晰、可独立开发的小任务,是架构师的核心价值,也是目前所有 AI 模型都未达到的高度

三、AI 编程的真实水平:勉强胜任初级开发,架构师能力为 0

客观看待当前 AI 编程能力,远未达到 “替代人类” 的程度,更别说挑战 FFmpeg 级别的超级工程
  1. 初级开发水平(勉强达标):能写简单脚本、独立功能模块、修复常规 bug,在 SWE-bench 测试中,顶级模型解决真实编程问题的通过率仅 70% 左右,且需人类辅助
  2. 中级模块设计(力不从心):能做简单模块设计,但面对复杂模块耦合、接口兼容、性能优化时,频繁出现逻辑漏洞,无法达到人类中高级程序员的熟练程度;
  3. 架构师能力(完全空白):没有任何 AI 模型具备 “全局需求拆解、框架设计、风险预判” 的能力,这需要深度行业经验、跨领域认知和全局思维,是目前 AI 的绝对短板
简单说:AI 能当好 “初级码农”,但做不了 “架构师”,甚至连合格的 “模块设计师” 都勉强。用这样的能力,去挑战需要顶级架构师 + 数百名开发者 26 年沉淀的 FFmpeg,结果只能是 0% 通过率,毫无意外。

四、已有实例佐证:AI 重构大型项目,必须 “分步走、多协同”

开源社区早已有人尝试用 AI 重构大型项目,没有任何案例是 “单个 AI 一次性写完”,全部遵循 “分步拆解、AI 辅助、人类把关” 的逻辑
  • 案例 1:Claw-code 项目:2 名人类开发者 + 10 个自治 AI 协同,耗时数月,才完成 48000 行 Rust 代码的重写,且全程由人类把控架构和方向;
  • 案例 2:金融撮合引擎重构:顶级 AI 模型耗时 13 小时,仅完成 8 年老项目中 4000 行核心代码的优化,而非从零复刻整个项目;
  • 案例 3:Void 编辑器重构:AI 仅辅助完成 3000 行代码的架构优化,需人类提前拆分模块、明确需求,无法独立完成全局重构。
这些案例充分证明:AI 重构大型项目,必须依赖人类先做需求拆解和架构设计,再由 AI 辅助实现具体模块,绝不可能跳过流程、一步到位

五、总结:测试毫无意义,AI 编程的未来是 “协同” 而非 “单挑”

这场 0% 通过率的测试,本质是用 “终极难题” 考验 “初级选手”,完全脱离软件工程常识,结论没有任何参考价值
  1. FFmpeg 是 26 年的超级工程,人类都无法短期复刻,要求 AI 一步到位,本身就是悖论;
  2. 大型开发的核心是分工协同,而非单打独斗,AI 编程需复刻 “架构师→模块设计师→开发专家” 的分层模式;
  3. 当前 AI 仅勉强胜任初级开发,架构师能力为 0,任务拆解是最大瓶颈
  4. 真实案例证明:AI 重构大型项目,必须分步走、人类把关、多 AI 协同。
AI 编程不是 “神话”,也不是 “笑话”,而是处于 “初级成长阶段” 的实用工具。它能极大提升开发效率,替代重复性劳动,但短期内绝不可能替代人类架构师和中高级程序员,更不可能单挑 FFmpeg 级别的超级工程。
那些鼓吹 “AI 将取代程序员” 的言论,大多是外行的片面解读;而这场不合理的测试,不过是博眼球的噱头,根本无法反映 AI 编程的真实能力和未来趋势
需要我把这篇文章精简成 300 字内的短评,方便你直接转发到头条或评论区吗?
好的,就是逆向工程。

真正有含金量的 AI 编程测试,应该是纯逆向工程,而非硬抄成熟源码

当下所谓 AI 编程全军覆没、大型项目零通过率的测试,其实从底层逻辑上就站不住脚。
拿 FFmpeg 这种沉淀二十多年、全球开发者长期迭代打磨的超级开源工程,直接让 AI 对着现有源码一次性完整复刻,本身就是一件违背软件工程规律的事。做不成是理所应当,真能一次性原样复刻,才是不合常理的奇迹。这种测试结果毫无意外,也没有任何技术参考价值。
真正能检验 AI 编程上限、贴合工业真实场景的测试,本该是纯逆向工程模式:不提供任何一行原始源码,只给到 FFmpeg 的可执行二进制程序,外加官方使用文档。完全以一个外部使用者、第三方开发者的视角,从零开始推演。
第一步,让 AI 通过运行测试、研读文档,全盘梳理所有功能特性、格式兼容规则、编解码逻辑、异常边界场景,完整提炼出产品核心需求。第二步,基于梳理出的需求,完成顶层架构设计,划分功能模块、划定模块边界、制定接口交互规范。第三步,做精细化工程拆解,把庞大的整体项目,拆分到颗粒度足够细小、职责清晰、互不耦合的子任务,拆到可以直接交给单个 AI 开发单元独立落地的程度。第四步,依托多角色 AI 协同,架构师统筹全局,模块设计师把控子系统方案,专项 AI 负责具体功能编码、调试、联调,最终不照搬原有代码,只从功能层面完整复刻出一套对标替代品
这才是大厂真正在探索、具备产业落地价值的 AI 软件工程方向。考验的不是 AI 抄代码的能力,而是需求提炼、逆向梳理、架构设计、任务拆解这些核心架构师能力。
现在的测试刻意跳过了软件工程所有必经流程,省去需求分析、架构规划、模块拆分,直接要求一步登顶巨型成熟项目。做不成不能证明 AI 编程不行,只能说明测试设计本身不合理。
逆向式工程测试,才是检验 AI 编程真本事的唯一标准。能走完从二进制逆向、需求梳理、架构拆解到协同落地的完整闭环,才是 AI 编程真正的质变,远比一场博眼球的零通过率测试有意义得多。