构建Python的Windows整合包教程

构建Python的Windows整合包教程

原文链接:https://blog.gcc.ac.cn/post/2023/buildpythonwindowsintegrationpackagetutorial/

构建Python的Windows整合包教程 - 我的博客原文链接

前言

之前的开源项目本地素材搜索有很多人想要Windows整合包,因为Windows下配置环境太过麻烦,很多小白都不会安装。所以我尝试了一下做一个整合包。

步骤

  1. 新建一个文件夹MaterialSearchWindows

  2. 下载项目代码并解压,将代码复制到MaterialSearchWindows/MaterialSearch目录下。

  3. 下载python。因为pytorch在Windows下支持的最高版本为Python3.10,所以只能下载Python3.10的包。直接下载Windows installer (64-bit)并以用户权限安装到指定文件夹,这里直接安装到MaterialSearch

  4. 用pip安装依赖,如.\python -m pip install -r .\MaterialSearch\requirements.txt --index-url=https://download.pytorch.org/whl/cu118 --extra-index-url=https://pypi.org/simple/

  5. 新建一个运行.bat,内容如下。然后执行运行.bat,等待模型下载完毕。

    powershell 复制代码
    SET TRANSFORMERS_CACHE=..\huggingface
    cd MaterialSearch
    ..\python main.py
  6. 然后修改运行.bat为如下内容:

    powershell 复制代码
    :: 下面配置扫描路径,多个路径之间用逗号分隔
    SET ASSETS_PATH=C:/Users/Administrator/Pictures,C:/Users/Administrator/Videos
    :: 下面配置设备,cpu或cuda
    SET DEVICE=cpu
    SET DEVICE_TEXT=cpu
    :: 下面的不要改
    SET PATH=%PATH%;..\
    SET TRANSFORMERS_OFFLINE=1
    SET TRANSFORMERS_CACHE=..\huggingface
    cd MaterialSearch
    ..\python main.py
  7. 下载FFMpeg,解压后将ffmpeg.exe复制到MaterialSearchWindows目录。

  8. 最后所有文件夹一起打包压缩。后续执行程序,执行运行.bat即可。

目录结构如下:

text 复制代码
MaterialSearch
 |
 |- 运行.bat (前面自己创建的脚本)
 |- MaterialSearch (代码目录)
     |
     |- main.py
     |- .env
     |- ... (其它代码文件)
 |- python.exe
 |- huggingface (huggingface模型存放目录)
 |- ... (Python相关文件)
相关推荐
Polar__Star14 小时前
mysql如何快速判断两个数据库结构差异_使用mysqldiff工具.txt
jvm·数据库·python
YJlio14 小时前
2026年4月19日60秒读懂世界:从学位扩容到人形机器人夺冠,今天最值得关注的6个信号
python·安全·ios·机器人·word·iphone·7-zip
Xiaoᴗo.14 小时前
C语言2.0---------
c语言·开发语言·数据结构
weixin_4249993614 小时前
Golang怎么写基准测试benchmark_Golang基准测试教程【完整】
jvm·数据库·python
ghie909014 小时前
MATLAB 解线性方程组的迭代法
开发语言·算法·matlab
2401_8359568114 小时前
PHP函数怎样读取CPU频率实时数据_PHP监控处理器主频变化【操作】
jvm·数据库·python
Greyson114 小时前
JavaScript中类属性与原型属性的覆盖规则详解
jvm·数据库·python
Jaygee-14 小时前
个人网盘越来越贵?我用 Nginx 自建了一个 WebDAV
运维·nginx
j_xxx404_14 小时前
面试官灵魂拷问:Linux软链接与硬链接到底有什么区别?(附底层Inode级深度图解)
linux·运维·服务器
人道领域14 小时前
【LeetCode刷题日记】:151翻转字符串的单词(两种解法)
java·开发语言·算法·leetcode·面试