Large Language Models 与进化搜索的结合已经在多个开放优化问题上取得了已知最优解——从 Erdős 最小重叠猜想到 GPU kernel 设计,从科学定律发现到组合谜题。但所有这些成功背后有一个共同的尴尬:模型每次面对新任务时都从零开始搜索,上一次搜索中积累的经验——知道该变异哪一部分、什么时候该回溯——在任务完成后被全部丢弃。
明尼苏达大学、CMU、KAIST 等机构的研究者在一篇新论文中提出了 Evolution Fine-Tuning(EFT),试图改变这一点。他们的核心思路直截了当:不再把"如何进化"的能力留在搜索框架(scaffold)里,而是通过 mid-training 把它写进模型参数。
问题:发现能力不在模型里
当前 LLM 驱动的进化搜索分为两大流派。
Test-time search 使用固定权重的 LLM(通常是闭源大模型)作为变异算子,依赖 scaffold 的父代选择、种群管理和提示工程来驱动优化。AlphaEvolve、OpenEvolve、ShinkaEvolve、EvoX 等都属于这一路线。问题是:发现能力完全在 scaffold 中,模型本身只是一个被调用的 proposal 生成器。这也解释了为什么这类方法严重依赖大参数量的闭源模型——论文实验显示,9B 以下的开源模型在 scaffold 内根本无法跟随进化轨迹、性能远逊于大模型。
Test-time learning 更进一步:在搜索过程中通过强化学习更新模型权重,让模型针对当前任务特化。ThetaEvolve 和 TTT-Discover 已经用这种方法在若干数学问题上产生了新的已知最优解。但这里的权重更新同样是一次性的——模型为单一任务特化,策略在任务解决后被丢弃,无法复用到新问题。
两条路线殊途同归:发现能力从未真正进入模型。
EFT:用搜索轨迹当教材
EFT 的做法是在预训练和后训练之间插入一个"练习阶段"(mid-training),将进化搜索的完整轨迹转化为监督信号。
具体来说,研究者构建了 Finch Collection——一个包含 156,731 条进化搜索轨迹的大规模数据集,覆盖 10 个领域、371 个优化任务。构建过程分三步:
- 收集种子任务:从 10 个已有 benchmark(包括 AlphaEvolve 数学问题、FrontierCS 竞争编程、ALE-Bench 算法工程、GPU Mode kernel 优化、LLM-SRBench 符号回归等)中选取需要非平凡搜索、具有确定性连续评分器的任务。
- 运行进化搜索:以 Qwen3.5-397B-A17B 作为 Teacher 变异算子,通过 OpenEvolve scaffold 运行每个任务,同时使用 diff-based edit(局部利用)和 full rewrite(全局探索)两种变异策略,共生成 172,997 条原始轨迹。
- 过滤清洗:剔除评测器错误、超时、语法错误等系统性故障,以及"正确父代产生错误子代"的破坏性样本(hard negative),最终保留 90.6%,即约 156K 条轨迹。
每条轨迹记录了一次父代到子代的变异过程:任务指令、父代解、搜索历史、评估器反馈、生成解、分数变化。数据集的编程语言分布为 68.5% Python + 31.5% C++,变异策略分布接近 50:50。
研究者在 355 个任务(留出 16 个用于 held-out 测试)的"改进"轨迹(即子代分数高于父代)上,对 Qwen3.5(2B/4B/9B)和 Qwen3-8B 进行全参数 SFT,得到 Finch 系列模型。
关键结果:小模型学会了跨任务进化
Finch 作为变异算子接入 OpenEvolve scaffold,在 22 个 held-out 任务上一致超越同规模基座模型,平均提升 10.22%。几个值得注意的数据点:
- Finch-9B 在算法工程任务 ahc058 上相较基座提升 290.59%,在 Transaction 数据库优化任务上提升 74.30%。
- Finch-4B 在 Erdős 问题上达到 0.3865(越低越好),与两倍参数量的 Qwen3-8B(0.4036)相当——EFT 让小模型打出了大模型的身价。
- 在 6 道 UC Berkeley 的 NP-hard 竞争编程题(FrontierCS)上,Finch-9B 平均得分 46.01,远超 Qwen3.5-9B 基座的 32.46。
更关键的是任务规模的扩展性:当训练任务数从 15 增加到 355,Finch 在 held-out 任务上的平均性能单调提升 14.1%。这意味着 EFT 的收益来自任务多样性本身,而非某个特定任务的过拟合。
研究还发现,在 SFT 基础上进一步用 KTO 做偏好学习(让模型学会区分好解和坏解),Finch-8B 在第一和第二自相关不等式(AC1/AC2)上超越了已知人类最佳分数。当 Finch-8B 与 test-time RL(nanodiscover,TTT-Discover 的开源复现)结合时,在两个 circle-packing 任务上达到 SOTA。
跨领域策略迁移:从推荐系统到竞争编程
论文最引人注目的案例来自跨领域策略迁移的观察。在一个竞争编程任务中,基座模型 Qwen3.5-9B 只反复尝试同一种领域内策略——Gauss-Seidel 统一权重。而 Finch-9B 却自发地从其他领域"搬运"策略:将推荐系统中的 log-domain 交替最小二乘法、数值优化中的 Levenberg-Marquardt 方法应用到竞争编程问题的求解中。
另一个案例显示,Finch-9B 在 Convolve2D 任务上主动将实现从 scipy 切换为 jax 以提升计算效率——研究者推测这是因为 Finch Collection 中大量涉及 jax 库的轨迹(来自不确定性不等式和矩阵乘法任务)让模型内化了"用 jax 加速"这一跨域可迁移的模式。
范式意义:从外挂搜索到内化搜索
EFT 的价值不在于提出一种更好的搜索 scaffold,而在于它改变了 LLM 与进化搜索之间的关系。
此前,无论是 test-time search 还是 test-time learning,搜索能力都是一种"外部资源"——要么由 scaffold 的模块化框架提供,要么在测试时临时习得然后丢弃。EFT 把"如何进化"本身变成一个可训练的目标,让模型在部署前就完成了"练习"。
这与 Vygotsky 的"脚手架理论"形成了有趣的对应——论文在附录中明确引用了这一心理学框架:supervised scaffold(test-time search)相当于外部辅导,unsupervised scaffold(test-time learning)对应内化阶段,而 EFT 的目标是让模型无论在哪种 scaffold 下都能表现更好,因为发现能力已经被写进了参数。
论文也诚实地列出了几个关键局限:目前 Finch Collection 只用 OpenEvolve 一种 scaffold 收集轨迹,可能影响模型在其他 scaffold(如 EvoX)上的泛化;test-time RL 实验仅在数学任务上验证了协同效应,尚未在 kernel 工程等更实际的任务上展开;当前训练范式限定在单轮交互,多轮推理下的持续进化尚待探索。
研究团队已将 Finch Collection 数据集及 Finch 模型权重在 Hugging Face 上开源(CC-BY 4.0 / Apache 2.0),并额外发布了使用 GPT-5.4 和 Gemini-3-Flash 作为 Teacher 的新增轨迹。项目代码托管在 GitHub 的 Open-Galapagos 组织下。

