arbor
在给定目标和评估器的情况下,使用来自 Arbor 论文的假设树精炼(Hypothesis Tree Refinement,HTR),自主改进真实产物(代码、训练配方、智能体运行外框、数据流水线、提示词等)。只要有人希望在不发生过拟合的前提下,通过大量实验对某些东西进行迭代优化,就使用它——例如:“把我模型的评估分数提上去”“改进这个智能体/运行外框”“调优这条流水线”“在这个基准上击败基线”“在多种方案之间搜索并保留最佳方案”“进行一次 MLE-bench / Kaggle 风格的优化”,或任何长时域任务“让这个产物变得更好,而不仅仅是记住开发集”。即使用户没有提到“Arbor”或“假设树”,但描述了反复的实验-评估循环、对竞争想法的分支式探索,或担心开发/测试集差距,也要触发它。运行由 Claude 自身作为协调器,并在隔离的 git 工作树中使用子智能体执行器;关于独立的 `arbor` 命令行工具,请参见 references/arbor-upstream.md。
Arbor — AI 假设树精炼自主优化技能
技能概述
Arbor 是一个实现假设树精炼(HTR)方法的自主优化技能,帮助您通过结构化实验管理迭代改进代码、模型、代理框架或数据管道,避免过拟合并积累可复用的洞察。
适用场景
1. 模型训练优化
当您需要调整优化器、架构或训练配方来降低损失或在更少步骤中达到目标时,Arbor 可以自动组织多次实验,比较不同假设,并只将通过测试验证的改进合并到主分支。适用于需要反复调参的训练任务。
2. 代理框架工程
如果您的代理循环、搜索框架或工具使用架构需要提升通过率或准确性,Arbor 通过假设树管理并行实验,让每次尝试都成为可审计的证据,避免盲目试错带来的经验流失。
3. 基准测试竞赛优化
在 MLE-bench 或 Kaggle 风格的"改进提交"任务中,Arbor 的开发/测试分离机制能够有效防止对开发集的过拟合,确保改进在真实测试环境中同样有效。
核心功能
1. 假设树状态管理
通过 scripts/tree.py 工具管理整个优化过程:创建假设节点、记录实验证据、传播洞察到父节点、剪枝失败方向。假设树作为持久化的研究记忆,即使在长周期运行后上下文被压缩,决策仍然基于完整的实验历史。
2. 协调器-执行器模式
您作为协调器拥有假设树并决定搜索方向,短命的执行器子代理在隔离的 git worktree 中测试单个假设并回报结果。隔离确保并行实验不会相互干扰,探索性更改在通过合并门控前保持隔离状态。
3. 开发/测试分离的合并门控
使用开发评估器自由指导搜索方向,但只允许通过独立测试评估器验证的改进成为新的最佳版本。这种机制捕捉开发/测试分歧,高开发分/低测试分的候选方案被视为利用反馈信号而非产生可迁移改进的证据。
常见问题
Arbor 技能适合什么任务使用?
当您拥有可修改的制品、明确的目标、可自动评分的评估器,并预期运行多次实验时,Arbor 是合适的选择。典型场景包括模型训练调参、代理系统优化、数据管道改进、基准测试竞赛等。如果只需要单次修复或一次性答案,直接完成任务即可;如果需要开放式构思且没有评估器,应使用其他技能。
如何防止优化过程中的过拟合?
Arbor 通过严格的开发/测试分离机制防止过拟合:开发评估器用于搜索指导,测试评估器仅在合并门控时使用。在开发集上表现良好但测试集失败被视为警告信号,记录为该方向可能正在利用反馈信号而非产生可迁移改进。没有清晰开发/测试分割的情况下,系统会要求先构建分割。
假设树精炼与传统优化方法有什么区别?
HTR 的核心在于将研究状态持久化在假设树中而非对话历史中。每个节点绑定假设、提炼的洞察和对应制品版本。Arbor 的优势来自预算的组织方式——维护竞争假设、比较兄弟节点、传递经验教训——而非花费更多代币。结构化搜索优于暴力采样,每次实验都基于树已有知识进行条件化。