报错
运行代码时报错:TypeError: clamp(): argument 'min' (position 2) must be Number, not Tensor
原因分析
结合github链接:https://github.com/Denys88/rl_games/pull/142 ,发现是torch.clamp()函数在pytorch1.9.0之前不支持Tensor作为clamp()
的max
/min
参数,而1.9.0及之后支持。
查看pytorch的官网文档关于torch.clamp()函数的介绍
1.13版本:
1.7.1版本:
PyTorch版本类别如下:
通过查看知道1.8.1的torch.clamp()函数不支持Tensor作为clamp()
的max
/min
参数,而1.9.0支持。
解决方案
升级pytorch大于等于1.9.0版本,我这里升级到1.12.0
我之前安装的cuda版本为cuda-11.0,仅仅支持pytorch-1.7.0和pytorch-1.7.1,于是还需要重新安装cuda和cuDNN,这里安装了cuda-11.3
具体细节见:ubuntu18.04配置CUDA-11.3、cuDNN、PyTorch