xiaozhi/py-xiaozhi-main/documents/docs/guide/03_语音交互模式说明.md
2025-07-18 13:14:28 +08:00

152 lines
4.6 KiB
Markdown
Executable File
Raw Permalink 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.

# 语音交互模式说明
![Image](./images/系统界面.png)
## 项目概述
py-xiaozhi是一个智能语音交互助手支持多种操作模式和功能包括语音对话、物联网设备控制、视觉识别等功能。本文档主要介绍语音交互的基本使用方法。
## 语音交互模式
语音交互支持两种模式,您可以根据实际需求选择合适的交互方式:
### 1. 长按对话模式
- **操作方法**:按住说话按钮,松手发送
- **适用场景**:短句交流,精确控制对话开始和结束时间
- **优点**:避免误触发,控制精确
- **快捷键**Alt+Shift+V按住说话
### 2. 自动对话模式
- **操作方法**:点击开始对话,系统自动检测语音并发送
- **适用场景**:长句交流,无需手动控制
- **优点**:解放双手,自然交流
- **界面提示**:显示"聆听中"表示系统正在接收您的语音
- **快捷键**Alt+Shift+A开始自动对话
### 模式切换
- 在GUI界面右下角显示当前模式
- 点击按钮可以切换模式
- 通过Alt+Shift+M快捷键切换模式
- 可以通过配置文件设置默认模式
## 对话控制
### 打断功能
当系统正在语音回复时,您可以随时打断:
- **GUI模式**使用Alt+Shift+X或界面上的打断按钮
- **CLI模式**使用F3键
## 系统托盘
GUI模式下支持系统托盘功能
- **状态指示**:托盘图标颜色反映当前系统状态
- 绿色:已启动/待命状态
- 黄色:聆听中状态
- 蓝色:说话中状态
- 红色:错误状态
- 灰色:未连接状态
- **最小化**:关闭窗口时自动最小化到系统托盘
- **退出**:右键点击托盘图标选择"退出程序"完全退出应用
### 状态流转
语音交互系统有以下几种状态:
```
+----------------+
| |
v |
+------+ 唤醒词/按钮 +------------+ | +------------+
| IDLE | -----------> | CONNECTING | --+-> | LISTENING |
+------+ +------------+ +------------+
^ |
| | 语音识别完成
| +------------+ v
+--------- | SPEAKING | <-----------------+
完成播放 +------------+
```
- **IDLE**:空闲状态,等待唤醒词或按钮触发
- **CONNECTING**:正在连接服务器
- **LISTENING**:正在聆听用户语音
- **SPEAKING**:系统正在语音回复
## 快捷键一览
| 功能 | 快捷键 | 说明 |
|------|--------|------|
| 按住说话 | Alt+Shift+V | 按住进行录音,松开发送(仅手动模式) |
| 自动对话 | Alt+Shift+A | 开始自动对话(自动检测语音并发送) |
| 打断对话 | Alt+Shift+X | 打断当前AI正在进行的回复 |
| 切换模式 | Alt+Shift+M | 在手动对话/自动对话模式间切换 |
## 语音命令
系统支持多种语音命令,以下是常用命令示例:
### 基础交互
- "你好"/"你是谁" - 基础打招呼和身份询问
- "谢谢"/"再见" - 礼貌用语
### 物联网控制
- "打开/关闭客厅的灯" - 控制灯光
- "播放 菊花台 通过iot音乐播放器播放" - 开始播放音乐
### 视觉识别
- "打开摄像头" - 开启摄像头
- "识别画面" - 分析当前画面
- "识别到了什么" - ai播放识别的内容
- "关闭摄像头" - 关闭摄像头
## 运行模式
### GUI 模式运行(默认)
```bash
python main.py
```
### CLI模式运行
```bash
python main.py --mode cli
```
### 构建打包
使用PyInstaller打包为可执行文件
```bash
# 各平台通用命令
python scripts/build.py
```
## 平台兼容性说明
- **Windows**: 完全支持所有功能
- **macOS**:
- 系统托盘显示在顶部状态栏,而非任务栏
- 快捷键使用可能需要系统权限授权
- **Linux**:
- 系统托盘支持可能因桌面环境(GNOME/KDE/Xfce等)有所不同
- 部分发行版可能需要安装额外的系统托盘支持包
## 最佳实践
1. **清晰发音**:确保在安静环境中清晰发音
2. **适当停顿**:句子间适当停顿有助于系统识别
3. **使用唤醒词**:开启唤醒词功能,可以避免误触发
4. **查看反馈**:注意界面状态提示,了解系统当前状态
5. **简洁命令**:使用简洁明了的命令获得更好的识别效果
## 获取帮助
如果遇到问题:
1. 优先查看 docs/异常汇总.md 文档
2. 通过 GitHub Issues 提交问题
3. 通过 AI 助手寻求帮助
4. 联系作者(主页有微信)(请自备 Todesk 链接并说明来意,作者工作日晚上处理)