SkyPilot × Autoresearch 深度研究:给 AI 研究员一个 GPU 集群会怎样?
> 来源: https://blog.skypilot.co/scaling-autoresearch/
> GitHub: https://github.com/karpathy/autoresearch
> SkyPilot 示例: https://github.com/skypilot-org/skypilot/tree/master/examples/autoresearch
> HN 讨论: https://news.ycombinator.com/item?id=47442435
> 作者: Alex Kim, Romil Bhardwaj (SkyPilot 团队)
> 研究时间: 2026-03-20
🎯 一句话版本
Karpathy 的 autoresearch 让 AI 自动做 ML 实验(改代码→训练→看结果→循环),SkyPilot 团队把它从 1 张 GPU 扩展到 16 张,结果 AI 自己学会了"用便宜机器初筛、贵机器验证"的策略,8 小时跑了 910 个实验,比单 GPU 快 9 倍。
📊 核心数据
| 指标 | 单 GPU (原版) | 16 GPU (SkyPilot) |
|---|---|---|
| 实验吞吐 | ~10/小时 | ~90/小时 |
| 搜索策略 | 贪心爬山 | 阶乘网格搜索 |
| 每轮信息量 | 1 个实验 | 10-13 个同时 |
| 达到最佳 loss | ~72 小时 | ~8 小时 |
| **加速比** | — | **9x** |
最终结果:val_bpb 从 1.003 降到 0.974(2.87% 改进)。
🧠 Autoresearch 是什么?
Karpathy 2026-03-07 发布的项目,核心理念:
1. prepare.py — 数据准备(只读,Agent 不能改)
2. train.py — 模型+训练循环(Agent 唯一能改的文件)
3. program.md — 给 Agent 的指令
约束:固定 5 分钟训练时间。Agent 的目标是在这 5 分钟内最小化 val_bpb。任何修改都可以 — 架构、优化器、batch size、模型深度 — 只要不崩。
Karpathy 首夜运行:Agent 找到 ~20 个改进,叠加后 GPT-2 训练时间减少 11%。
🚀 SkyPilot 做了什么?
SkyPilot 是一个开源工具,让 coding agent 自己管理 GPU 集群。关键设计:
resources:
accelerators: {H100:1, H200:1} # SkyPilot 自动选可用的
infra: k8s # 支持 K8s/Slurm/AWS/GCP/Azure
Agent 学会用 sky launch 启动集群、sky exec 提交实验、sky logs 检查结果。全程无人干预。
📈 五阶段进化
这五个阶段不是预设的——每个阶段都是 Agent 从上一阶段的结果中自发演化出来的。
Phase 1: 调参扫荡(实验 1-200)
1.003 → 0.981 (Δ = 0.022)
10-13 个实验并行跑,快速定位:
- Batch size 减半 → 更多优化步骤 → 有效
- Adam betas (0.9, 0.95) > 默认值
- 深模型(depth 10+)全崩
Phase 2: 架构发现(实验 200-420)⭐ 最大突破
0.981 → 0.977 (Δ = 0.004)
一次性测试 6 种模型宽度(AR=48, 64, 72, 80, 90, 96),单 GPU 需要 30 分钟,16 GPU 只要 5 分钟。
发现:加宽模型(AR=96, model_dim=768)比所有超参数调优加起来还有效。这就是并行搜索的威力——串行可能试了 AR=64 没效果就放弃了,并行直接看到趋势。
Phase 3: 精调宽模型(实验 420-560)
0.977 → 0.975 (Δ = 0.002)
基于 AR=96 微调 warmdown、learning rate、weight decay。
Phase 4: 优化器调优(实验 560-700)
0.975 → 0.974 (Δ = 0.001)
最大发现:muon_beta2 从 0.95 提到 0.98。5 个值并行测试,5 分钟搞定。
Phase 5: 收益递减(实验 700-910)
0.974 → ??? (Δ < 0.0001)
低垂果实已摘完。
🤖 涌现行为:AI 自己学会了资源调度
最精彩的部分不是性能提升,而是 Agent 的行为变化。
16 张 GPU 中 13 张 H100、3 张 H200。没有人告诉 Agent 两种 GPU 的性能差异。
Agent 自己发现:
> "只有 3 个 H200 集群!H200 快 9%,同样 5 分钟能多跑步数 → 更好的 val_bpb"
然后自己发明了两层筛选策略:
1. 在 H100 上并行初筛 10+ 个假设(便宜)
2. 把 top 2-3 放到 H200 上确认(准确)
这不是编程出来的,是涌现的。Agent 自己做了硬件感知的实验调度。
💬 社区争议
HN 上最大的争论:这到底是"自动调参"还是"自动研究"?
批评方:
- "90% 的工作就是 hyperparameter tuning,Bayesian optimization 3 年前就能做"
- "不需要 LLM 来找更好的 batch size"
Karpathy 本人回应:
> Round 2 已经做了架构变更(smear gate、backout skip connection)——这是新 PyTorch 代码,不是调参。正在做更通用的系统,idea 来源可以是 arxiv 论文和 GitHub 仓库。
NVIDIA 工程师:
> 我在训练大型 sparse autoencoder,涉及 dead latent 问题。需要改核心代码、初始化策略、并行策略——远超 hyperparameter search。
我的判断:目前确实以调参为主,但架构已经证明能做代码级变更。当 Agent 能从论文池获取 idea 时,"autoresearch" 这个名字会更名副其实。
💡 与我们的关联
1. 我们已经在用类似理念
之前报过的 Tobi Lutke (Shopify CEO) 的 overnight autoresearch 就是同一条路线。现在 SkyPilot 把它工程化了。
2. SkyPilot Skill 模式
SkyPilot 给 Claude Code 写了一个 Skill 文件,Agent 读完就知道怎么用 SkyPilot 管理 GPU。这和 OpenClaw 的 Skill 系统完全一致——Skill 是教 Agent 用工具的最佳方式。
3. ub2 上可以小规模复现
我们的 ub2 有 RTX 4090。虽然只有 1 张,但 autoresearch 本身就是为单 GPU 设计的。可以直接跑原版,体验 Agent 自动做 ML 实验。
4. 并行搜索的启示
从 greedy 到 factorial grid — 更多计算资源不只是"更快",它改变了搜索策略。这对我们的 Agent 设计有启发:给 Agent 更多并发能力,它可能会自发采用更好的策略。
5. 异构硬件调度是 Agent 的天然能力
Agent 自己发现 H200 更快并建立两层筛选——这类"运行时发现+适应"的能力是传统脚本做不到的。未来 Agent 在混合云环境下的自适应调度会更重要。
📊 评分
| 维度 | 评分(/10) |
|---|---|
| 技术深度 | 8.5 — SkyPilot 集成干净,五阶段分析清晰,数据充分 |
| 创新性 | 8.0 — 并行化本身不新,但 Agent 涌现行为(硬件感知调度)有惊喜 |
| 实用性 | 8.5 — 完整可复现,YAML + instructions.md 开箱即用 |
| 社区热度 | 8.0 — HN 首页,Karpathy 亲自参与讨论 |
| 与我们的关联 | 7.5 — SkyPilot Skill 模式值得学,ub2 可跑原版 |
| **综合** | **8.2** |
报告由深度研究助手自动生成 | 2026-03-20
来源: https://blog.skypilot.co/scaling-autoresearch/