# 测试远程 Whisper 服务 # 使用方法: # 1. 修改下面的 $whisperHost 和 $whisperPort # 2. 运行:powershell -ExecutionPolicy Bypass -File 测试远程Whisper.ps1 # ========== 配置区域 ========== $whisperHost = "YOUR_SERVER_IP" # 修改为实际的服务器地址 $whisperPort = 5001 # ============================== Write-Host "========================================" -ForegroundColor Cyan Write-Host " 测试远程 Whisper 服务" -ForegroundColor Cyan Write-Host "========================================" -ForegroundColor Cyan Write-Host "" # 检查配置 if ($whisperHost -eq "YOUR_SERVER_IP") { Write-Host "[错误] 请先修改脚本中的配置!" -ForegroundColor Red Write-Host "" Write-Host "编辑此文件,修改以下变量:" -ForegroundColor Yellow Write-Host ' $whisperHost = "192.168.1.100" # 你的服务器地址' -ForegroundColor Gray Write-Host ' $whisperPort = 5001 # Whisper 端口' -ForegroundColor Gray Write-Host "" exit 1 } Write-Host "当前配置:" -ForegroundColor White Write-Host " 服务器: $whisperHost" -ForegroundColor Gray Write-Host " 端口: $whisperPort" -ForegroundColor Gray Write-Host "" # 测试1:网络连接 Write-Host "[测试 1/4] 测试网络连接..." -ForegroundColor Yellow if (Test-Connection -ComputerName $whisperHost -Count 1 -Quiet) { Write-Host "✓ 服务器 $whisperHost 可达" -ForegroundColor Green } else { Write-Host "× 服务器 $whisperHost 不可达" -ForegroundColor Red Write-Host "" Write-Host "请检查:" -ForegroundColor Yellow Write-Host " 1. 服务器地址是否正确" -ForegroundColor Gray Write-Host " 2. 网络连接是否正常" -ForegroundColor Gray Write-Host " 3. 防火墙是否阻止 ICMP" -ForegroundColor Gray exit 1 } Write-Host "" # 测试2:端口连接 Write-Host "[测试 2/4] 测试端口连接..." -ForegroundColor Yellow $portTest = Test-NetConnection -ComputerName $whisperHost -Port $whisperPort -InformationLevel Quiet -WarningAction SilentlyContinue if ($portTest) { Write-Host "✓ 端口 $whisperPort 可访问" -ForegroundColor Green } else { Write-Host "× 端口 $whisperPort 不可访问" -ForegroundColor Red Write-Host "" Write-Host "请检查:" -ForegroundColor Yellow Write-Host " 1. Whisper 服务是否在远程服务器上运行" -ForegroundColor Gray Write-Host " 2. 服务器防火墙是否开放端口 $whisperPort" -ForegroundColor Gray Write-Host " 3. Whisper 配置的监听地址(应为 0.0.0.0 而非 127.0.0.1)" -ForegroundColor Gray exit 1 } Write-Host "" # 测试3:健康检查 Write-Host "[测试 3/4] 测试 Whisper 健康检查..." -ForegroundColor Yellow $healthUrl = "http://${whisperHost}:${whisperPort}/health" try { $response = Invoke-RestMethod -Uri $healthUrl -Method Get -TimeoutSec 5 if ($response.status -eq "ok") { Write-Host "✓ 健康检查通过" -ForegroundColor Green Write-Host " 响应: $($response | ConvertTo-Json -Compress)" -ForegroundColor Gray } else { Write-Host "⚠ 健康检查响应异常" -ForegroundColor Yellow Write-Host " 响应: $($response | ConvertTo-Json)" -ForegroundColor Gray } } catch { Write-Host "× 健康检查失败" -ForegroundColor Red Write-Host " 错误: $($_.Exception.Message)" -ForegroundColor Gray exit 1 } Write-Host "" # 测试4:检查接口可用性 Write-Host "[测试 4/4] 检查 API 接口..." -ForegroundColor Yellow $recognizeUrl = "http://${whisperHost}:${whisperPort}/recognize" $evaluateUrl = "http://${whisperHost}:${whisperPort}/evaluate" Write-Host " 识别接口: $recognizeUrl" -ForegroundColor Gray Write-Host " 评测接口: $evaluateUrl" -ForegroundColor Gray Write-Host "✓ 接口地址已确认" -ForegroundColor Green Write-Host "" # 测试总结 Write-Host "========================================" -ForegroundColor Cyan Write-Host " 测试成功!" -ForegroundColor Green Write-Host "========================================" -ForegroundColor Cyan Write-Host "" Write-Host "Whisper 服务信息:" -ForegroundColor White Write-Host " 地址: http://${whisperHost}:${whisperPort}" -ForegroundColor Gray Write-Host " 健康检查: ${healthUrl}" -ForegroundColor Gray Write-Host " 识别接口: ${recognizeUrl}" -ForegroundColor Gray Write-Host " 评测接口: ${evaluateUrl}" -ForegroundColor Gray Write-Host "" Write-Host "【下一步】配置 Java 应用" -ForegroundColor Yellow Write-Host "1. 编辑文件: ry-study-system\src\main\java\com\ddnai\system\service\voice\LocalWhisperService.java" -ForegroundColor White Write-Host "" Write-Host "2. 修改 WHISPER_URL 变量:" -ForegroundColor White Write-Host " private static final String WHISPER_URL = `"http://${whisperHost}:${whisperPort}`";" -ForegroundColor Gray Write-Host "" Write-Host "3. 重新编译并启动 Java 应用:" -ForegroundColor White Write-Host " mvn clean package" -ForegroundColor Gray Write-Host " java -jar ry-study-admin/target/ry-study-admin.jar" -ForegroundColor Gray Write-Host "" Write-Host "4. 测试 Java 应用连接:" -ForegroundColor White Write-Host " http://localhost:8080/test/whisper/check" -ForegroundColor Gray Write-Host "" Write-Host "【测试语音识别】" -ForegroundColor Yellow Write-Host "使用 curl 上传音频文件测试:" -ForegroundColor White Write-Host " curl -X POST ${recognizeUrl} -F `"file=@test.mp3`" -F `"language=zh`"" -ForegroundColor Gray Write-Host ""