执行摘要
- 一句话:移除A2 job中的uv改用pip
- 推荐动作:该 PR 为纯 CI 修复,逻辑简单,可快速合入。值得关注的点:团队在维护多硬件 CI 时通过环境变量统一缓存策略的做法,可供其他基础设施 PR 参考。
功能与动机
PR 描述指出:The vlm_rl_job runs on linux-aarch64-a2b3-8 (A2 Ascend 910B machines) which do not support uv。其他 12 个 A2 job 已正确使用 pip,此 PR 是唯一遗留的误用 uv 的 job。
实现拆解
- 在
.github/workflows/e2e_ascend.yml 的 vlm_rl_job 中移除 Install uv 步骤和所有 UV_* 环境变量,将 uv pip list、uv pip install 替换为 pip 等效命令,并添加 PIP_INDEX_URL 和 PIP_TRUSTED_HOST 以使用内部 PyPI 缓存。
- 在其他 7 个 workflow 文件中(如
nightly_ascend.yml、reward_model_sglang_ascend.yml 等)统一添加 UV_INDEX_URL、PIP_INDEX_URL、PIP_TRUSTED_HOST 环境变量,确保保留 uv 的 job 也能使用内部缓存;同时修复 e2e_ppo_trainer_megatron_sglang_ascend.yml 中一个遗漏的 uv pip install 命令为 pip install。
- 所有变更仅涉及 CI 部署配置,未改动任何核心业务逻辑或测试代码。总变更量 +43/-12 行,覆盖 8 个文件。
关键文件:
.github/workflows/e2e_ascend.yml(模块 CI配置;类别 infra;类型 infrastructure): 主要变更文件,修复 vlm_rl_job 中 uv 不兼容问题:移除 uv 步骤和变量,切换为 pip,并添加内部缓存配置。
.github/workflows/nightly_ascend.yml(模块 CI配置;类别 infra;类型 infrastructure): 与其他 7 个 workflow 文件一同添加 UV_INDEX_URL、PIP_INDEX_URL、PIP_TRUSTED_HOST 环境变量,确保内部缓存一致性。
.github/workflows/e2e_ppo_trainer_megatron_sglang_ascend.yml(模块 CI配置;类别 infra;类型 infrastructure): 除添加缓存变量外,还修复了一个遗漏的 uv pip install 命令为 pip install。
关键符号:未识别
评论区精华
无有效讨论。Reviewer wucong25 直接批准,无评论。
风险与影响
- 风险:风险极低。
pip 是 Python 标准包管理器,已在其他 A2 job 中验证可用;内部缓存配置(PIP_INDEX_URL、PIP_TRUSTED_HOST)与其他 job 保持一致,不会引入新问题。若后续 A2 机器环境有变,可能需再次调整包管理器选择。
- 影响:影响范围仅限于 Ascend A2 集群的 CI 流程(
vlm_rl_job),使其能正常安装依赖,不涉及用户侧功能、性能或 API 变更。对其他硬件平台(如 GPU、NPU 非 A2 型号)无影响。
- 风险标记:暂无
关联脉络
参与讨论