没有任何时候,关闭大脑会奏效。

2025年初,我开始看到有人在使用大型语言模型时关闭大脑。他们会让大型语言模型执行某个动作(总结文本、写代码等),然后就默认它有效。

但这在2025年初通常不起作用,结果往往相当荒谬。

随着大型语言模型的进步,我看到这种情况越来越多。有时候,人们会试图让大型语言模型帮他们写代码,基本上就假设它能用。有时会有人在操作,如果问题不行,他们会让大型语言模型帮忙解决问题。

尼克拉斯·格鲁恩调用某些变体作为肉代理.

作为一个for循环肉类代理比2025年初效果更好,我尝试过的类似软件有时确实能勉强运行。虽然还不够好,不至于我想用它,也没成功,但我对2026年9月作为肉类代理的效果印象深刻。

你可以想象大型语言模型(LLM)进步到让大脑不动脑力的肉类代理开发能产生成果平均 质量 软件在可预见的未来,或者甚至认为大型语言模型(LLM)进步到能够在没有人工参与的情况下产出优秀的软件。

假设真的发生了这种情况。公司为什么要使用肉类代理?公司可以直接循环运行LLM,然后裁员。这种方法在任何时候都不会对员工有效。

感谢马克斯·比特克、约西·克雷宁、卢克·伯顿、托马斯·杜连、丹尼斯·斯内尔、米洛什·丹查克、彼得·乔格根和杰米·布兰登的评论/更正/讨论。


  1. 我已经有这个想法大约一年半了。随着大型语言模型的进步,我看到人们在与大型语言模型互动时,更多时间关闭大脑,我现在有这种想法的频率也提高了。
  2. Luke Burton曾这样评价:我认为能够做到这一点,比人们想象的更能说明所做工作的类型。只有当任务价值很低、能承受失败时,我才会放弃这样的工作。对于高价值任务,LLM一次性解决它们的概率要低得多。我必须承担QA、工程经理和架构师的角色。while循环常常感觉像是关键时刻。我总觉得自己错过了什么,或者某个设计不当的提示可能导致需要撤销的架构选择。另一个观察是,高吞吐量让我提高了交付标准。以前我可能会发布MVP并迭代,现在我让代理人打磨和探索远超我常人的边缘案例,而他们除非被提示,否则通常不会做。也许这会让大家产生一些不舒服的想法,但如果代理这么轻松地完成,我想问那些肉类代理:1)你们是不是已经有点偷懒了?2)为什么你们不让代理们远远超出他们能轻松完成的任务?我们一直在做一件你会认为非常适合“放手”自动化的事情,那就是将[已编辑]转换为用Bazel构建。即使是代理,我们也花了几个月时间。这个任务中埋藏着许多无形且难以具体说明的需求,而让代理走在这条线上意味着需要持续的监督。给他们一个“转换成Bazel”然后离开的提示,至少要几个月,甚至几年,甚至可能永远不会?决策点太多,也涉及太多未知的未知因素。比如这种情况有多常见:你遇到一些代码,但不清楚为什么会这样运作,但知道这一点会实质性地改变你应该采取的行动方向。也许它改变了开发者的体验,也许你不知道是否有客户开始使用它,诸如此类。你到底是如何通过实体代理来应对这种情况的?相反,你会回顾和某个利益相关者做的事情,他们会说“哦,那部分内容其实没必要,我们甚至不再使用了。”围绕着某个元素需要保留的错误假设,做出了哪些决策?[Luke评论结束,我自己评论]一个更明显需要做决策的地方,是当代理遇到某个已不在分发渠道的项目时。这是一个小版本是我们比较代理使用不同编程语言的表现而代理人在晦涩语言方面表现得更差,虽然他们会接受训练,但没有主流语言那么多。一个更偏离游戏的例子是你尝试玩桌游(尤其是现代游戏,而不是国际象棋或围棋等经典游戏)。一般来说,对于《失落之城》或《领土》这样的游戏,SOTA模型和装备比一个在桌游方面还算合理但从未玩过这款游戏的人更差。如果你问代理,它对游戏了解很多,能说一些听起来对不懂游戏的人来说合理,但对懂游戏的人来说显然是错误的。我最近和一个新玩家玩过《领土》,他认为用ChatGPT帮助他们理解游戏会帮助他们学习和玩游戏。我对此持怀疑态度,建议这可能会让他们变得更差(据我所知,确实如此)。玩了几局后,我看了ChatGPT告诉他们的内容,可能一半对一半错,但那些半错的部分让他们走到比一般游戏水平高、使用通用游戏启发式算法的人更糟糕的方向。顺便说一句,公开信息足够多,我觉得一个从未玩过但决定花五小时阅读游戏、了解相关信息的人,很容易就能做到99%英寸及以上如果他们能提前阅读游戏(如果允许使用引用,大约30分钟)。我觉得那样会不有趣,也不推荐任何人这么做,但鉴于代理可以做搜索、查询API等,这能显示出当前处理非分布问题时人与代理之间的差距。据我所知,下一个大型模型发布会扭转这一局面,但这个差距至今仍然相当大。无论如何,我的观点是,即使在编码任务中,你也常常遇到分布外的问题,代理的表现远不如理性人类。如果你想要今天好的整体结果,你需要注意这些情况并加以应对。
  3. 当有人只是假设事情会成功时,出了问题的例子有本案,其中智能体(有时)对测试或本案代理人会严重过度拟合某个指标。我听说过一种理论,认为代理人在评估型问题上作弊更多。我不确定这是否正确,但即使假设这是真的,而且在我的工作和个人项目中,即使不运行评估,我也倾向于比大多数人生成更多评估型指令,我也见过一些不做评估型内容的人遇到同样的问题(我觉得更严重),他们写指令时让代理在没有监督的情况下自由行动(我曾在极少监督下成功过,但那只是通过把代理隔离在很大范围内,这让整个过程比大多数人看起来更像评估形态)。当我尝试那些把思维外包给大型语言模型的人的软件时,软件存在严重的问题。有人告诉我这类东西有效,但软件经常是在一个我认为它不符合这里讨论的标准的水平.举个傻的例子,我看到一位编程思想领袖在推特上宣称编程问题被解决了,因为他们尝试了各种(编程)领域的项目,Claude作为专家能解决所有问题。我实际上去看了他们的GitHub,所有我看的例子(非零数字)要么不行,要么效果很差。我做桌游AI时遇到过类似情况,当时我在找现有AI供我的AI对战。他们的AI是一个类似AlphaZero的机器人,比你提示LLM写一个简单的极小极大启发式机器人,然后让LLM循环调整启发式评分(这游戏里,应该被一个平庸的AlphaZero风格机器人打爆)时得到的弱。再举一个傻的例子,按照标准流程(真实商业产品)走,会让你陷入一个无限循环,技术上可以逃脱(大多数程序员可能都能找到逃脱方法),但对于这个非面向程序员的软件来说,典型用户可能无法逃脱并真正使用软件的主要功能。顺便说一句,我自己做过很多“对我来说能用”的软件,如果是真正的产品,我会评为“基本上不能用”,所以我不认为软件基本不工作本身就是坏事(比如说,正则表达式引擎在此讨论我用代理构建了加速电脑上的 ripgrep 搜索,或者这个Rust解释器我曾用代理构建过一些项目来加快代理迭代循环,但这两者都不应该用。我这里也提到过我觉得让代理在数据分析循环中运行,产生完全错误的结果,然后我指导它去修正,这非常有价值。但为自己制作适合狭窄用例但你知道如果“拿法错误”就无法行用的软件,和写了一堆不起作用的软件后却宣称编程已经解决,或者把这种质量的东西放进商业产品中,是有区别的。读到这篇文章的草稿时,当我问这短暂的想法是否值得发表时,Thomas Dullien(又名Halvarflake)说:“好文章!是的,发表吧,因为每当我说”LLM不能解决所有编程问题“时,人们都会用疯子的眼光看我,而我也确实是这么看的。”巧合的是,在我完成这份草稿后,我看到Gary Bernhardt发推说:“把实际的经纪人输出和这里人们对他们的评价对比起来,真是太超现实了。在日常变化中,我的评审经常把差别缩小到原本的25%。大量无用的测试;偏执;逻辑倒置。然后我看了推特,发现'编程问题解决了'”,接着是“自从我发推以来的一个小时里的一个例子:我让它修正一些DATABASE_URL管理。它补充了if直接在NPM脚本中,以及在CI中运行内联JS脚本时的条件节点调用。差别里大约有20块。我修正后:+0行,+1个词。“我想任何对软件态度如此的人,都会有这种感觉很久了。有一段时间,我怀疑那些对LLM生产力大肆宣称的人,是否比我认识的任何人都更能从LLM中获得价值,但正如我们这里讨论的随着更多证据的出现,我越来越确定这只是人们在自欺欺人。我喜欢桌游例子的一个原因是,你可以直接衡量最终AI的水平。在极限时,你可以遇到某种石头剪刀布的情况,观察A > B > C > A但如果只是AI胡说八道,这一点客观上很明显。商业软件也是如此,你可以和公司内部的人交流或自己查看数据,发现转化率很低,流失率很高,用户满意度调查报告的不满率很高等等。如果你想听另一个愚蠢但不太注重软件的例子,最近一篇帖子里有人给我发了一个ChatGPT事实核查,评论中带有居高临下的批评,但当然我已经用ChatGPT核查过并修正了实际错误,所以剩下的只有ChatGPT的错误。总体来说,我发现这类事情(无论是谁的内容,不仅仅是我的),假阳性率(准确率)很低,假阴性率(召回率)一般。如果你动动脑子,我觉得做这些事实核查还是值得的,因为我用一堆假阳性来做一个列表技能,比让另一个人帮忙看草稿要便宜得多。再举一个傻傻的例子,Tpatcek最近提到了一个话题你不应该被一个LLM的学生奉承,认为你做的某项作品很棒(他指的是写作,但这也适用于其他类型的作品)。如果你有上面提到的Gary或Halvarflake的态度,这不言而喻,但有些人不想知道(我觉得你得极力避免注意到才会不知道),因为我看到有人用某种LLM夸大自己的作品来为自己的作品辩护。也许有一天,一个大语言模型说你的工作很天才,或者你的推理彻底推翻了你所反驳者的推理,这才有意义,但我们今天距离那个时代已经很远了(就准确性而言;这并不是对未来时间的预测),所以有人用大语言模型对自己工作或推理的吹捧来为其优点辩护,这大多是他们关闭大脑的信号,也是该作品或推理质量不佳的强烈信号。
  4. 在他的帖子里,他技术上没有提到那个人基本上像“while”循环或“for”循环那样,但我越来越多地看到这种行为,也符合帖子的精神。
  5. 也许这对创始人、大股东等有效,但我亲眼见过的,通常是工作中的员工或个人项目中的人,他们在宣称这方法有多好,软件已经被解决了,暗示软件对受雇的软件工程师来说是个已解决的问题。另一个论点可能是“我们现在都会过时了,为什么不干脆放弃?”,但除非有人能保证人类的过时非常接近,否则这个论点在我看来有些反过来。如果你经济上准备好退休,你可以直接关闭大脑,但你总能这么做,而且一直有很多人寄了过去却没做什么。如果你还没准备好退休,你可以做一些能赚更多钱的事,这通常不会让你关掉大脑。在非过时的未来,赚钱没必要急着,但如果你觉得报废快到了,你需要赚钱,那现在就是赶紧赚钱、做相反的事,而不是关闭大脑的时候。有一种理由是“为什么还要努力工作或做正确的事,反正你也拿不到更多钱”,但我觉得这很不对劲,因为我自己去发现问题并解决问题,拿过加薪、奖金等,这也是我朋友们的经历,除非他们处于一个非常失调、不奖励好工作的地方,那他们就会离开去别的地方。也许还有另一种观点,比如“由于惯性,等大型语言模型足够好能取代程序员后,你会有一个窗口期可以当”肉体代理“。现实来说,鉴于公司对外来员工的热情,这似乎正好相反,如果你的目标是尽量少工作,最好的时机就是过去。如果你和大公司的人聊过这类情况,会发现有很多故事说有人根本不上班(而且不远程工作),解雇他们要几个月甚至几年。过去几年我听到的这些故事没那么多,但我所在的一个团队里有人做过类似的事,如果我没记错的话(我以前知道这个数字,但现在记不太清了),他们决定退休后花了六个月才被解雇,他们觉得如果不去上班还能多拿点工资(这是疫情前在一家非远程公司)。我另一个公司的朋友就是这样,花了两年时间。甚至很长时间都没人开始解雇他们,之后才慢慢升级警告,最后才被炒掉。我朋友说经理说,如果他们想钻系统,假装工作,这会重新开始,解雇时间会更长。如果他们是个有能力的懒汉,可以无限期地留着工作,因为当时的环境是这样。我不明白公司为什么会处于这种状态,但公司似乎用AI作为借口摆脱这种状态,使现在以及很可能的近期成为长期以来最糟糕的时机,试图保住一份工作却不付出任何努力也不提供任何价值。毫无疑问,有些公司可以这样做,但如果你想什么都不做领工资,你其实可以这么做很久了(也许别完全不上班),而且环境比近期更容易。
添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论