186 lines
4.7 KiB
Plaintext
186 lines
4.7 KiB
Plaintext
|
|
====================================
|
|||
|
|
配置远程 Whisper 服务指南
|
|||
|
|
====================================
|
|||
|
|
|
|||
|
|
【第一步】测试远程 Whisper 连接
|
|||
|
|
====================================
|
|||
|
|
|
|||
|
|
1. 获取 Whisper 服务器信息
|
|||
|
|
询问服务器管理员:
|
|||
|
|
- 服务器 IP 地址(例如:192.168.1.100)
|
|||
|
|
- Whisper 端口(默认:5001)
|
|||
|
|
|
|||
|
|
2. 修改测试脚本
|
|||
|
|
编辑文件:测试远程Whisper.ps1
|
|||
|
|
|
|||
|
|
找到这两行:
|
|||
|
|
$whisperHost = "YOUR_SERVER_IP"
|
|||
|
|
$whisperPort = 5001
|
|||
|
|
|
|||
|
|
改为实际值,例如:
|
|||
|
|
$whisperHost = "192.168.1.100"
|
|||
|
|
$whisperPort = 5001
|
|||
|
|
|
|||
|
|
3. 运行测试
|
|||
|
|
右键点击 "测试远程Whisper.ps1" → 使用 PowerShell 运行
|
|||
|
|
|
|||
|
|
或在 PowerShell 中:
|
|||
|
|
powershell -ExecutionPolicy Bypass -File .\测试远程Whisper.ps1
|
|||
|
|
|
|||
|
|
4. 确认测试通过
|
|||
|
|
应该看到:
|
|||
|
|
✓ 服务器可达
|
|||
|
|
✓ 端口可访问
|
|||
|
|
✓ 健康检查通过
|
|||
|
|
✓ 接口地址已确认
|
|||
|
|
|
|||
|
|
|
|||
|
|
【第二步】修改 Java 应用配置
|
|||
|
|
====================================
|
|||
|
|
|
|||
|
|
文件位置:
|
|||
|
|
Study-Vue-redis\ry-study-system\src\main\java\com\ddnai\system\service\voice\LocalWhisperService.java
|
|||
|
|
|
|||
|
|
1. 找到第 36 行:
|
|||
|
|
private static final String WHISPER_URL = "http://localhost:5001";
|
|||
|
|
|
|||
|
|
2. 修改为远程服务器地址:
|
|||
|
|
private static final String WHISPER_URL = "http://192.168.1.100:5001";
|
|||
|
|
|
|||
|
|
(将 192.168.1.100 替换为实际的服务器 IP)
|
|||
|
|
|
|||
|
|
3. 保存文件
|
|||
|
|
|
|||
|
|
|
|||
|
|
【第三步】重新编译 Java 应用
|
|||
|
|
====================================
|
|||
|
|
|
|||
|
|
1. 打开 PowerShell/CMD,进入项目目录:
|
|||
|
|
cd C:\Users\Administrator\Desktop\Project\ry_study\Study-Vue-redis
|
|||
|
|
|
|||
|
|
2. 停止正在运行的 Java 应用(如果有)
|
|||
|
|
找到 Java 进程并结束
|
|||
|
|
|
|||
|
|
3. 重新编译:
|
|||
|
|
mvn clean package -DskipTests
|
|||
|
|
|
|||
|
|
4. 启动应用:
|
|||
|
|
java -jar ry-study-admin\target\ry-study-admin.jar
|
|||
|
|
|
|||
|
|
5. 查看启动日志,确认 Whisper 服务连接状态
|
|||
|
|
|
|||
|
|
|
|||
|
|
【第四步】验证配置
|
|||
|
|
====================================
|
|||
|
|
|
|||
|
|
1. 浏览器访问测试接口:
|
|||
|
|
http://localhost:8080/test/whisper/check
|
|||
|
|
|
|||
|
|
2. 预期响应(成功):
|
|||
|
|
{
|
|||
|
|
"code": 200,
|
|||
|
|
"msg": "连接成功",
|
|||
|
|
"data": {
|
|||
|
|
"injected": true,
|
|||
|
|
"available": true,
|
|||
|
|
"status": "运行中",
|
|||
|
|
"serviceInfo": "本地Whisper服务 (URL: http://192.168.1.100:5001, 状态: 运行中✅)"
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
3. 查看详细信息:
|
|||
|
|
http://localhost:8080/test/whisper/info
|
|||
|
|
|
|||
|
|
|
|||
|
|
【第五步】测试语音识别
|
|||
|
|
====================================
|
|||
|
|
|
|||
|
|
方式1:使用测试接口(浏览器 + Postman)
|
|||
|
|
POST http://localhost:8080/test/whisper/recognize
|
|||
|
|
上传参数:file = test.mp3
|
|||
|
|
|
|||
|
|
方式2:使用 curl 命令
|
|||
|
|
curl -X POST http://localhost:8080/test/whisper/recognize -F "file=@test.mp3"
|
|||
|
|
|
|||
|
|
方式3:在 APP 中测试
|
|||
|
|
1. 启动 APP
|
|||
|
|
2. 进入"语音测评"页面
|
|||
|
|
3. 选择测评内容
|
|||
|
|
4. 录音并提交
|
|||
|
|
5. 查看识别结果和评分
|
|||
|
|
|
|||
|
|
|
|||
|
|
【常见问题】
|
|||
|
|
====================================
|
|||
|
|
|
|||
|
|
问题1:连接超时
|
|||
|
|
原因:
|
|||
|
|
- 服务器防火墙阻止了端口
|
|||
|
|
- Whisper 配置的监听地址错误(只监听 127.0.0.1)
|
|||
|
|
- 网络不通
|
|||
|
|
|
|||
|
|
解决:
|
|||
|
|
1. 在服务器上开放端口:
|
|||
|
|
# Windows 服务器
|
|||
|
|
netsh advfirewall firewall add rule name="Whisper" dir=in action=allow protocol=TCP localport=5001
|
|||
|
|
|
|||
|
|
# Linux 服务器
|
|||
|
|
firewall-cmd --add-port=5001/tcp --permanent
|
|||
|
|
firewall-cmd --reload
|
|||
|
|
|
|||
|
|
2. 检查 Whisper 配置,确保监听 0.0.0.0:
|
|||
|
|
app.run(host='0.0.0.0', port=5001)
|
|||
|
|
|
|||
|
|
问题2:连接被拒绝
|
|||
|
|
原因:
|
|||
|
|
- Whisper 服务未启动
|
|||
|
|
- 端口配置错误
|
|||
|
|
|
|||
|
|
解决:
|
|||
|
|
1. 登录服务器,检查 Whisper 是否运行:
|
|||
|
|
netstat -ano | findstr 5001 (Windows)
|
|||
|
|
lsof -i:5001 (Linux)
|
|||
|
|
|
|||
|
|
2. 启动 Whisper 服务:
|
|||
|
|
cd <whisper_directory>
|
|||
|
|
python app.py
|
|||
|
|
|
|||
|
|
问题3:Java 应用无法连接
|
|||
|
|
原因:
|
|||
|
|
- 配置未生效(未重新编译)
|
|||
|
|
- 目标服务器 IP 错误
|
|||
|
|
|
|||
|
|
解决:
|
|||
|
|
1. 确认 LocalWhisperService.java 已修改
|
|||
|
|
2. 确认已重新编译:mvn clean package
|
|||
|
|
3. 确认已重启 Java 应用
|
|||
|
|
4. 检查日志中的 Whisper URL
|
|||
|
|
|
|||
|
|
|
|||
|
|
【快速测试命令】
|
|||
|
|
====================================
|
|||
|
|
|
|||
|
|
# 1. 测试远程 Whisper(在你的电脑)
|
|||
|
|
curl http://192.168.1.100:5001/health
|
|||
|
|
|
|||
|
|
# 2. 测试识别(在你的电脑)
|
|||
|
|
curl -X POST http://192.168.1.100:5001/recognize -F "file=@test.mp3" -F "language=zh"
|
|||
|
|
|
|||
|
|
# 3. 测试 Java 连接(在你的电脑)
|
|||
|
|
curl http://localhost:8080/test/whisper/check
|
|||
|
|
|
|||
|
|
# 4. 在服务器上检查 Whisper
|
|||
|
|
netstat -ano | findstr 5001
|
|||
|
|
|
|||
|
|
|
|||
|
|
【需要的服务器信息】
|
|||
|
|
====================================
|
|||
|
|
|
|||
|
|
请向服务器管理员索取:
|
|||
|
|
1. Whisper 服务器 IP 地址:______________
|
|||
|
|
2. Whisper 服务端口:______________(默认 5001)
|
|||
|
|
3. 网络访问权限:是否已开放端口
|
|||
|
|
4. Whisper 运行状态:是否已启动并正常运行
|
|||
|
|
|
|||
|
|
====================================
|