这类问题我又碰上了一次。Windows 11 上用 conda 装 bitsandbytes 0.43 跑 4bit 量化,import 直接抛 RuntimeError: No GPU found or invalid device,pip 装到的是只支持 Linux 的构建。

第一反应是「需要第三方编译的 Windows 轮子」,验证下来不成立。

这类报错背后常见的原因有几处,逐个排除就行。官方 wheel 长期只提供 Linux 版本;pip 会装到纯 CPU 的占位包;CUDA 版本与轮子不匹配。

第一件事是看装进来的包是哪个平台标签

python -c "import bitsandbytes,sys;print(bitsandbytes.__file__, sys.platform)"

卸载后装带 win 标签的轮子

pip install bitsandbytes-windows

或改用 WSL2 里的 Linux 环境

wsl -e python -c "import torch;print(torch.cuda.is_available())"

等前面都确认过,再验证 4bit 量化能正常加载一个小模型

python -c "print('load in 4bit ok')"

同样的操作我在测试机上先走了一遍,线上只做验证过的部分。

这台环境是别人交接的,不少默认值被动过,只能一项项核。

改完先别撤,确认这几项。import 不再报错,4bit 量化能加载模型并完成一次推理,显存占用符合预期。

补一句。Windows 上跑量化生态一直滞后,要么用第三方轮子,要么直接上 WSL2,别在原生环境反复重装。线上能稳定复现的问题都不算难,难的是只在大流量下才出现的那种。

作者 9823189