# PR #6385 完整报告

- 仓库：`verl-project/verl`
- 标题：[ci] fix: use TRTLLM_TEST_MODEL_PATH_ROOT in test_trtllm_rollout_utils
- 合并时间：2026-05-18 18:18
- 原文链接：http://prhub.com.cn/verl-project/verl/pull/6385

---

# 执行摘要

- 一句话：修复 TRT-LLM 测试用例的模型路径硬编码问题
- 推荐动作：可直接合并。无需额外精读，但可作为 CI 测试配置和测试环境变量使用的参考。

# 功能与动机

CI job 中 test_trtllm_rollout_utils.py 使用了硬编码的 HF 模型标识符（如 "Qwen/Qwen2.5-0.5B-Instruct"），导致每次运行都从 hf-mirror.com 重新下载模型，而服务端已通过 TRTLLM_TEST_MODEL_PATH_ROOT 环境变量提供了预置模型缓存。PR body 指出 'Mirror the pattern used by peer tests so model paths resolve against the pre-staged cache.'

# 实现拆解

1. **修改模型路径解析方式 **（`tests/workers/rollout/rollout_trtllm/test_trtllm_rollout_utils.py`）：添加 `import os`，定义 `_MODEL_ROOT = os.path.expanduser(os.getenv("TRTLLM_TEST_MODEL_PATH_ROOT", "~/models"))`，并将两个模块路径常量改为 `os.path.join(_MODEL_ROOT, ...)` 形式。
2. **更换 E2E 测试数据集 **（`.github/workflows/e2e_ppo_grpo_trainer_trtllm.yml`）：将数据预处理步骤从 DAPO-Math-17k 和 AIME-2024 替换为 gsm8k，并调整 E2E 训练命令中的数据集变量，以适配 runner 上缓存的可用数据。

关键文件：
- `tests/workers/rollout/rollout_trtllm/test_trtllm_rollout_utils.py`（模块 TRT-LLM 测试；类别 test；类型 test-coverage；符号 _MODEL_ROOT, UNIMODAL_MODEL_PATH, MULTIMODAL_MODEL_PATH）: 核心变更文件：将硬编码的模型路径改为由环境变量 TRTLLM_TEST_MODEL_PATH_ROOT 驱动，与其他 TRT-LLM 测试文件保持一致。
- `.github/workflows/e2e_ppo_grpo_trainer_trtllm.yml`（模块 CI 配置；类别 infra；类型 infrastructure）: CI 配置变更：将 E2E 测试的数据集从 DAPO-Math-17k 和 AIME-2024 替换为 gsm8k，因为后者在 runner 缓存中可用。

关键符号：未识别

## 关键源码片段

### `tests/workers/rollout/rollout_trtllm/test_trtllm_rollout_utils.py`

核心变更文件：将硬编码的模型路径改为由环境变量 TRTLLM_TEST_MODEL_PATH_ROOT 驱动，与其他 TRT-LLM 测试文件保持一致。

```python
import os

# 从环境变量获取预置模型缓存根目录，若未设置则默认 ~/models
# 让测试路径与其他 TRT-LLM 测试文件（如 test_async_server.py）的行为一致
_MODEL_ROOT = os.path.expanduser(os.getenv("TRTLLM_TEST_MODEL_PATH_ROOT", "~/models"))
UNIMODAL_MODEL_PATH = os.path.join(_MODEL_ROOT, "Qwen/Qwen2.5-0.5B-Instruct")
MULTIMODAL_MODEL_PATH = os.path.join(_MODEL_ROOT, "Qwen/Qwen2.5-VL-3B-Instruct")

```

# 评论区精华

无实质性讨论。仅 gemini-code-assist[bot] 自动评论总结变更，maintainer wuxibin89 直接审批通过，无其他评论。

- 暂无高价值评论线程

# 风险与影响

- 风险：风险极低。变更仅限于测试文件和 CI 配置文件：测试文件中的路径改为环境变量驱动，若环境变量未设置则默认回退到 `~/models`，行为向后兼容；CI 配置中的数据集切换为预缓存的 gsm8k，避免了网络不可达导致的失败。
- 影响：仅影响 TRT-LLM 相关的 CI job（trtllm_unit_tests 和 e2e_ppo_grpo_trainer_trtllm），减少不必要的网络下载和数据集准备失败。对其他模块和环境无影响。
- 风险标记：网络依赖消除 , 测试环境一致性

# 关联脉络

- 暂无明显关联 PR