【无标题】离线python310怎么配置 先进入项目目录激活虚拟环境执行下载命令所有依赖包自动保存到packages文件夹 这个怎么操作完整步骤生成 requirements.txt必须在本地项目的虚拟环境内执行1、打开 CMD进入你的项目根目录cmdcd /d D:\java\python\workspace\ai-asr2、激活虚拟环境cmdcall .venv\Scripts\activate✅ 命令行前缀出现(.venv)才算激活成功3、执行导出命令cmdpip freeze requirements.txt执行完成项目根目录就会生成requirements.txt文件。第二步执行命令批量下载所有依赖到 packages 文件夹直接带上阿里云 pypi 镜像源的完整命令cmdpip download -d packages -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple参数说明-d packages下载文件保存到 packages 文件夹-r requirements.txt读取依赖清单-i https://mirrors.aliyun.com/pypi/simple使用阿里云国内镜像加速下载如果需要加上信任参数部分环境告警cmdpip download -d packages -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple --trusted-host mirrors.aliyun.com执行前提本地已经激活.venv保证 Python3.10、Windows 系统下载的包才能直接给阿里云 Windows 服务器离线安装。第三步上传到阿里云服务器上传这三样echo off chcp 65001 cd /d %~dp0 call .venv\Scripts\activate echo 开始下载全部依赖离线包到packages文件夹 pip download -d packages -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple echo 下载完成 pause你的代码py、models、音频目录等requirements.txt整个 packages 文件夹❌ 不要上传本地的 .venv第四步服务器端离线安装操作服务器 cmd 进入项目目录删除旧.venv新建虚拟环境cmdcd /d D:\project\python\ai-asr rmdir /s /q .venv D:\java\python\python310\python.exe -m venv .venv call .venv\Scripts\activate离线安装全程不需要外网cmdpip install --no-index --find-linkspackages -r requirements.txt--no-index禁止访问 pypi 网络源--find-linkspackages只在本地 packages 文件夹寻找安装包补充实用避坑如果下载速度依旧慢下载的时候带上国内镜像源cmdpip download -d packages -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple下载完成后可以检查 packages 文件夹大小torch、funasr 体积很大确认文件都存在后续新增依赖只需要在本机重新执行一遍下载命令同步 packages 文件夹即可可选如果你想一键脚本本地下载包脚本 download_packages.batbat先说结论WinSW-x64 完全可以用替代 NSSM纯开源、无捆绑很多人云服务器部署选用。原理把.bat包装成 Windows 服务。但是有坑我给你讲清楚使用方式、风险、对比 NSSM。一、WinSW 工作流程复制WinSW-x64.exe放到项目根目录D:\project\python\ai-asr\重命名为ai-asr-service.exe随便命名同目录新建配置文件ai-asr-service.xml名称必须和 exe 同名ai-asr-service.xml 完整配置直接复制适配你的项目xmlservice !-- 服务名称系统内部标识 -- idAISpeechService/id !-- 显示名称 -- nameAI语音识别TTS服务/name descriptionFunASR PiperTTS 离线语音服务/description !-- 执行你的启动bat -- executable%BASE%\start.bat/executable !-- 工作目录至关重要相对路径、模型目录依赖这里 -- workingdirectory%BASE%/workingdirectory !-- 日志输出位置排错必备 -- logmoderotate/logmode outlog%BASE%\service-out.log/outlog errlog%BASE%\service-err.log/errlog !-- 崩溃自动重启 -- onfailure actionrestart delay10000/ /service你的 start.batbatecho off cd /d D:\project\python\ai-asr call .venv\Scripts\activate python ai-asr-service.py二、安装 / 卸载命令管理员 CMD 执行cmd# 安装服务 ai-asr-service.exe install # 卸载服务先停止服务再执行 ai-asr-service.exe uninstall # 启动、停止 net start AISpeechService net stop AISpeechService⚠️【重点大坑WinSW 特有的问题】坑 1bat 里面call activate在 Windows 服务环境大概率失效Windows 服务会话Session 0不支持 cmd 虚拟环境激活脚本很多人装好之后启动直接闪退报错找不到 funasr 模块。✅规避方案不要在 bat 里激活虚拟环境直接调用虚拟环境内 python.exe改写 start.bat推荐最终版本避开 activatebatecho off D:\project\python\ai-asr\.venv\Scripts\python.exe ai-asr-service.py跳过call activate直接指定虚拟环境解释器杜绝环境失效问题。坑 2Flask 开发服务器长期运行不稳定老问题后续建议换成 waitress不要长期使用内置开发服务。三、WinSW VS NSSM 简单对比WinSW✅ 开源Github 项目✅ 配置靠 xml方便版本保存❌ 间接调用 bat多一层中转环境容易出问题❌ 不支持图形界面纯命令操作。四、给你的最优建议如果你坚持使用 WinSW使用上面改造后的 bat直接调用 .venv\Scripts\python.exe删除 activate先本地双击 bat 确认能正常跑再注册服务装好服务先看 errlog排查启动闪退问题NSSM✅ 可以直接指定 python.exe 参数不需要借助 bat少一层风险✅ 图形界面调试直观✅ 运维圈内部署 Python 服务首选

本月热点