百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
Q

QPT

> 编程语言
开源

[内测中]QPT - 致力于让开源项目更好通往互联网世界的Python to EXE工具(Python打包)。

794 stars0 点赞1 次浏览
访问官网GitHub

工具介绍

[内测中]QPT - 致力于让开源项目更好通往互联网世界的Python to EXE工具(Python打包)。

QPT - Python程序模块化封装工具(Py转EXE)

Gitee主页 | GitHub主页 | 快速使用 | 进阶教程 | 开发进度 GitHub Project | 踩坑笔记
社区&赞助支持 | QPT SDK仓库

项目停止更新

因工作原因、个人健康状态,再加上硬盘坏了导致拓展Python环境的源码完全丢失(未开源是因为体积太大),项目恢复更新成本过高,故无法进行更新。
2024.4.23 硬盘再次坏掉,本项目停止更新 https://github.com/QPT-Family/QPT/issues/107

QPT是一款致力于让开源项目更好通往互联网世界的Python项目打包工具,以此期望更多计算机用户能够分享开源的乐趣与价值。
在设计之初,我们发现较多深度学习开源项目仅能够在专业开发者手中运行,想要让普通人参与其中并非易事(CUDA支持、MKL、NoAVX支持等),故在灵活性和易用性上做出额外设计,使其更利于高阶开发者定制封装策略,也能够满足入门开发者基础封装需要。

QPT并非一天建成,涉及编译、性能的项目通常需要长时间建设,考虑到当前建设进度,建议使用时在指导下投入生产环境,以此避免被老板暴打hhh~

如果对您有帮助,欢迎来点个⭐Star吧

版本说明

EAP - The Early Access Program 更新日志 | 开发进度

当前版本为V1.0b7,该版本已放弃对Python3.7及更低版本支持,同时我们仍仅支持Windows10 1806+的适配(不支持MAC和Linux纯粹是维护不过来,而不支持低版本Windows是因为真的太难)

如在Win7中不能运行,可考虑在cmd中输入sfc/scannow修复系统进行解决,Win7+系统在输入前需添加DISM/Online/Cleanup-Image/RestoreHealth 或许还能有抢救的机会

  • 使用QPT的优势
    【打包逻辑自由】默认打包不及预期,可通过自定义SubModule来让QPT来捕捉你的封装需求。 可参考 [进阶教程](https://github.com/QPT-Family/QPT#%E8%BF%9B%E9%98%B6%E4%BD%BF%E7%94%A8qpt)
    【图形化/代码/命令打包】图形化界面是最易于使用的方式,同时支持代码控制打包逻辑,以及属于一行命令进行打包。(图形化打包方式正在建设中,预计V1.0a版本发布)  
    【源码形态自由】默认打包后源码可见,也可编译为pyd以保护源码内容。(源码可见也意味着可以使用git来帮助用户更新你的源代码)
    【内置CUDA打包逻辑】深度学习项目有福了。(AMD的ROCm如果支持Windows,可及时通知我来加入适配)  
    【Debug与日志】提供几个实用的Debug工具以及日志系统,方便用户使用出现问题时更快追踪异常情况。  
    【EXE的体积/速度可定制】支持三种打包方式:秒安装、首次安装、在线安装三种方式,对应了三种:普通、较小、Mini三种打包体积,未来还将支持1M+大小的在线部署模块。
  • QPT的缺陷
    【环境模拟】由于是“模拟”开发环境,所以相较传统打包对项目的规范程度有一定要求,越规范的项目越不容易出问题。(在努力想办法增加容错率了,在努力了,在努力了,打包中弹出的提示信息一定要多看几眼,每个字符都是血汗啊)  
    【依赖处理】QPT只会打包源码中出现的Python包,但如果该包的依赖部分书写不规范(当然,大部分Python包是规范的)则可能会出现依赖缺失的问题。若您没有Requirements文件,那么在QPT自动生成Requirements.txt文件后需要您确认依赖是否完备,否则可能会有依赖漏掉的情况。  
    【踩坑继承】您搭建项目时所踩下的坑,QPT在模拟时可能并不会自动打包进去,极端情况下仍需要您手动撰写SubModule来保证用户可以正常使用。 
    【仍在测试】当前版本并非正式版,所以会有坑,放心吧。
    【兼容性】仅兼容Windows10 1806+,低版本Windows只能碰运气,Linux和MAC的适配还没新建文件夹。

快速使用

安装/更新QPT到当前环境

安装

  • 通用方式:python -m pip install qpt
  • 国内推荐:python -m pip install qpt -i https://mirrors.bfsu.edu.cn/pypi/web/simple

更新 - 强烈建议先卸载后安装

  • Step1 卸载:python -m pip uninstall qpt
  • Step2 安装:python -m pip install qpt

开始打包

方式一、撰写打包脚本[推荐]

  • 撰写以下代码即可完成打包:
…

方式二、使用命令打包[快捷]

注意:使用命令打包的前提是当前默认Python环境中使用pip安装了qpt,否则可能存在形如qpt不是内部或外部命令,也不是可运行的程序的报错信息。此外,若需要自动搜索依赖,强烈建议将QPT安装在开发环境,并且在开发环境中执行QPT,因为QPT会在搜索文件的import和pip list进行比对来确保搜索结果精确。

  • 打开cmd/终端并输入以下命令即可完成打包:

    powershell
    chcp 65001
    qpt.exe -f ./sample_program -p ./sample_program/run.py -s ./out -h False

    chcp 65001 命令可使得终端转为utf-8形式,避免出现编码问题

  • 完整命令列表可使用qpt --help获取:

…

进阶使用QPT/FAQ

  • 1. 更改QPT全局镜像源
  • 2. 隐藏运行时的终端窗口
  • 3. 能够更快定位用户问题的日志系统
  • 4. 增加CUDA加速模块
  • 5. 打包兼容性更强的Python解释器
  • 6. 使用 SubModule 添加自定义 whl
  • 7. 打包PaddleOCR、PaddleX等业务程序
  • 8. PaddleOCR和QPT的落地实战 via:@ITerydh

完整进阶使用文档详见examples/advanced

高阶开发手册/项目贡献指南

预计V1.0RC版本发布

设计思想

还没来得及写,和Pyinstaller、Nutika、Czfreeze等打包工具思路不太一样。(他们几个的思路本来也不太一样哈哈哈)

社区相关

这些项目也在用

以下为内测初期QPT提供支持的开源项目,在此非常感谢这些作者与测试组用户为QPT提供的宝贵建议以及多次的调试与沟通,这也是QPT走向成熟的关键,同时也要感谢各位大佬在面对Bug时的不杀之恩。

  1. 交互式语义分割标注软件 - PaddleCV-SIG/iann
  2. 景观健康效益辅助评估工具 - JiehangXie/Landscape-Heath-Score
  3. 团子翻译器-OCR部分 - PantsuDango/Dango-Translator

社区支持

来一杯咖啡☕

一杯咖啡提神醒脑,代码更新会更快更好! (不介意的话可以在请咖啡时加个备注,例如QPT项目+昵称,后续将更新至支持与致谢中)

捐赠者 累计捐赠金额 赞助席位
5,000 .00 RMB 金牌赞助席位(互赞)
社区ID 23****770 200 .00 RMB 银牌赞助席位
上海大学 曾老师 200 .00 RMB 银牌赞助席位
Viggo(wxbool) 100 .00 RMB 银牌赞助席位
YaoFANGUK 100 .00 RMB 银牌赞助席位
厦门大学 愚者 100 .00 RMB 银牌赞助席位
社区ID *头 66 .00 RMB 支持赞助席位
社区ID iterhui 50 .00 RMB 支持赞助席位
社区ID *瓜 30 .00 RMB 支持赞助席位
社区ID LFeightyFour 23 .33 RMB 支持赞助席位
社区ID *猪 20 .00 RMB 支持赞助席位
社区ID super松 20 .00 RMB 支持赞助席位
社区ID **辉 20 .00 RMB 支持赞助席位
社区ID jerrychoices 20 .00 RMB 支持赞助席位
社区ID 14****650 10 .00 RMB 支持赞助席位
社区ID yangy996 10 .00 RMB 支持赞助席位
社区ID 广东午夜游民 10 .00 RMB 支持赞助席位
社区ID 未知 1 .00 RMB 兴趣赞助席位

完整支持名单&规则详见支持致谢.MD

Jetbrains 全家桶支持

本项目开发所使用的IDE由Jetbrains支持。

开源协议

本项目使用GNU LESSER GENERAL PUBLIC LICENSE(LGPL)开源协议。

Other情况

  1. 形如使用QPT简单打包了自己的“强化学习小游戏”等操作,该情况无需申请QPT授权以及更换个人代码仓库完整的开源协议。
  2. 若对QPT源代码进行了修改,尽管这些代码非恶意代码,但为了保证开发者和使用者权益和安全,在未取得QPT授权的情况下需要开源完整的源代码等LGPL协议中所要求的内容。

Issues· 17 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Pythoncudadeep-learningdmlgpu

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言