guoyu/log/Whisper服务启动说明.txt

261 lines
6.7 KiB
Plaintext
Raw Normal View History

2025-12-11 23:28:07 +08:00
====================================
Windows 服务器 Whisper 服务启动指南
====================================
【前置条件】
1. Python 已安装(推荐 Python 3.8+
2. 已安装依赖pip install flask openai-whisper
【快速启动步骤】
步骤1: 定位 Whisper 服务目录
---------------------------------------
请告诉我你的 Whisper 服务在哪个目录,例如:
- D:\whisper-service\
- C:\Program Files\whisper\
- 或其他位置
步骤2: 启动服务
---------------------------------------
方式1使用命令行
1. 打开 PowerShell 或 CMD
2. 进入 Whisper 服务目录
cd D:\whisper-service
3. 启动服务
python app.py
或指定完整路径:
python D:\whisper-service\app.py
方式2使用启动脚本
创建 start_whisper.bat 文件:
---------------------------------------
@echo off
cd /d D:\whisper-service
echo 正在启动 Whisper 服务...
python app.py
pause
---------------------------------------
双击运行 start_whisper.bat
步骤3: 确认启动成功
---------------------------------------
看到以下信息说明启动成功:
✓ "Running on http://0.0.0.0:5001"
✓ "Running on http://127.0.0.1:5001"
✓ "Whisper 模型加载完成"
不要关闭这个窗口!保持服务运行。
步骤4: 测试连接
---------------------------------------
新开一个 PowerShell/CMD 窗口:
方式1使用 curl推荐
curl http://localhost:5001/health
预期返回:
{"status":"ok"}
方式2使用浏览器
在浏览器访问http://localhost:5001/health
方式3运行测试脚本
双击运行Windows快速测试Whisper.bat
步骤5: 测试 Java 应用连接
---------------------------------------
1. 确保 Java 应用已启动
2. 访问http://localhost:8080/test/whisper/check
3. 应该看到:
{
"code": 200,
"msg": "连接成功",
"data": {
"available": true,
"status": "运行中"
}
}
【常见问题】
问题1找不到 python 命令
---------------------------------------
解决方案:
1. 检查 Python 是否已安装
python --version
2. 如果未安装,下载安装:
https://www.python.org/downloads/
3. 安装时勾选 "Add Python to PATH"
问题2提示找不到 flask 或 whisper 模块
---------------------------------------
安装依赖:
pip install flask
pip install openai-whisper
或一起安装:
pip install flask openai-whisper
问题3端口 5001 被占用
---------------------------------------
查找占用进程:
netstat -ano | findstr :5001
结束进程:
taskkill /PID <进程ID> /F
或修改 Whisper 服务端口(需同时修改 Java 配置)
问题4Whisper 服务目录不存在
---------------------------------------
如果没有 Whisper 服务代码,可以创建:
1. 创建目录:
mkdir D:\whisper-service
cd D:\whisper-service
2. 创建 app.py 文件(参考下面的示例代码)
3. 安装依赖:
pip install flask openai-whisper
4. 启动服务:
python app.py
【Whisper 服务示例代码】
---------------------------------------
如果需要创建 Whisper 服务,保存以下内容为 app.py
from flask import Flask, request, jsonify
import whisper
import os
import tempfile
app = Flask(__name__)
# 加载模型
print("正在加载 Whisper 模型...")
model = whisper.load_model("base")
print("✓ Whisper 模型加载完成")
@app.route('/health', methods=['GET'])
def health():
return jsonify({"status": "ok"})
@app.route('/recognize', methods=['POST'])
def recognize():
try:
file = request.files['file']
language = request.form.get('language', 'zh')
# 保存临时文件
with tempfile.NamedTemporaryFile(delete=False, suffix='.mp3') as tmp:
file.save(tmp.name)
temp_path = tmp.name
# 识别
result = model.transcribe(temp_path, language=language)
text = result['text']
# 删除临时文件
os.remove(temp_path)
return jsonify({
"code": 200,
"msg": "识别成功",
"data": {"text": text}
})
except Exception as e:
return jsonify({"code": 500, "msg": str(e)}), 500
@app.route('/evaluate', methods=['POST'])
def evaluate():
try:
file = request.files['file']
standard_text = request.form.get('text', '')
with tempfile.NamedTemporaryFile(delete=False, suffix='.mp3') as tmp:
file.save(tmp.name)
temp_path = tmp.name
result = model.transcribe(temp_path, language='zh')
recognized_text = result['text']
os.remove(temp_path)
# 简单评分
score = calculate_similarity(recognized_text, standard_text)
return jsonify({
"code": 200,
"msg": "评测成功",
"data": {
"text": recognized_text,
"score": int(score * 100),
"accuracy": int(score * 100),
"fluency": int(score * 100),
"completeness": int(score * 100),
"pronunciation": int(score * 100)
}
})
except Exception as e:
return jsonify({"code": 500, "msg": str(e)}), 500
def calculate_similarity(text1, text2):
text1 = text1.replace(' ', '')
text2 = text2.replace(' ', '')
if len(text2) == 0:
return 0
matched = sum(1 for c in text1 if c in text2)
return matched / len(text2)
if __name__ == '__main__':
print("🚀 Whisper 服务启动中...")
print("📍 地址: http://0.0.0.0:5001")
print("✓ 服务就绪")
app.run(host='0.0.0.0', port=5001, debug=False)
---------------------------------------
【后台运行服务】
如果需要让 Whisper 服务在后台运行:
方式1使用 start 命令
start /b python app.py
方式2创建 Windows 服务(推荐生产环境)
使用 NSSM (Non-Sucking Service Manager)
1. 下载 NSSM: https://nssm.cc/download
2. 安装服务:
nssm install WhisperService "C:\Python39\python.exe" "D:\whisper-service\app.py"
3. 启动服务:
nssm start WhisperService
方式3使用任务计划程序
1. 打开"任务计划程序"
2. 创建基本任务
3. 触发器:系统启动时
4. 操作:启动程序 python.exe参数D:\whisper-service\app.py
【日志查看】
如果服务启动失败,查看错误信息:
1. 保持命令行窗口打开,查看输出
2. 或将输出重定向到文件:
python app.py > whisper.log 2>&1
【获取帮助】
如果遇到问题,请提供:
1. Whisper 服务目录路径
2. 启动时的完整错误信息
3. Python 版本python --version
4. 端口检查结果netstat -ano | findstr :5001
====================================