pyinstaller打包tensorflow代码

最近做项目需要将python的程序打包成exe供C#调用,所以学习了一下python打包的方法。看了很多博文,大家都说pyinstaller打包python程序更胜一筹,所以就选择了这个。
安装pyinstaller:直接activate tensorflow虚拟环境。pip install pyinstaller。安装完成后,直接进入需要打包的py文件的文件夹下:

pyinstaller -F ***.py

打包过程中遇到的问题
1、pyinstaller打包python的程序,遇到的问题:pyinstaller3.5 打包 WARNING: Cannot read QLibraryInfo… json.decoder.JSONDecodeError。无奈,网上也没有解决方案,可能是我的环境配置出现问题,把整个tensorflow虚拟环境删除,重新安装。然后重新安装pyinstaller,然后打包成功。
在这里插入图片描述
2、pyinstaller打包的tensorflow程序,在没有tensorflow环境的机器上运行报错:ModuleNotFoundError: No module named ‘tensorflow.python._pywrap_tensorflow_internal’ 我猜测应该是tensorflow的环境没有打包进去。参考这个博客:https://www.jianshu.com/p/b0e3a74ca97b,博客说这个问题在tensorflow1.7版本以上会出现这个问题,我的机器是tensorflow1.13,所以就把找了一台tensorflow1.6的机器,打包完成后,到没有tensorflow环境的机器上测试,问题解决。这里注意的是打包完的exe一定要到无tensorflow环境的机器上测试,否则根本测不出来问题。

好的,我可以为您提供使用Docker打包SMILES.yaml环境及相关预测代码的步骤。 首先,您需要在宿主机上安装Docker Desktop并启动。 接下来,在Windows Subsystem Linux中安装Docker并启动。 然后,在Windows Subsystem Linux中创建一个Dockerfile文件,其中包含以下内容: ``` FROM continuumio/miniconda3 COPY SMILES.yaml . RUN conda env create -f SMILES.yaml SHELL ["conda", "run", "-n", "env_name", "/bin/bash", "-c"] COPY Smiles-prediction.py . CMD ["python", "Smiles-prediction.py"] ``` 这个Dockerfile文件使用了一个基础镜像:continuumio/miniconda3,然后将SMILES.yaml文件复制到镜像中,并使用conda命令创建一个名为env_name的环境。 接着,将Smiles-prediction.py文件复制到镜像中,并使用CMD命令来指定容器启动时要运行的命令。 接下来,您需要在Windows Subsystem Linux中使用以下命令来构建Docker镜像: ``` docker build -t smiles-prediction:latest . ``` 这个命令将使用刚才创建的Dockerfile文件来构建一个名为smiles-prediction的镜像。 最后,您可以使用以下命令来运行这个镜像: ``` docker run --name smiles-prediction -it smiles-prediction:latest ``` 这个命令将创建一个名为smiles-prediction的容器,并在其中运行smiles-prediction镜像。 现在,您可以在容器中测试您的预测代码了。 如果您想将包含SMILES.yaml环境和预测代码的Docker镜像打包为predection.exe文件,您可以使用Docker Desktop中的“Export”功能来完成。在Docker Desktop中,选择您刚才创建的smiles-prediction容器,然后点击“Export”按钮。根据提示选择导出的文件路径和格式,然后等待导出完成即可。 希望这些步骤能够帮助到您。如果您还有其他问题或需要更多的帮助,请随时告诉我。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

能量鸣新

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值