# PR #5717 完整报告

- 仓库：`verl-project/verl`
- 标题：[ci] fix: fix various ci failure
- 合并时间：2026-03-24 12:14
- 原文链接：http://prhub.com.cn/verl-project/verl/pull/5717

---

# 执行摘要

- 一句话：修复多个 CI 失败点，包括配置、导入错误和兼容性问题。
- 推荐动作：建议 CI 维护者和相关模块开发者（如模型初始化、数据集处理）精读此 PR，重点关注 `get_hf_rope_theta` 函数的实现逻辑和 LinearForLastLayer 的参数调整，以了解兼容性处理和模块重构。

# 功能与动机

PR body 列出 8 个具体修复点，目的是解决 CI 失败，如 'fix 3d position_ids in SFT trainer introduced in https://github.com/verl-project/verl/pull/5689'、'fix LinearForLastLayer import error introduced in https://github.com/verl-project/verl/pull/5707' 等，以确保开发和测试流程的连续性。

# 实现拆解

实现主要包括：1) 在多个 GitHub workflow 文件中删除 HTTP_PROXY 环境变量，防止 vllm/sglang 请求被代理；2) 新增 `get_hf_rope_theta` 函数处理 transformers>5 的 rope_theta 兼容性，更新相关配置文件；3) 将 LinearForLastLayer 导入从 `verl.models.llama.megatron.layers.parallel_linear` 改为 `verl.models.mcore.bridge`，并调整参数从 `config` 到 `sequence_parallel`；4) 在 `verl/utils/dataset/dataset_utils.py` 中添加 `_ragged_idx` 修复 3D position_ids；5) 修改 vllm 和 sglang 服务器代码避免端口冲突；6) 临时禁用 megatron critic model pp、trt-llm vlm ci 和 sglang reward model ci 等测试。

关键文件：
- `.github/workflows/e2e_ppo_grpo_trainer_trtllm.yml`（模块 ci）: 修改 CI 配置，删除 HTTP_PROXY 并临时禁用 VLM 测试，影响多个 workflow 的代理设置。
- `verl/models/mcore/config_converter.py`（模块 model）: 新增 get_hf_rope_theta 函数，处理 rope_theta 兼容性，是模型配置转换的关键更改。
- `verl/models/mcore/model_initializer.py`（模块 model）: 调整 LinearForLastLayer 导入和参数，影响模型初始化流程，涉及多个模型类。
- `verl/utils/dataset/dataset_utils.py`（模块 dataset）: 添加 _ragged_idx 修复 3D position_ids，确保 SFT trainer 正确处理嵌套张量。
- `verl/workers/rollout/vllm_rollout/vllm_async_server.py`（模块 rollout）: 修复端口冲突，移除 master_sock 关闭代码，避免 vllm 服务器启动问题。

关键符号：get_hf_rope_theta, LinearForLastLayer.__init__, collate_variable_batch


# 评论区精华

review 中，gemini-code-assist[bot] 评论指出 import 路径更改和参数替换是兼容性调整，Superjomn 批准 LGTM，HollowMan6 建议等待 CI 通过后被 dismissed。没有重大争议，更改被接受，但 HollowMan6 的评论暗示 CI 验证的重要性。

- LinearForLastLayer import and parameter changes (design): Changes accepted as compatibility refactoring, with approval from Superjomn.

# 风险与影响

- 风险：风险包括：1) 删除 HTTP_PROXY 可能在某些网络环境下导致连接问题，但已在多个 workflow 中统一移除；2) 临时禁用测试（如 megatron critic model pp）可能掩盖潜在悬挂错误，需后续修复；3) rope_theta 兼容性更改在 `verl/models/mcore/config_converter.py` 中可能对新模型配置处理不足；4) LinearForLastLayer 导入路径更改需确保所有依赖模块更新，否则可能引发 ImportError。
- 影响：对团队开发有积极影响，修复 CI 失败提升开发效率和测试稳定性；对系统影响小，主要是配置和代码微调，不涉及核心功能变更；用户无直接影响，属于内部基础设施维护。
- 风险标记：临时禁用测试 , 兼容性更改 , 依赖调整

# 关联脉络

- PR #5736 [ci] fix: fix circular import in ci: 同样修改 verl/utils/megatron_utils.py 文件，涉及 CI 修复和循环导入问题，与本 PR 的 megatron 相关更改有交叉。
- PR #5740 [misc] fix: supplement the dependencies that are missing in the requirements-npu.txt: 涉及依赖修复，与本 PR 中安装 megatron-bridge 和调整 deps 的操作相关，都针对基础设施问题。