Design declarative intervention harness
This commit is contained in:
@@ -39,6 +39,10 @@ M: measurement/scoring protocol
|
||||
SLO-constrained feasible frontier, req/s/GPU, latency quantiles, pass-rate guard
|
||||
```
|
||||
|
||||
当前 `src/aituner/harness.py` 是 prototype:它已经展示 no-LLM loop 和 mechanism-guided
|
||||
proposal 的可行性,但仍然包含大量 rule-based heuristics,不能作为最终 harness
|
||||
contribution。新的目标设计见 [Declarative intervention harness design](harness-ablation/declarative-intervention-harness-design-20260626.md)。
|
||||
|
||||
Planner 是可替换的:
|
||||
|
||||
```text
|
||||
@@ -79,11 +83,28 @@ kernel、KV cache、通信和排队的闭式性能模型。更稳妥也更强的
|
||||
| C5. AITuner 找到 near-optimal region,而不是只找到一个可行 config | Qwen30B 有解释性信号 | [Qwen30B SLO robustness](harness-ablation/qwen30b-slo-robustness-20260624.md) | 选 1-2 个 case 做局部 grid 或专家配置对照 |
|
||||
| C6. AITuner 能随 SLO tightness 移动到合适 frontier | Qwen30B 已完成 | [Qwen30B SLO robustness](harness-ablation/qwen30b-slo-robustness-20260624.md) | 再选一个非同质 case 做 SLO sweep;同时画 SLO tightness -> frontier/regime transition |
|
||||
| C7. Engine adapter 让 intervention grammar 可迁移到其他 serving engine | 设计上可行,暂不作为主实验 claim | `EngineLaunchSpec` / launch recipe / tunable schema | vLLM 主线完成后,再做 SGLang adapter 和一个低成本验证 case |
|
||||
| C8. Harness 对坏初始点有恢复能力,不只依赖可信 base config | planner 规则和本地回归测试已补;真机待跑 | [No-LLM harness mechanism](harness-ablation/no-llm-harness-mechanism-20260625.md) | 从 `TP=8, max-num-seqs=8, gmu=0.5` 等坏起点做 no-LLM 真机 recovery run |
|
||||
| C8. Harness 对坏初始点有恢复能力,不只依赖可信 base config | 当前 rule-based fix 只能作为 prototype 信号,不能作为最终 claim | [Declarative intervention harness design](harness-ablation/declarative-intervention-harness-design-20260626.md), [No-LLM harness mechanism](harness-ablation/no-llm-harness-mechanism-20260625.md) | 重构为 grammar/operator 后跑 random/adversarial start distribution |
|
||||
|
||||
## 最高优先级实验
|
||||
|
||||
### P0a. Bad-start recovery confirmation
|
||||
### P0a. Declarative harness redesign gate
|
||||
|
||||
目的:停止继续向 `harness.py` 添加 testcase-specific rules,把 harness 重构成
|
||||
declarative intervention grammar + coverage-relative validator。
|
||||
|
||||
最低验收:
|
||||
|
||||
- CandidateSet 完整枚举并持久化 snapshot;
|
||||
- `harness_priority` 与 backend ranking 分离;
|
||||
- CoverageUnit 结构化,stop 不能只依赖 exact signature;
|
||||
- Failure invalidation 有保守 region predicate 和 retry/unblock 条件;
|
||||
- grammar/policy/capability 都有 version 和 anti-overfitting static checks;
|
||||
- LLM/BO 只能选择合法 candidate,不能绕过 validator。
|
||||
|
||||
优先级原因:如果不先完成这个 gate,继续扩展 bad-start/SLO/2x2 实验只是在证明一个
|
||||
rule-based prototype。
|
||||
|
||||
### P0b. Bad-start recovery confirmation after redesign
|
||||
|
||||
目的:回答 harness 是否只能从可信 base config 起步,还是能从明显不合理的初始 config
|
||||
恢复到正确方向。
|
||||
@@ -96,6 +117,9 @@ kernel、KV cache、通信和排队的闭式性能模型。更稳妥也更强的
|
||||
| bad-runtime | `TP=2, gmu=0.5, max-num-seqs=8` | 低 runtime headroom 会跳回 nominal floor |
|
||||
| combined-bad | `TP=8, gmu=0.5, max-num-seqs=8` | topology recovery 和 runtime recovery 能串联 |
|
||||
|
||||
注意:这不是先跑一条手工 bad case。必须在 declarative harness 之后跑 random/adversarial
|
||||
start distribution,并报告分布结果。
|
||||
|
||||
预期图:
|
||||
|
||||
- x-axis: trial index;
|
||||
@@ -103,9 +127,9 @@ kernel、KV cache、通信和排队的闭式性能模型。更稳妥也更强的
|
||||
- line groups: trusted-start vs bad-start cases;
|
||||
- annotation: proposal family sequence,例如 `TP downshift`, `gmu floor jump`, `gmu climb`。
|
||||
|
||||
启动条件:先确认 dash fleet 有空闲 8xH20 机器;用户确认后再开跑。
|
||||
启动条件:先完成 P0a;再确认 dash fleet 有空闲 8xH20 机器;用户确认后再开跑。
|
||||
|
||||
### P0b. 完成 Qwen235B decode 2x2 并整理 aggregate
|
||||
### P0c. 完成 Qwen235B decode 2x2 并整理 aggregate
|
||||
|
||||
目的:补齐最核心的 `harness on/off x strong/weak planner` 证据,回答:
|
||||
|
||||
|
||||
Reference in New Issue
Block a user