feat: initial speaker-id service README
- ECAPA-TDNN speaker recognition service - endpoints: enroll, identify, verify, compare - GPU deployment with longtasks async pattern
This commit is contained in:
parent
352952b676
commit
8cf40d0e61
61
README.md
61
README.md
@ -1,2 +1,61 @@
|
||||
# speaker-id
|
||||
# Speaker ID — 声纹识别服务
|
||||
|
||||
## 概述
|
||||
|
||||
基于 ECAPA-TDNN 的声纹识别/说话人识别服务。支持说话人注册、识别、比对。
|
||||
|
||||
## 模型
|
||||
|
||||
SpeechBrain ECAPA-TDNN (spkrec-ecapa-voxceleb)
|
||||
部署于 GPU 服务器,使用 longtasks 异步任务模式。
|
||||
|
||||
## API
|
||||
|
||||
| 端点 | 方法 | 说明 |
|
||||
|------|------|------|
|
||||
| /api/status | GET | 服务状态和模型信息 |
|
||||
| /api/enroll | POST | 注册说话人 (音频 → 声纹特征) |
|
||||
| /api/identify | POST | 识别说话人 (音频 → 匹配身份) |
|
||||
| /api/verify | POST | 1:1 验证 (两段音频 → 是否同一人) |
|
||||
| /api/compare | POST | 比对两个声纹向量的相似度 |
|
||||
|
||||
## 请求示例
|
||||
|
||||
```json
|
||||
POST /api/enroll
|
||||
{
|
||||
"audio": "base64或文件路径",
|
||||
"speaker_id": "speaker_001",
|
||||
"speaker_name": "张三"
|
||||
}
|
||||
|
||||
POST /api/identify
|
||||
{
|
||||
"audio": "base64或文件路径",
|
||||
"threshold": 0.7,
|
||||
"top_k": 3
|
||||
}
|
||||
```
|
||||
|
||||
## 响应格式
|
||||
|
||||
```json
|
||||
{
|
||||
"status": "SUCCEEDED",
|
||||
"embedding": [0.123, -0.456, ...],
|
||||
"embedding_dim": 192,
|
||||
"elapsed": 0.523
|
||||
}
|
||||
```
|
||||
|
||||
## 部署
|
||||
|
||||
```bash
|
||||
cd /data/ymq/speaker-id
|
||||
bash build.sh
|
||||
sudo systemctl restart speaker-id
|
||||
```
|
||||
|
||||
## 端口
|
||||
|
||||
9095 (CPU + GPU)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user