斜杠命令¶
vLLM Ascend 支持在拉取请求评论中使用斜杠命令来触发 CI 工作流。有关谁可以触发每个命令,请参阅权限部分。
可用命令¶
/e2e¶
运行 tests/e2e/pull_request/ 下的特定 E2E 测试。测试会根据路径自动路由到相应的 NPU 运行器。
示例:
# Run a single test on the default runner (a2 single card)
/e2e tests/e2e/pull_request/one_card/test_attention.py
# Run multiple tests across different runners
/e2e tests/e2e/pull_request/one_card/test_attention.py tests/e2e/pull_request/two_card/test_parallel.py
# Run tests on 310P
/e2e tests/e2e/pull_request/one_card/_310p/test_310p_ops.py
路由规则(按顺序匹配):
| 测试路径包含 | 运行器 |
|---|---|
four_card/_310p |
310P 4卡 |
_310p(位于 one_card/two_card 下) |
310P 单卡 |
four_card |
A3 4卡 |
two_card |
A3 2卡 |
其他(例如 one_card) |
A2 单卡 |
仅支持
tests/e2e/pull_request/下的测试路径。tests/e2e/nightly/不接受tests/e2e/models/、tests/e2e/doctests/或/e2e中的测试。夜间测试请使用/nightly。
测试会针对社区 vLLM 版本和最新发布版本同时运行。
/nightly¶
在 A2 和 A3 上触发特定的夜间测试用例。仅支持 PR 评论。测试用例名称对应于 test_config.name 和 schedule_nightly_test_a2.yaml 中定义的 schedule_nightly_test_a3.yaml 条目。
用法:
| 语法 | 范围 |
|---|---|
/nightly <test_cases> |
在 main 分支上运行 |
/nightly <test_cases> --branch <branch> |
在指定分支上运行 |
/nightly <test_cases> --aop_enabled |
Enable AOP hooks (bisect / classify) on failure |
使用 --branch <name> 指定目标分支。如果不使用 --branch,所有参数都被视为测试用例(用逗号或空格分隔),分支默认为 main。
Use --aop_enabled to enable the AOP (Aspect-Oriented Programming) pipeline, which
automatically captures test results, classifies failures (env vs. code), and triggers
binary bisect for genuine failures. By default, AOP hooks are disabled.
注意:在 PR 上评论时,测试会在触发的工作流中自动在 PR 分支上运行;
--branch标志主要用于 issue 评论。
常见测试用例名称(A2):
test_custom_op, test_custom_op_multi_card, qwen3-vl-32b-instruct-w8a8, qwen3-32b-int8, MiniMax-M2.5-w8a8-QuaRot-A2, Qwen3.5-27B-w8a8-A2, Qwen3.5-397B-A17B-w4a8-mtp, accuracy-group
常见测试用例名称(A3):
multi-node-deepseek-v3.2-W8A8-EP, mtpx-deepseek-r1-0528-w8a8, deepseek-r1-0528-w8a8, kimi-k2-thinking, qwen3-vl-235b-a22b-instruct-w8a8, custom-multi-ops, ...
示例:
# Run a single test case on main branch
/nightly qwen3-vl-32b-instruct-w8a8
# Run on a specific release branch
/nightly qwen3-vl-32b-instruct-w8a8 --branch releases/v0.23.0
# Run all tests on a specific branch
/nightly all --branch my-feature-branch
# Run multiple test cases (comma-separated)
/nightly test_custom_op,multi-node-deepseek-v3.2-W8A8-EP
# Run multiple test cases (space-separated, also works)
/nightly test_custom_op accuracy-group
# Run accuracy group tests (branch defaults to main)
/nightly accuracy-group
# Enable AOP bisect for all tests
/nightly all --aop_enabled
# Run specific test with AOP on a release branch
/nightly test_custom_op --branch releases/v0.23.0 --aop_enabled
这会在 workflow_dispatch 和 schedule_nightly_test_a2.yaml 上触发 schedule_nightly_test_a3.yaml。
/cherry-pick¶
将 PR 的提交拣选到指定的目标分支并创建一个新的 PR。这对于将修复回溯到发布分支非常有用。
用法:
| 语法 | 描述 |
|---|---|
/cherry-pick <target_branch> |
拣选到指定分支 |
示例:
# Cherry-pick to a release branch
/cherry-pick releases/v0.23.0
# Cherry-pick to main
/cherry-pick main
将创建一个新的 PR,标题格式为 [Cherry-pick] <original_title> (from #<PR_NUMBER>),正文中包含指向原始 PR 的链接。
如果拣选遇到合并冲突,命令将报告失败,必须手动进行拣选。
/revert¶
通过创建一个新的 PR 来撤销已合并 PR 的更改。回退目标与原始 PR 合并到的基分支相同。
用法:
| 语法 | 描述 |
|---|---|
/revert |
回退此 PR(无需参数) |
示例:
将创建一个新的 PR,标题格式为 [Revert] Revert "original_title" (#PR_NUMBER),正文中包含指向原始 PR 及其合并提交的链接。
只有已合并的 PR 才能被回退。如果回退遇到合并冲突(例如,因为基分支已经严重偏离),命令将报告失败,必须手动进行回退。
/rerun¶
重新运行当前 PR 提交上所有失败的工作流。当 CI 任务因基础设施问题失败时很有用。
示例:
行为¶
- 当您评论斜杠命令时,您的评论会添加 👀 反应,表示已收到
- 相应的 CI 工作流会异步触发
- 完成后,会添加 🎉 反应和摘要评论
范围¶
| 命令 | PR 评论 | Issue 评论 |
|---|---|---|
/e2e |
✅ | ❌ |
/rerun |
✅ | ❌ |
/cherry-pick |
✅ | ❌ |
/revert |
✅ | ❌ |
/nightly |
✅ | ❌ |
权限¶
| 命令 | 谁可以触发 |
|---|---|
/e2e |
PR 作者,或具有仓库 triage+ 权限的用户 |
/rerun |
PR 作者,或具有仓库 triage+ 权限的用户 |
/cherry-pick |
PR 作者,或具有仓库 triage+ 权限的用户 |
/revert |
PR 作者,或具有仓库 triage+ 权限的用户 |
/nightly |
仅具有仓库 triage+ 权限的用户 |
权限通过 GitHub API (repos/{owner}/{repo}/collaborators/{user}/permission) 验证。