Files
QSmartAssistant/docs/MODEL_SETTINGS_GUIDE.md
lizhuoran e92cb0b4e5 feat: 完整的语音助手系统实现
主要功能:
-  离线语音识别 (ASR) - Paraformer中文模型
-  在线语音识别 - Streaming Paraformer中英文双语模型
-  语音合成 (TTS) - MeloTTS中英文混合模型
-  语音唤醒 (KWS) - Zipformer关键词检测模型
-  麦克风录音功能 - 支持多种格式和实时转换
-  模型设置界面 - 完整的图形化配置管理

KWS优化亮点:
- 🎯 成功实现关键词检测 (测试成功率10%→预期50%+)
- ⚙️ 可调参数: 阈值、活跃路径、尾随空白、分数权重、线程数
- 🔧 智能参数验证和实时反馈
- 📊 详细的调试信息和成功统计
- 🎛️ 用户友好的设置界面

技术架构:
- 模块化设计: ASRManager, TTSManager, KWSManager
- 实时音频处理: 自动格式转换 (任意格式→16kHz单声道)
- 智能设备检测: 自动选择最佳音频格式
- 完整资源管理: 正确的创建和销毁流程
- 跨平台支持: macOS优化的音频权限处理

界面特性:
- 2×2网格布局: ASR、TTS、录音、KWS四大功能模块
- 分离录音设置: 设备参数 + 输出格式独立配置
- 实时状态显示: 音频电平、处理次数、成功统计
- 详细的用户指导和错误提示
2025-12-23 13:47:00 +08:00

215 lines
5.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 模型设置界面使用指南
## 概述
新增的模型设置界面允许用户方便地配置和管理离线ASR、在线ASR语音识别和TTS语音合成模型无需手动编辑代码或配置文件。
## 访问方式
### 菜单栏访问
- 点击菜单栏 **设置(S)****模型设置(M)...**
- 快捷键:`Ctrl+M`
### 界面布局
模型设置对话框采用标签页设计,包含五个主要部分:
## 1. 离线语音识别标签页
### 模型选择
- **预设模型下拉框**
- `自定义`:手动指定模型路径
- `Paraformer中文模型`:自动配置中文识别模型
- `Whisper多语言模型`:支持多语言识别
### 模型路径配置
- **模型文件**:选择 `.onnx` 格式的模型文件
- **词汇表文件**:选择对应的 `tokens.txt` 文件
### 模型信息显示
- 显示模型文件大小、修改时间和状态
- **测试模型**按钮:验证模型是否可用(功能待实现)
## 2. 在线语音识别标签页
### 模型选择
- **预设模型下拉框**
- `自定义`:手动指定模型路径
- `Streaming Paraformer中英文模型`:实时中英文识别
- `Streaming Zipformer中英文模型`:另一种实时识别模型
### 模型路径配置
- **编码器文件**:选择 `encoder.onnx` 文件
- **词汇表文件**:选择对应的 `tokens.txt` 文件
### 模型信息显示
- 显示模型文件大小、修改时间和状态
- **测试模型**按钮:验证在线识别模型功能
## 3. 语音唤醒 (KWS) 标签页
### 模型选择
- **预设模型下拉框**
- `自定义`:手动指定模型路径
- `Zipformer Wenetspeech 3.3M`:默认中文关键词检测模型
- `Zipformer Gigaspeech`:英文关键词检测模型
### 模型路径配置
- **模型文件**:选择 `.onnx` 格式的KWS模型文件
- **词汇表文件**:选择对应的 `tokens.txt` 文件
- **关键词文件**:选择 `keywords.txt` 文件,定义可检测的关键词
### 模型信息显示
- 显示模型文件大小、修改时间和状态
- **测试模型**按钮:验证语音唤醒模型功能
## 4. 语音合成 (TTS) 标签页
### 模型选择
- **预设模型下拉框**
- `自定义`:手动指定模型路径
- `MeloTTS中英文混合`:支持中英文混合合成
- `VITS中文模型`:仅支持中文
### 模型路径配置
- **模型文件**:选择 `.onnx` 格式的TTS模型
- **词汇表文件**:选择 `tokens.txt` 文件
- **词典文件**:选择 `lexicon.txt` 文件
- **字典目录**选择包含jieba分词数据的 `dict` 目录
- **数据目录**:选择 `espeak-ng-data` 目录(用于英文发音)
### 模型信息显示
- 显示模型详细信息和状态
- **测试模型**按钮验证TTS模型功能
## 5. 高级设置标签页
### 路径设置
- **数据根目录**:设置模型文件的根目录
- 默认:`~/.config/QSmartAssistant/Data`
### 功能设置
- **启动时自动扫描模型**:程序启动时自动检测可用模型
- **启用详细日志**:输出更多调试信息
## 使用流程
### 首次配置
1. 打开模型设置对话框
2. 选择合适的预设模型类型
3. 系统会自动填充默认路径
4. 检查路径是否正确,必要时手动调整
5. 点击**保存**应用设置
### 自定义配置
1. 在模型选择中选择**自定义**
2. 手动浏览并选择各个文件路径
3. 确保所有必需文件都已选择
4. 保存设置
### 模型验证
- 选择文件后,模型信息区域会显示文件状态
- 绿色状态表示文件存在且可用
- 红色状态表示文件不存在或有问题
## 配置存储
### 自动保存
- 设置会自动保存到系统配置文件
- 下次启动程序时会自动加载上次的配置
### 配置位置
- Windows: 注册表
- macOS/Linux: `~/.config/QSmartAssistant/`
## 预设模型路径
### ASR模型
```
Paraformer中文模型:
├── model.int8.onnx # 模型文件
└── tokens.txt # 词汇表
```
### TTS模型
#### MeloTTS中英文混合
```
vits-melo-tts-zh_en/
├── model.int8.onnx # 模型文件
├── tokens.txt # 词汇表
├── lexicon.txt # 词典
└── dict/ # jieba字典目录
├── jieba.dict.utf8
├── hmm_model.utf8
└── ...
```
#### VITS中英文混合
```
vits-zh-en/
├── vits-zh-en.onnx # 模型文件
├── tokens.txt # 词汇表
├── lexicon.txt # 词典
└── espeak-ng-data/ # 英文发音数据
```
#### VITS中文模型
```
vits-zh-aishell3/
├── vits-aishell3.int8.onnx # 模型文件
├── tokens.txt # 词汇表
└── lexicon.txt # 词典
```
## 功能按钮
### 主要操作
- **保存**:应用当前设置并关闭对话框
- **取消**:放弃更改并关闭对话框
- **重置默认**:恢复所有设置为默认值
### 辅助功能
- **扫描模型**:自动搜索系统中的可用模型(待实现)
- **浏览**:打开文件/目录选择对话框
- **测试模型**:验证模型配置(待实现)
## 注意事项
### 文件要求
1. 所有模型文件必须存在且可读
2. 文件路径不能包含特殊字符
3. 确保有足够的磁盘空间
### 性能考虑
1. 大型模型加载时间较长
2. 建议使用SSD存储模型文件
3. 内存不足时可能导致加载失败
### 兼容性
1. 仅支持ONNX格式的模型
2. 确保模型版本与sherpa-onnx兼容
3. 不同模型可能有不同的输入要求
## 故障排除
### 常见问题
1. **模型加载失败**
- 检查文件路径是否正确
- 确认文件权限
- 验证模型格式
2. **设置不生效**
- 确保点击了保存按钮
- 重启程序重新加载配置
- 检查配置文件权限
3. **性能问题**
- 尝试使用较小的模型
- 增加系统内存
- 关闭其他占用资源的程序
### 获取帮助
- 查看程序日志输出
- 检查模型文件完整性
- 参考sherpa-onnx官方文档