Prhub

#1827 [Fix] Fix cuda-python pin in build_conda.sh

原始 PR 作者 kaysonyu 合并时间 2026-04-20 13:27 文件变更 1 提交数 3 评论 0 代码增减 +1 / -2

执行摘要

修复构建脚本中 cuda-python 版本与 CUDA 12.9 环境不匹配的问题。

根据Issue #1826报告,build_conda.sh脚本中存在明显的版本逻辑冲突:脚本注释声称“防止为sglang安装CUDA 13.0”,但实际却安装了cuda-python==13.1.0,这与已安装的CUDA 12.9和PyTorch cu129环境不一致。虽然CI能通过是因为后续步骤重新安装了正确的版本,但脚本本身不应依赖这种纠正机制,而应保持内部一致性以确保可复现的构建环境。

该PR变更简单直接,适合快速浏览以了解构建脚本的版本对齐问题。对于维护构建脚本或关注环境一致性的开发者,值得关注此修正以确保依赖链正确。

讨论亮点

无review评论,但PR body和关联Issue #1826中详细讨论了问题原因:脚本混合了CUDA 12.9/cu129栈与cuda-python==13.1.0,虽然CI能通过是因为后续步骤重新安装了正确版本,但脚本本身应保持正确性。

实现拆解

  1. 识别问题点:在文件build_conda.sh中,第24行原本安装cuda-python==13.1.0,这与脚本中已安装的CUDA 12.9和PyTorch cu129版本不匹配。
  2. 修正版本号:将cuda-python==13.1.0改为cuda-python==12.9,使其与CUDA 12.9环境对齐。
  3. 验证变更:通过bash -n build_conda.sh检查语法,并确认变更仅限于版本号调整,未引入其他副作用。
文件 模块 状态 重要度
build_conda.sh 构建脚本 modified 2.64

关键源码片段

build_conda.sh configuration

这是唯一被修改的文件,直接修复了 cuda-python 版本与 CUDA 环境不匹配的问题。

# 安装 CUDA 相关依赖
micromamba install -n slime cuda cuda-nvtx cuda-nvtx-dev nccl -c nvidia/label/cuda-12.9.1 -y
micromamba install -n slime -c conda-forge cudnn -y
​
# 修复:将 cuda-python 版本从 13.1.0 改为 12.9,以匹配 CUDA 12.9 环境
# 原版本 13.1.0 与 CUDA 12.9 不匹配,可能导致依赖链不一致
pip install cuda-python==12.9
​
# 安装 PyTorch cu129 版本
pip install torch==2.9.1 torchvision==0.24.1 torchaudio==2.9.1 --index-url https://download.pytorch.org/whl/cu129

评论区精华

没有提炼出高价值讨论线程

当前评论区没有形成足够清晰的争议点或结论,后续有更多讨论时会体现在这里。

风险与影响

风险极低:变更仅涉及版本号调整,未改动核心逻辑。但需注意,如果项目其他部分依赖cuda-python 13.1.0的特定功能,降级到12.9可能引入兼容性问题,不过根据Issue描述,SGLang依赖要求cuda-python==12.9,因此风险可控。

影响范围有限:仅影响使用build_conda.sh脚本构建环境的用户。修正后,构建环境将更一致,减少因版本不匹配导致的潜在编译或运行时问题,提升脚本的可复现性和可靠性。

依赖版本不匹配

关联 Issue

#1826 [Bug] build_conda.sh 中 似乎 cuda-python 版本与注释逻辑冲突,导致 CUDA 依赖链不一致

完整报告

参与讨论