流水线概览
AutoResearch 的研究流程被组织为七个阶段。每个阶段有明确的输入、输出和质量关卡。
阶段状态机
mermaid
stateDiagram-v2
[*] --> Ideation: /research start
Ideation --> Design: idea 确定
Design --> Implementation: 计划通过评审
Implementation --> Training: 代码就绪
Training --> Analysis: 训练完成
Analysis --> Writing: 结论明确
Writing --> Review: 论文完成
Review --> [*]: 投稿
Design --> Ideation: idea 不可行
Implementation --> Design: 实现发现设计缺陷
Training --> Implementation: 训练暴露代码 bug
Analysis --> Training: 需要补充实验
Review --> Writing: 需要大幅修改回退是正常的
状态机不是单向的。发现问题时回退到之前的阶段是研究的正常组成部分,不是系统故障。
七个阶段
| # | 阶段 | 核心任务 | 主要 Agent | 典型时长 |
|---|---|---|---|---|
| 1 | 选题 (Ideation) | 文献调研 → 生成 idea → 评审 | Scout, Planner, Judge | 2-4h |
| 2 | 实验设计 (Design) | 制定实验计划 → 定义 Contract | Planner, Judge | 1-2h |
| 3 | 代码实现 (Implementation) | 基于 base paper 实现代码 | Coder, 编排器 | 4-8h |
| 4 | 训练 (Training) | 远程训练 → 监控 | Coder, 监控系统 | 8-24h |
| 5 | 结果分析 (Analysis) | 分析指标 → 验证 claim | Planner, Judge | 2-4h |
| 6 | 论文写作 (Writing) | 按章节写论文 | Writer, Judge | 4-8h |
| 7 | 审稿修改 (Review) | 处理审稿意见 → 修改论文 | Writer, Planner, Judge | 2-6h |
pipeline.yaml 配置
流水线的行为通过配置文件控制:
yaml
# .omc/research/pipeline.yaml
pipeline:
stages:
- name: ideation
gate: human # 选 idea 必须人工确认
timeout: null # 不限时
- name: design
gate: auto-judge # Judge 评审通过则继续
max_revisions: 3 # 最多修改 3 轮
- name: implementation
gate: auto-judge
max_revisions: 3
- name: training
gate: auto # 训练完成自动进入分析
monitoring:
active_watch: 30m
patrol_interval: 15m
- name: analysis
gate: auto-judge
require_all_claims: true # 所有 claim 都要有 evidence
- name: writing
gate: auto-judge
clean_context: true # Writer 需要干净 context
- name: review
gate: human # 最终论文人工确认
modes:
autopilot: false # 阶段间不自动推进
ralph: true # 阶段内自动循环
ultrawork: true # 允许并行执行三种 Gate 类型
Gate 是阶段之间的质量关卡:
human — 人工审批
mermaid
graph LR
A[阶段完成] --> B[通知用户]
B --> C{用户决定}
C -->|approve| D[进入下一阶段]
C -->|revise| E[回退修改]
C -->|reject| F[回退到更早阶段]适用于:重要的方向性决策(选 idea、确认最终论文)
auto-judge — Judge 自动评审
mermaid
graph LR
A[阶段完成] --> B[Judge 评审]
B --> C{Judge 判定}
C -->|go| D[进入下一阶段]
C -->|revise| E[修改后重新评审]
C -->|no-go| F[升级为 human gate]
E --> B适用于:有客观评审标准的环节(代码审查、实验计划评审)
三轮上限
Judge 和 Agent 之间最多 3 轮 revise 循环。超过后自动升级为 human gate,避免无限乒乓。
auto — 全自动
mermaid
graph LR
A[阶段完成] --> B[自动进入下一阶段]适用于:高信任度环节(训练完成后自动进入分析)
三个正交模式
这三个模式控制不同维度的自动化程度,彼此独立:
autopilot — 阶段间流转
控制一个阶段完成后是否自动进入下一阶段。
| 开启 | 关闭 |
|---|---|
| 阶段完成 → 自动推进 | 阶段完成 → 等待用户 |
| 适合信任度高的重复实验 | 适合第一次跑的研究方向 |
ralph — 阶段内循环
控制阶段内的执行-检查-修正循环是否自动。
mermaid
graph LR
A[执行] --> B[检查结果]
B --> C{通过?}
C -->|是| D[阶段完成]
C -->|否| A| 开启 | 关闭 |
|---|---|
| 自动循环直到通过 | 每次检查后等待用户 |
| 适合编码-调试循环 | 适合需要人工判断的分析 |
ultrawork — 并行执行
控制是否同时执行多个独立任务。
| 开启 | 关闭 |
|---|---|
| 独立任务并行执行 | 严格顺序执行 |
| 适合多个独立实验 | 适合有依赖关系的任务 |
组合示例
yaml
# 保守模式:适合新研究方向
autopilot: false # 每个阶段都确认
ralph: false # 每步都看
ultrawork: false # 顺序执行
# 推荐模式:平衡效率和控制
autopilot: false # 阶段间仍需确认
ralph: true # 阶段内自动循环
ultrawork: true # 独立任务并行
# 全自动模式:适合已验证的流程
autopilot: true # 全自动推进
ralph: true # 自动循环
ultrawork: true # 最大并行运行时切换
不需要重启系统,运行时随时调整:
bash
# 切换 gate 模式
/gate design human # 把实验设计阶段改为人工审批
/gate training auto # 把训练阶段改为全自动
# 切换运行模式
/mode autopilot=on # 开启阶段间自动推进
/mode ralph=off # 关闭阶段内自动循环下一步
点击上方表格中的阶段名称,查看每个阶段的详细流程。