You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:使用accelerate的Transformer Pipeline未调用GPU问题

问题排查与解决步骤

1. 验证bitsandbytes的CUDA兼容性

bitsandbytes需与CUDA版本匹配,你使用的是cu121,需确保bitsandbytes适配CUDA 12.x。运行以下代码检查:

import bitsandbytes
print(bitsandbytes.cuda_setup.is_available())

若输出False,重新安装适配cu121的版本:

pip install bitsandbytes==0.42.0 --extra-index-url=https://download.pytorch.org/whl/cu121

2. 显式指定GPU设备

尽管设置了device_map="auto",可尝试直接指定GPU设备:

chatbot = pipeline(
    "conversational",
    model="BramVanroy/GEITje-7B-ultra",
    model_kwargs={"load_in_8bit": True},
    device=0  # 指定第一块GPU,多GPU场景可调整序号
)

打印模型所在设备确认:

print(chatbot.model.device)

3. 初始化accelerate配置

accelerate需正确配置GPU环境,运行命令生成配置文件:

accelerate config

按提示选择对应GPU配置(单GPU/多GPU、CUDA等),完成后重启Python环境再执行代码。

4. 手动加载模型排查设备分配

替代pipeline方式手动加载模型,查看设备分配细节:

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch

tokenizer = AutoTokenizer.from_pretrained("BramVanroy/GEITje-7B-ultra")
model = AutoModelForCausalLM.from_pretrained(
    "BramVanroy/GEITje-7B-ultra",
    load_in_8bit=True,
    device_map="auto",
    torch_dtype=torch.float16
)
print(model.hf_device_map)  # 查看模型各层的设备分配情况

若输出显示设备为CPU,说明模型加载未正确识别GPU,需重新检查bitsandbytes与accelerate的安装。

5. 检查CUDA环境变量

确认CUDA相关环境变量配置正确:

echo $CUDA_HOME
echo $PATH | grep cuda

CUDA_HOME需指向CUDA 12.1的安装目录,PATH中需包含CUDA的bin目录。

内容的提问来源于stack exchange,提问作者Rob Audenaerde

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 09:00:04