Tree-of-Evolution: Tree-Structured Instruction Evolution for Code Generation in Large Language Models¶
会议: ACL 2025 (Long Paper)
arXiv: 无
代码: 无
领域: 代码生成 / 数据合成 / 指令微调
关键词: Code Instruction Synthesis, Tree-Structured Evolution, Optimization-Driven Generation, Code LLM, Data Quality
一句话总结¶
提出Tree-of-Evolution (ToE)——一种树结构的代码指令合成框架,通过多路径进化和质量驱动优化来克服现有方法(如Code Evol-Instruct/OSS-Instruct)的单向合成和随机生成限制,仅用75K合成数据微调base model即可达到或超越Qwen2.5-Coder-Instruct(数百万样本微调)的性能。
背景与动机¶
代码指令数据的人工标注成本高昂,现有LLM驱动的代码指令合成方法(Code Evol-Instruct、OSS-Instruct)虽然大幅降低了数据获取成本,但存在两个关键问题: 1. 单向合成:每条指令只沿一个进化路径生成,限制了数据多样性和探索空间 2. 随机驱动:进化方向随机选择,不考虑前一步的质量反馈,导致数据质量不稳定
核心问题¶
如何在有限的合成预算下(如75K条数据),最大化代码指令的质量和多样性?
方法详解¶
整体框架¶
将代码指令合成过程建模为树结构:每条种子指令作为根节点,可沿多条进化路径分支发展,每个分支代表不同的变异/演化方向。通过优化驱动机制,每一步进化都基于前一步的质量评估来调整方向。
关键设计¶
- 树结构多路径进化
- 传统方法将指令进化建模为线性链(A→B→C),ToE将其建模为树(A→{B1,B2,B3}→...)
- 每个节点可以探索多个进化方向(如增加复杂度、改变算法范式、添加约束条件等)
- 树的分支因子和深度可调,平衡探索广度和深度
-
避免了单向进化的多样性瓶颈
-
优化驱动进化(Optimization-Driven Evolution)
- 每一步进化后评估生成质量(如代码可执行性、通过测试用例的比例等)
- 基于前一轮质量反馈调整下一轮的进化策略
- 类似于搜索算法中的"解质量引导",而非随机探索
- 保留了高质量的进化路径,剪枝低质量分支
实验关键数据¶
在5个主流代码benchmark上的评估:
| Benchmark | ToE (75K) | 说明 |
|---|---|---|
| HumanEval | 达到/超越 Qwen2.5-Coder-Instruct | 后者用数百万样本微调 |
| MBPP | 达到/超越 Qwen2.5-Coder-Instruct | |
| EvalPlus | 可比 | |
| LiveCodeBench | 可比或超越 | |
| BigCodeBench | 可比 |
核心亮点:75K合成数据 vs 数百万样本,数据效率提升约10-50倍。
消融实验要点¶
- 树结构 vs 链式进化:树结构在数据多样性和下游性能上显著更优
- 优化驱动 vs 随机进化:优化驱动显著提升数据质量
- 分支因子和深度的trade-off:更多分支提供更好的多样性,更深层级提供更多难度渐进
亮点¶
- 数据效率极高:75K数据微调即可与百万级数据的SOTA持平,极具实用价值
- 树结构建模自然贴合进化过程:指令的变异天然可以多路径分叉
- 优化驱动避免了无效进化:每步都有质量反馈,避免生成大量低质量数据
- 与现有方法兼容:树结构可以应用于任何基于进化的指令合成方法
局限性 / 可改进方向¶
- 树结构探索的计算成本随分支因子指数增长,需要合理的剪枝策略
- 质量评估依赖代码的可执行性测试,对非代码领域的泛化需要新的质量信号
- 未探索更大规模(如500K+)数据合成时的性能scaling行为
与相关工作的对比¶
- vs Code Evol-Instruct:单向链式进化,随机选择进化方向;ToE多路径+质量引导
- vs OSS-Instruct:从开源代码中提取种子指令,进化方式也是单向的
- vs Qwen2.5-Coder-Instruct:需要数百万级数据;ToE仅需75K实现可比性能
启发与关联¶
- "树结构搜索 + 质量反馈"的框架可迁移到其他领域的指令合成(如数学推理、对话等)
- 数据效率的大幅提升对资源受限的研究者非常友好
评分¶
- 新颖性: ⭐⭐⭐⭐ 树结构进化 + 优化驱动的组合思路新颖,但单个组件不算全新
- 实验充分度: ⭐⭐⭐⭐ 5个benchmark全面评估,与SOTA比较有说服力
- 写作质量: ⭐⭐⭐⭐ 方法动机清晰(基于ACL Anthology摘要判断)
- 对我的价值: ⭐⭐⭐⭐ 数据高效合成方法在代码生成和其他领域均有应用潜力