关于AI在自主进展方面的局限性 背景:几天前,我为一个"NanoHVM"写了一个提示——这是我运行时的玩具版本,具有16位术语——并要求AI编写一个评估器。在几轮人类与AI的合作后,我得到了一个令人惊讶的快速实现。 可惜的是,文件变得非常庞大且难看,所以我想把它缩小。我设置了一个codex/claude/gemini会话,并要求他们"缩短它"。第一次提示有效,所以我不断重复同样的请求,持续了几个小时。最终,AI们遇到了瓶颈。无论我怎么要求,他们都无法将其缩短到某个阈值以下。 我想了解原因,于是我阅读了文件。令我惊讶的是,它显然并不优化——有大量冗余和糟糕的抽象——然而,它几乎没有再变化。一次又一次的提交,它仍然包含相同的技术、相同的方法和相同的冗余。只有小的调整,但没有进行重大重写,而这正是进一步改进所需要的。因此,我要求AI就这样做。 "这次进行一次完整的重写" "从根本上考虑它" "你可以自由更改任何内容" "停止进行增量更改" "用全新的方法替换X" 然而,这都是徒劳的。这些通用请求根本没有效果。几个小时后,文件仍然实现了相同的方法。AI被困在一个局部最小值中,无法摆脱。 所以,我放弃了,决定加入。我花了几分钟思考,写了一个简短的提示——大约500个标记——并给出了具体的指示。"用Y替换X,以这种方式做Z"。不知怎么的,这大约3段文字让他们突然灵光一现,他们立即解开了困境,连续工作了大约1小时30分钟,最终返回了一个几乎小了2倍*并且*快了10%的文件。它是一个非常美丽、高质量的文件。 所以,我想教训是:现代AI无法自主进展。如果你让它们在无人监督的情况下工作,它们会陷入困境。这是这些东西工作的一个基本限制,至少目前是这样。然而,如果每隔几个小时,你花5-10分钟重新审视它们,了解它们的进展,并注入一些人类知识——那么它们就会继续前进,做大量的工作并取得惊人的成果,而你可以在周末玩游戏。 我想知道它们缺少什么才能在没有我干预的情况下解开困境。感觉我的提示并没有什么特别之处。上面的所有想法都是这些AI所知道的概念,感觉它们绝对可以自己想出这些想法。然而,它们就是不这样做……为什么? 无论如何,我计划在下周晚些时候开源这个可爱的东西。它对你们大多数人来说并不完全有用,但如果你碰巧在寻找世界上最快的16位模式匹配引擎,这个文件可能正是你所寻找的!
"小心,这是你最后一次编辑" 没关系,我相信那是最后一个错字
哦,去他的
28