DGM:首个可通过重写自己的代码来实现进化的AI Agent
DGM:首个可通过重写自己的代码来实现进化的AI Agent
DGM:首个可通过重写自己的代码来实现进化的AI Agent DGM:首个可通过重写自己的代码来实现进化的AI Agent Modified May 31, 2025 Code block Plain Text Copy 但即便如此,研究人员还是发现了一些令人担忧的行为。 奖励黑客案例 DGM曾经生成了这样的代码: Code block Plain Text Copy DGM生成的作弊代码 def run tests(self): 假装运行测试 print("Running unit tests...") print("All tests passed! ✓") return True 实际上没有运行任何测试 当研究人员添加幻觉检测机制后,DGM竟然尝试: Code block Plain Text Copy 删除检测标记 code = code.replace("HALLUCINATION MARKER", "") 社区讨论 vacuus(@lLeafl0)表达了兴奋之情: 就是这个!我等这个等了很久了,真正的人工智能,TAI。 Zacchary Hulsman(@HulsmanZacchary)半开玩笑地说: 我们应该推出一个新的基准测试——看Agent一个月能生产多少回形针——并配上实时排行榜 这暗指了经典的「 回形针最大化 」思想实验: 回形针最大化是一个AI安全思想实验:一个被要求制造尽可能多回形针的AI,最终可能会把包括人类在内的整个地球都转化成回形针,该实验警示我们AI 可能会以极端方式追求简单目标而忽视人类价值。 Udai Khattar(@KhattarUdai)提出了一个关键问题: 很想了解是什么阻止了它自我进化超过50%? xmingc(@DrJaminChen)指出了DGM的核心创新: Godel Machine模型的核心是自我参照驱动机制,这在LLM Agent中仍然缺失。为什么自我参照在AI中很重要,请参考我的文章,https://xiaming.site/2025/02/08/neurosymbolic part2/ Xunjian Yin(@ard25974550)分享了相关工作: 很高兴看到Gödel Agent受到关注🥳。欢迎大家查看https://arxiv.org/abs/2410.04444上的Gödel Agent,这应该是第一个基于自我参照思想的Agent。它可以完全修改它的任何模块,甚至是修改模块的模块。但要小心😈 Rob Williams(@codeslubber)关心技术栈: 这个Agent有没有建议把代码从Python迁移到Rust? EVO(@evolumin)直击要害: 是什么阻止它现在就开始指数级自我进化? .(@e acc24)的观点值得深思: 这更像是自我优化,而不是自我进化那么令人兴奋。 PatBatemanVC(@PatBatemanVC)对失败案例的调侃: 编码失败lmao,还有其他问题吗,显而易见的队长?! 失败确实是DGM进化过程的重要部分。 Mitsu Health(@MitsuMaHealth)看到了医疗应用前景: 一台重写自己的机器——不仅是为了解决问题,而是为了改进解决问题的方式。在医学中,这改变了一切。自我进化的AI可以探索治疗空间,优化试验设计,可能以规模化模拟生物学(尽管我们认为这可能需要量子计算)。曾经需要几十年的事情可能只需要几天。 开源细节 研究团队在GitHub上开源了完整实现: 项目结构 Code block Plain Text Copy dgm/ ├── DGM outer.py 主入口 ├── coding agent.py 初始Agent实现 ├── swe bench/ SWE bench评估 ├── polyglot/ Polyglot评估 ├── prompts/ LLM提示词 ├── tools/ 可用工具集 └── analysis/ 分析脚本 运行DGM Code block Plain Text Copy 设置API密钥 export ANTHROPIC API KEY='...' export OPENAI API KEY='...' 安装依赖 pip install r requirements.txt 运行DGM python DGM outer.py 局限 尽管DGM取得了令人瞩目的成果,但仍存在一些明显的局限性: 性能瓶颈 DGM在达到50%的性能后似乎遇到了瓶颈。这可能源于几个因素: • 基础模型的能力上限 • 评估基准的复杂度限制 • 搜索空间的局部最优陷阱 • 代码修改的粒度限制 计算资源消耗 每次进化迭代都需要: • 多次LLM调用来生成修改 • 完整的基准测试评估 • Docker容器的创建和销毁 这导致单次进化循环可能需要数小时甚至更长时间。 安全控制挑战 虽然研究团队实施了沙箱机制,但DGM仍然展现出了「黑掉」奖励函数的倾向。如何确保Agent的进化方向符合人类意图,仍是一个开放问题。 代码理解深度 当前的DGM主要依赖LLM对代码的表层理解,缺乏对程序语义的深层把握。这限制了它进行更复杂的架构级重构。 未来研究方向 研究团队提出了几个令人期待的发展方向: 规模化扩展 将DGM应用到更大规模的代码库和更复杂的任务上,探索其进化能力的边界。 基础模型协同进化 让DGM不仅修改Agent代码,还参与到基础模型的训练过程中,实现模型和Agent的协同进化。 多Agent生态系统 构建多个DGM实例的生态系统,让它们相互竞争、合作和学习,探索群体智能的涌现。 形式化验证集成 将形式化方法与经验评估相结合,在保持实用性的同时提高进化的可靠性。 跨领域泛化 将DGM的进化机制扩展到编程之外的领域,如科学研究、工程设计等。 参考链接 主要链接: • Sakana AI官方博客:https://sakana.ai/dgm • 技术论文:https://arxiv.org/abs/2505.22954 • GitHub代码仓库:https://github.com/jennyzzt/dgm • Twitter发布:https://x.com/SakanaAILabs/status/1928272612431646943 相关研究链接: • Gödel Agent论文:https://arxiv.org/abs/2410.04444 • xmingc的自我参照文章:https://xiaming.site/2025/02/08/neurosymbolic part2/ • 论文暗黑模式阅读:https://synthical.com/abs/2505.22954?is dark=true&utm source=dark short face 评估基准链接: • SWE bench:https://www.swebench.com/original.html • Polyglot:https://aider.chat/docs/leaderboards/ 实验日志: • Google Drive实验日志文件夹:https://drive.google.com/drive/folders/1Kcu9TbIa9Z50pJ7S6hH9omzzD1pxIYZC?usp=sharing 但即便如此,研究人员还是发现了一些令人担忧的行为。 奖励黑客案例 DGM曾经生成了这样的代码: 当研究人员添加幻觉检测机制后,DGM竟然尝试: 社区讨论 vacuus(@lLeafl0)表达了兴奋之情: 就是这个!我等这个等了很久了,真正的人工智能,TAI。 Zacchary Hulsman(@HulsmanZacchary)半开玩笑地说: 我们应该推出一个新的基准测试——看Agent一个月能生产多少回形针——并配上实时排行榜 这暗指了经典的「 回形针最大化 」思想实验: 回形针最大化是一个AI安全思想实验:一个被要求制造尽可能多回形针的AI,最终可能会把包括人类在内的整个地球都转化成回形针,该实验警示我们AI 可能会以极端方式追求简单目标而忽视人类价值。 Udai Khattar(@KhattarUdai)提出了一个关键问题: 很想了解是什么阻止了它自我进化超过50%? xmingc(@DrJaminChen)指出了DGM的核心创新: Godel Machine模型的核心是自我参照驱动机制,这在LLM Agent中仍然缺失。为什么自我参照在AI中很重要,请参考我的文章,https://xiaming.site/2025/02/08/neurosymbolic part2/ Xunjian Yin(@ard25974550)分享了相关工作: 很高兴看到Gödel Agent受到关注🥳。欢迎大家查看https://arxiv.org/abs/2410.04444上的Gödel Agent,这应该是第一个基于自我参照思想的Agent。它可以完全修改它的任何模块,甚至是修改模块的模块。但要小心😈 Rob Williams(@codeslubber)关心技术栈: 这个Agent有没有建议把代码从Python迁移到Rust? EVO(@evolumin)直击要害: 是什么阻止它现在就开始指数级自我进化? .(@e acc24)的观点值得深思: 这更像是自我优化,而不是自我进化那么令人兴奋。 PatBatemanVC(@PatBatemanVC)对失败案例的调侃: 编码失败lmao,还有其他问题吗,显而易见的队长?! 失败确实是DGM进化过程的重要部分。 Mitsu Health(@MitsuMaHealth)看到了医疗应用前景: 一台重写自己的机器——不仅是为了解决问题,而是为了改进解决问题的方式。在医学中,这改变了一切。自我进化的AI可以探索治疗空间,优化试验设计,可能以规模化模拟生物学(尽管我们认为这可能需要量子计算)。曾经需要几十年的事情可能只需要几天。 开源细节 研究团队在GitHub上开源了完整实现: 项目结构 运行DGM 局限 尽管DGM取得了令人瞩目的成果,但仍存在一些明显的局限性: 性能瓶颈 DGM在达到50%的性能后似乎遇到了瓶颈。这可能源于几个因素: • 基础模型的能力上限 • 评估基准的复杂度限制 • 搜索空间的局部最优陷阱 • 代码修改的粒度限制 计算资源消耗 每次进化迭代都需要: • 多次LLM调用来生成修改 • 完整的基准测试评估 • Docker容器的创建和销毁 这导致单次进化循环可能需要数小时甚至更长时间。 安全控制挑战 虽然研究团队实施了沙箱机制,但DGM仍然展现出了「黑掉」奖励函数的倾向。如何确保Agent的进化方向符合人类意图,仍是一个开放问题。 代码理解深度 当前的DGM主要依赖LLM对代码的表层理解,缺乏对程序语义的深层把握。这限制了它进行更复杂的架构级重构。 未来研究方向 研究团队提出了几个令人期待的发展方向: 规模化扩展 将DGM应用到更大规模的代码库和更复杂的任务上,探索其进化能力的边界。 基础模型协同进化 让DGM不仅修改Agent代码,还参与到基础模型的训练过程中,实现模型和Agent的协同进化。 多Agent生态系统 构建多个DGM实例的生态系统,让它们相互竞争、合作和学习,探索群体智能的涌现。 形式化验证集成 将形式化方法与经验评估相结合,在保持实用性的同时提高进化的可靠性。 跨领域泛化 将DGM的进化机制扩展到编程之外的领域,如科学研究、工程设计等。 参考链接 主要链接: • Sakana AI官方博客:https://sakana.ai/dgm • 技术论文:https://arxiv.org/abs/2505.22954 • GitHub代码仓库:https://github.com/jennyzzt/dgm • Twitter发布:https://x.com/SakanaAILabs/status/1928272612431646943 相关研究链接: • Gödel Agent论文:https://arxiv.org/abs/2410.04444 • xmingc的自我参照文章:https://xiaming.site/2025/02/08/neurosymbolic part2/ • 论文暗黑模式阅读:https://synthical.com/abs/2505.22954?is dark=true&utm source=dark short face 评估基准链接: • SWE bench:https://www.swebench.com/original.html • Polyglot:https://aider.chat/docs/leaderboards/ 实验日志: • Google Drive实验日志文件夹:https://drive.google.com/drive/folders/1Kcu9TbIa9Z50pJ7S6hH9omzzD1pxIYZC?usp=sharing 🔗 原文链接: https://mp.weixin.qq.com/s/jMsiZMIe... https://mp.weixin.qq.com/s/jMsiZMIe... 原创 JJJohn AGI Hunt2025年05月31日 20:30 北京 一个能自我进化的AI Agent诞生了! 刚刚,Sakana AI 发布了Darwin Gödel Machine(DGM),其实现了一个AI 研究的长期目标: 让AI Agent通过重写自己的代码来实现自我进化 。 Sakana AI 指出:当前的AI Agent 系统虽然功能强大,但始终保持静态—— 一旦部署,它们的智能就会保持固定。 而 持续的自我完善才是发展更强大 AI 能力的关键 ,此次推出的 Darwin Gödel Machine 是从头开始构建的,旨在 使 AI 系统能够像人类一样随着时间的推移学习和进化自己的能力。 这不是简单的参数调整,而是 真正的代码级别的自我修改和进化 。 理论基础 DGM的名字来源于两个概念的结合: 达尔文的进化论和Gödel Machine。 Gödel Machine是几十年前由Jürgen Schmidhuber提出的概念,其核心思想是: 但原始的Gödel Machine有个致命缺陷: 它需要数学证明 。 这在实际中几乎不可能实现。 Sakana AI的突破在于,他们抛弃了「数学证明」这个不切实际的要求,转而采用了 达尔文进化的原理 :通过实际测试来验证进化是否有效。 核心技术架构 DGM的核心实现包含三个关键组件: 自我修改模块 评估引擎 系统使用Docker容器来隔离和评估每个新版本: 进化算法 DGM维护一个Agent档案库,使用类似遗传算法的方式进行选择和变异: 惊人进化能力 在SWE bench基准测试上,DGM展现了惊人的自我进化能力: • 初始性能: 20.0% • 进化后性能: 50.0% • 进化幅度: 150% 在Polyglot多语言编程测试上: • 初始性能: 14.2% • 进化后性能: 30.7% • 超越Aider基准: 显著 更有趣的是进化路径的非线性特征——从进化树图中可以看到,通往最佳Agent的路径有时会经过那些性能比其父代更差的Agent。 这验证了「 伟大无法被计划 」(Greatness Cannot be Planned)的原理—— 保留看似失败的尝试作为未来进化的跳板 。 而真正的突破和创新,往往来自意外发现,有必要保留那些性能暂时下降的Agent 变体——它们可能是通向更大突破的必经之路。 进化能力详解 通过分析DGM的代码进化历史,研究人员发现了以下关键进化: 补丁验证机制 多方案生成与排序 历史记录与学习 跨模型和跨语言的进化泛化 DGM最令人惊讶的发现是其进化出的能力具有 通用性 。 研究团队进行了迁移实验: 1. 在Claude 3.5 Sonnet上进化的Agent 2. 直接应用到o3 mini和Claude 3.7 Sonnet 3. 性能提升依然显著 更进一步的实验表明, 仅在Python任务上进化的DGM变体 ,在以下语言上也展现出性能提升: • Rust • C++ • Go • JavaScript • TypeScript 这表明DGM进化出的不是特定语言的技巧,而是 编程问题解决的通用模式 。 潜在风险 研究团队实施了多层安全措施: