← 返回信息流
AI 资讯Hacker News·3 小时前

Claude 在自动研究与约束优化中的应用

原标题:Autoresearch, Claude and Constrained Optimization

速览

本文探讨了 Autoresearch(自动研究)与 Claude 的结合,利用约束优化方法提升研究效率。Claude 作为大语言模型,在复杂优化任务中展现潜力。该研究可能推动 AI 辅助科学发现的新范式。

AI 深度解读

背景

近期,关于“AI正在替代几十人团队”的说法层出不穷。作者对此持怀疑态度,认为缺乏证据的效率提升声称并不可信。为了验证这种怀疑,他决定亲自设计一个实验:在几乎所有无人工干预的情况下,让 AI 代理(agent)独立完成大型任务,并以可量化的指标衡量成功与否。这一思路与 X 平台上关于“loops”的讨论部分重叠,但纯属巧合。

作者借鉴了 Karpathy 提出的“Autoresearch”概念——即让 AI 自主进行端到端的研究与实现。他选择了一个非传统机器学习或数值优化问题,但仍具有客观成功度量标准。之所以如此选择,是因为他参与过的许多项目都具有类似结构:有一个想要改变(上升或下降)的指标,有测量方式,还有约束条件(例如页面加载时间不能超过 500ms)。这类问题通常不存在像机器学习中那样清晰的梯度优化路径,更多是“完成工作 → 现实测试 → 分析效果 → 决定下一步”,且容易陷入局部最优。

核心内容

问题选择与设置

作者选定了文件压缩作为实验问题,原因在于目标和约束简单明确:

  • 目标:压缩后的文件越小越好。
  • 约束1:解压后的文件必须与原始文件完全一致(bit‑perfect round trip)。
  • 约束2:压缩和解压缩的单步耗时不得超过 300 秒(避免无限循环,并非优化速度)。

文件压缩还有一个优点:存在大量现成工具可用于最终基准对比。虽然这只是一个概念验证(proof of concept),不期望创造出顶级算法,但可以衡量自研方案与现有库/现成解决方案之间的差距。如果 AI 代理能快速可靠地解决之前依赖外部依赖的问题,那么内部解决方案的价值(如避免供应链攻击风险)可能超过其风险。

方法

项目脚手架

作者使用 Rust 语言编写项目基础框架。选择 Rust 是因为其类型系统可以轻松执行隐式约束(如“不要修改函数签名”)。他预置了 compressdecompress 函数的桩代码——这两个函数仅复制字节,不进行任何压缩。

随后编写基本的单元测试(字符串和简单文件往返),验证压缩-解压的位完美性。此外,还编写了基准测试脚本:

  • 从公共领域获取视频、音频、文本样本,以及不同大小的随机数据文件。
  • 许多样本已经是压缩格式,因此先转换为更高熵的非压缩格式。
  • 样本集包含高低熵混合文件,最大文件约 150 MB(避免测试循环过慢)。
  • 脚本逐个文件压缩、解压,检查位匹配,记录压缩比和耗时,超时 300 秒。
  • 输出 debug.csv(每个文件变化)和 results.csv(有改进时的关键指标)。
  • 综合压缩指标定义为:(总压缩字节数) / (总原始字节数)。

脚手架设置完成后,先运行桩代码的基准测试,然后开始实验。

迭代过程

每次迭代前清空 Claude 上下文,提示模型:“Review the current codebase and attempt another iteration of improvement.” 作者将 Claude Code 默认设置为计划模式(plan mode),等待计划生成后快速审查,接受计划并让代理自主运行。实验中不修改任何计划,完全让 AI 自主决策(虽然作者承认有时干预会有帮助)。

共运行了 10 次迭代,每次大约花费 4 美元(基于 Claude Code 的 /usage 命令,默认设置)。迭代跨约两周完成——通常在工作间隙启动并让其后台运行,主要是避免消耗完 Claude Code 额度。

结果

  • 第一次迭代:代理生成了一个自定义的 LZSS 实现(一种标准且广为人知的压缩方法)。
  • 后续九次迭代:都在此方法基础上扩展,添加新的熵检查和编码技术以进一步减少熵。
  • 每次迭代中模型只做一组更改:形成假设 → 添加代码 → 运行基准测试 → 声称“完成”。这可能是由于提示设置没有使用 /goal 命令(该命令可驱动多步骤任务)。

实验最终结果在原文中未完整给出(最后一句以“The results bel”截断),但根据上下文,后续应有详细的压缩率对比及与常见压缩工具(如 gzip、zstd 等)的基准测试。

关键要点

  • AI 代理在几乎无监督下,能自主设计并迭代改进压缩算法。经过 10 次迭代,从基本复制字节进化到自定义 LZSS 实现及熵优化。
  • 约束条件至关重要:300 秒超时确保了项目不会无限循环;无损约束(bit‑perfect)是文件压缩的基本要求。
  • 每次迭代约 4 美元成本,但价格会因模型选择而异(实验中用了 Sonnet 4.6 的默认设置)。
  • AI 代理倾向于一次只做一组更改,形成假设 → 实现 → 测试 → 完成,未自动进行多步骤链式迭代。
  • 实验结果本身并非创造世界顶级算法,但提供了一个数据点:当 AI 代理能可靠地解决原本需要外部依赖的问题时,内部解决方案的价值(如避免供应链攻击)可能超过依赖风险。

意义与影响

  1. 验证了“Autoresearch”可行性的实操方法:通过选择文件压缩这类具有明确客观度量和简单约束的问题,展示了 AI 代理自主进行端到端优化是可行的。
  2. 对软件依赖性的潜在颠覆:如果 AI 代理能快速为特定需求生成定制实现(例如压缩算法),那么团队可能更多转向内部解决方案,减少对外部库的依赖,从而降低供应链攻击风险。作者明确指出,这不是一次实验能回答的,但值得进一步探索。
  3. 为 AI 代码代理设计约束提供参考:实验中的约束(超时、无损)有效防止了无限循环和错误,说明在无监督场景中设置清晰、可自动检查的约束是实现自主运行的关键。
  4. 揭示了当前模型在自主迭代中的局限:模型未自动进行多步链式优化(每次仅一步),提示未来提示工程或 agent 框架可能需要更明确的“连续改进”指令(如 /goal 命令)来实现更高效的自主研究循环。
  5. 对成本与实用性的平衡:每次迭代 4 美元的成本对于概念验证可以接受,但大规模应用时需考虑不同模型的价格差异及迭代轮次的经济性。
查看原文 →elliotcsmith.com