这是一套面向大模型推理工程的渐进式上机题,出题方式参考真实 Infra Test:提供环境、参考基线和带 TODO 的代码骨架,要求通过阅读源码、打印张量形状和数值对齐完成任务。
完成全部必做题后,应能够:
- 独立实现并验证 Multi-Head Attention。
- 理解 Qwen 系列模型中的 GQA、RoPE 和 RMSNorm。
- 手写自回归生成以及 Prefill/Decode KV Cache。
- 使用标准 Hugging Face Qwen3 接口补全 Prefill/Decode Runtime。
- 在真实 Qwen3 模型上完成可验证的 Prefill/Decode 推理。
| 目录 | 时间 | 任务 | 类型 |
|---|---|---|---|
test_01_mha |
60-90 分钟 | 手写 MHA Runtime | 必做 |
test_02_qwen_attention |
60-90 分钟 | GQA、RoPE、RMSNorm 与 Attention 组装 | 必做 |
test_03_kv_cache |
60-90 分钟 | Prefill/Decode 与 KV Cache | 必做 |
test_04_qwen3_hf_runtime |
60-90 分钟 | Qwen3 Hugging Face Runtime | 必做 |
每个目录先阅读自己的 README.md。不要提前查看其他人的实现。
使用 uv 管理虚拟环境:
uv venv .venv --python 3.14
source .venv/bin/activate
uv pip install -r requirements.txtTest 04 只需额外准备一个与当前 Transformers 兼容的标准 Qwen3 checkpoint。各题环境说明(含 Test 02 的 fixture 生成步骤)详见 ENVIRONMENT.md。
- 可以查阅教程和官方文档。
- 可以使用断点、打印和小规模随机输入。
- 每次只请求提示,不直接查看完整答案。
- 限时 90 分钟。
- 只允许查看官方文档和本地库源码。
- 不使用 LLM、行内生成或已有解答。
- 结束后根据
RUBRIC.md评分并复盘。
不能只以“生成了可读文本”为正确标准。必须同时检查:
- 张量形状
- dtype 和 device
- 数值或 token 对齐
- KV Cache 长度变化
- 边界输入