【与轻量版的差异】
本版在轻量版基础上只改了一处核心配置:
build.ps1 里的
$TorchIdx = "https://download.pytorch.org/whl/cpu"
改成了
$TorchIdx = "https://download.pytorch.org/whl/cu126"
其余目录结构、_pth 改写、安装顺序、Git / VC++ 依赖完全一致。
另外三处同步调整:
1. 0-启动.bat 自检改为打印显卡型号,CUDA 为 False 时给出驱动提示
2. nvcc 垫片版本号从 13.0 改为 12.6,与 torch 的 cu126 对齐
3. 说明文档改为 GPU 版口径
【为什么选 cu126 而不是 cu130】
cu126(CUDA 12.6)
驱动要求:≥ 525.x(2022 年底之后的驱动即可)
覆盖显卡:Maxwell(900系) / Pascal(10系) / Turing(20系)
/ Ampere(30/40系) / Hopper
→ 分发给配置不明用户的首选,兼容性最广
cu130(CUDA 13.0)
驱动要求:≥ 580.x(很新的驱动)
覆盖显卡:Turing(20系) 及以后,老卡不支持
→ 自用、机器配置确定时才选
游戏脚本用户机器配置天差地别,有 GTX 1050 也有 RTX 4090,
所以分发场景一律选 cu126,兼容性优先于版本新。
注意:CUDA 12.8 已于 PyTorch 2.12 起被官方从构建矩阵移除(弃用),
不要再选 cu128。
【关于 nvcc 垫片】
runtime\nvcc\nvcc.bat 只回显版本号,不做真实编译。
作用:让大漠工具的 CUDA 检测项能读到版本号而不报红,
避免工具因检测不到 CUDA 走异常分支(比如强行传 device=cpu)。
边界:它补的是"版本查询工具",不影响 torch 真实运行。
torch 能否用 GPU,取决于自带的 CUDA 运行时 + 显卡驱动,
跟 nvcc 在不在没有关系。
本版垫片报 12.6,与 torch 的 cu126 一致,避免版本显示自相矛盾。
如果你实测大漠工具对 12.6 有反应(比如报红),
把 nvcc.bat 里两处 12.6 改成 13.0 即可 —— 已实测 13.0 大漠能过。
【构建前的准备】
1. 把大漠提供的 yolov5 文件夹放到 YoloBox 下,命名为 yolo
要求能看到:YoloBox\yolo\train.py
(脚本兼容 yolo / yolov / yolov5_7.0,但建议统一用 yolo)
2. 先双击 下载权重.bat 拿权重(约 14MB)
大漠那份 yolov5 不带权重,必须单独下载
3. 大漠Yolo综合工具.exe 放到 YoloBox 根目录
4. 双击 运行构建.bat
【构建流程】
[0] 定位 yolo 目录
[1] 下载 Python 3.10.9 embeddable → runtime\python
[2] 改写 python310._pth,放开 site-packages
[3] 安装 pip
[4] 安装 GPU 版 torch(cu126)← 最耗时,20-60 分钟
[5] 安装 yolov5 的 requirements.txt
[6] 下载 MinGit → runtime\git
[7] 下载 VC++ 运行库到根目录
每个下载带 3 次重试,超时阈值放宽到 1800 秒(torch 包很大)。
【四个不能踩的坑】
坑 1:Python 版本必须是 3.10.9
torch wheel 文件名带 cp310 标记,只认 Python 3.10。
换 3.11 / 3.12 直接装不上。
改版本的话 $PyUrl 和 python310._pth 要同步改。
坑 2:python310._pth 必须改写
embeddable 版默认不加载 site-packages,
不改这个文件,torch 装完也 import 不到。
坑 3:安装顺序不能颠倒
必须先装 torch,再装 requirements.txt。
yolov5 的 requirements.txt 写的是 torch>=1.7.0,
先装好 cu126 版后 pip 检测已满足就会跳过。
顺序反了的话 pip 会按默认源再拉一个 GPU 版 torch,
可能出现另一个 CUDA 档位,体积和内容都失控。
坑 4:国内镜像要慎用
清华镜像的 torch 可能是 CPU 版或 cu121 档,
用它装出来的就不是 cu126 了。
构建失败要换镜像的话,装完务必验证:
python -c "import torch; print(torch.version.cuda)"
应输出 12.6。
【构建完成后必须做的验证】
□ 双击 0-启动.bat,CUDA 显示 True 并打印显卡型号
□ 跑 python -c "import torch; print(torch.version.cuda)" 应输出 12.6
□ 工具里环境检测全绿
□ 用 coco128 小数据集真跑一轮,确认能出 best.pt
★ 训练时打开任务管理器看 GPU 占用率是否上升
—— 这是"真的在用 GPU"的终极判据,光看 CUDA True 还不够
□ 断网再跑一轮,确认不依赖联网
【分发打包】
1. 删除 _构建\_download(临时目录,几个 GB)
2. 删除 _构建 整个目录
3. 用 7-Zip 压成 YoloBox完整版.7z
体积预估:解压后约 3.5GB,压缩后约 2.5GB
4. 保留:先看我.txt、0-启动.bat、runtime\、yolo\、vc_redist.x64.exe
【体积说明】
torch 的 CUDA wheel 里打包了完整 CUDA 运行时
(cudart / cudnn / cublas / cufft 等几十个 DLL),
单个就 2.5GB 上下,这是体积大头,没法再压。
也正是因为运行时已经内置,
用户才完全不需要安装 CUDA Toolkit。
