【报错】RuntimeError: CUDA error: CUBLAS_STATUS_EXECUTION_FAILED when calling `cublasLtMatmul( ltHandle,

在GPU上运行hugging face transformer的时候出现如下报错:

RuntimeError: CUDA error: CUBLAS_STATUS_EXECUTION_FAILED when calling `cublasLtMatmul( ltHandle, computeDesc.descriptor(), &alpha_val, mat1_ptr, Adesc.descriptor(), mat2_ptr, Bdesc.descriptor(), &beta_val, result_ptr, Cdesc.descriptor(), result_ptr, Cdesc.descriptor(), &heuristicResult.algo, workspace.data_ptr(), workspaceSize, at::cuda::getCurrentCUDAStream())`

切换至cpu之后,报错:

-> 1724     return torch.embedding(weight, input, padding_idx, scale_grad_by_freq, sparse)
   1725 
   1726 

IndexError: index out of range in self

根据cpu上的报错内容,判断为模型输入太长,超过了模型的embedding最大尺寸,可以在tokenizer设置max_len来进行截断(truncation)。

batch = tokenizer([input_text],truncation=True,padding='longest',
max_length=max_length, return_tensors="pt").to(torch_device)

由于GPU上的报错一般都比较抽象,建议先在cpu上debug。有可能你的GPU报错和我的一样,但是cpu报错不同,也就是实际导致错误的原因是不一样的。


参考:
IndexError: index out of range in self #5611

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值