20 RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cpu and cuda:0!

创建于 2024-02-02 / 1194
字体: [默认] [大] [更大] 收藏文档

 

错误提示关键字:

RuntimeError: Expected all tensors to be on the same device, but found at least two devices, cpu and cuda:0! (when checking argument for argument index in method wrapper__index_select)

 

控制台输出:

descript

 

该错误可能的原因:

如果之前一直正常使用,忽然某天出现这个错误,大部分时候是因为你丢了一个不怎么靠谱的VAE进去,或者是忽然调用到了你这个不怎么靠谱的VAE

如果你安装了animatediff,也可能是这个原因。

 

如果你安装或者尝试安装了TensorRT这个插件,那就是这个原因。

 

该插件并不会带来显著速度提升,而且会导致很多基础功能异常。

 

你视频中看到的别人可以使用且似乎效率提升,是因为这是一个上古插件,同属于旧时代的眼泪之一,新时代已经没有能承载它的船,对于如今的SD版本并不有效。

 

解决方案:

A 回忆你的操作,找到你最后放进去的VAE或者模型,删除之后重启控制台,基本都能解决。

B 重启控制台看是否可以自动解决。

C 切换其他大模型看是否可以解决。

D 如果你安装或者尝试安装了TensorRT或者animatediff这两个插件,那么首先卸载看这个插件是否恢复正常,不行的话重新下载或解压全新整合包使用。极端情况下,安装这些插件的某些步骤可能会更改系统变量,你很可能需要修复系统环境后才能正常使用整合包。


4 人点赞过