PyTorch打包成exe可能遇到的问题

  • Post author:
  • Post category:其他


项目用到了pytorch,需要打包成exe。

环境:Windows10

Python 3.7

torch 1.3.1

torchvision 0.2.2

打包工具:Pyinstaller

环境使用的Anaconda

pyinstaller loadmodel.py

简单的命令过后,运行exe文件,不出意外的话是肯定不能用的。可能有如下报错:

  File "site-packages\torch\__init__.py", line 81, in <module>
ImportError: DLL load failed: 找不到指定的模块。

经过多次试验,使用Pytorch官方给的pip命令重装解决了这个问题。

https://pytorch.org/get-started/locally/

pip3 install torch===1.3.1 torchvision===0.4.2 -f https://download.pytorch.org/whl/torch_stable.html

这个时候简单的脚本已经能运行,但是用到了torchvision的脚本还是不行。产生“OSError: could not get source code”字样的报错。最后更换torchvision版本解决问题。

pip uninstall torchvision
pip install torchvision==0.2.2.post3

如果出现报错:cannot import name ‘PILLOW_VERSION’ from ‘PIL’,是因为pillow版本太高,已经取消了PILLOW_VERSION。换成低版本的pillow即可,要小于7。

新建一个虚拟环境安装Pyinstaller,只安装必要包。这样有助于减小体积。



版权声明:本文为tomato3351原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。