Files
sbnews/server/extend/whisper-asr/README.md
T
2026-06-11 16:22:12 +08:00

47 lines
1.2 KiB
Markdown

# Docker Whisper ASR
本服务为私聊语音输入提供本地语音转文字能力。它只绑定服务器本机 `127.0.0.1:8791`,由 PHP 后端 `/api/chat/voiceToText` 代理访问,不直接暴露公网。
## 启动
```bash
cd server/extend/whisper-asr
docker compose up -d --build
```
首次启动会下载 Whisper 模型到 Docker volume `whisper_asr_models`,耗时取决于网络和模型大小。
## 配置
常用环境变量:
| 变量 | 默认值 | 说明 |
| --- | --- | --- |
| `ASR_MODEL` | `small` | Whisper 模型名 |
| `ASR_DEVICE` | `cpu` | `cpu``cuda` |
| `ASR_COMPUTE_TYPE` | `int8` | CPU 默认建议 `int8` |
| `ASR_LANGUAGE` | 空 | 留空自动识别,中文可设为 `zh` |
| `ASR_MAX_FILE_MB` | `10` | 单文件最大大小 |
| `ASR_API_TOKEN` | 空 | 配置后需要 Bearer Token |
如果配置 `ASR_API_TOKEN`,需要同步更新后台 AI 配置 `whisper_asr_api_token`
## 验证
```bash
curl http://127.0.0.1:8791/health
curl -F "file=@sample.m4a" http://127.0.0.1:8791/v1/transcribe
```
接口成功时返回:
```json
{
"text": "识别到的文字",
"language": "zh",
"language_probability": 0.9,
"duration": 3.2,
"duration_ms": 1200
}
```