Skip to content

语音交互模式说明

Image

项目概述

py-xiaozhi是一个智能语音交互助手,支持多种操作模式和功能,包括语音对话、物联网设备控制、视觉识别等功能。本文档主要介绍语音交互的基本使用方法。

语音交互模式

语音交互支持两种模式,您可以根据实际需求选择合适的交互方式:

1. 长按对话模式

  • 操作方法:按住说话按钮,松手发送
  • 适用场景:短句交流,精确控制对话开始和结束时间
  • 优点:避免误触发,控制精确
  • 快捷键:F2(GUI模式下)

2. 自动对话模式

  • 操作方法:点击开始对话,系统自动检测语音并发送
  • 适用场景:长句交流,无需手动控制
  • 优点:解放双手,自然交流
  • 界面提示:显示"聆听中"表示系统正在接收您的语音
  • 快捷键:F2(CLI模式下)或界面按钮

模式切换

  • 在GUI界面右下角显示当前模式
  • 点击按钮可以切换模式
  • 可以通过配置文件设置默认模式

对话控制

打断功能

当系统正在语音回复时,您可以随时打断:

  • GUI模式:使用F3键或界面上的打断按钮
  • CLI模式:使用F3键

状态流转

语音交互系统有以下几种状态:

                        +----------------+
                        |                |
                        v                |
+------+  唤醒词/按钮  +------------+   |   +------------+
| IDLE | -----------> | CONNECTING | --+-> | LISTENING  |
+------+              +------------+       +------------+
   ^                                            |
   |                                            | 语音识别完成
   |          +------------+                    v
   +--------- |  SPEAKING  | <-----------------+
     完成播放 +------------+
  • IDLE:空闲状态,等待唤醒词或按钮触发
  • CONNECTING:正在连接服务器
  • LISTENING:正在聆听用户语音
  • SPEAKING:系统正在语音回复

语音命令

系统支持多种语音命令,以下是常用命令示例:

基础交互

  • "你好"/"你是谁" - 基础打招呼和身份询问
  • "谢谢"/"再见" - 礼貌用语

物联网控制

  • "打开/关闭客厅的灯" - 控制灯光
  • "播放 菊花台 通过iot音乐播放器播放" - 开始播放音乐

视觉识别

  • "打开摄像头" - 开启摄像头
  • "识别画面" - 分析当前画面
  • "识别到了什么" - ai播放识别的内容
  • "关闭摄像头" - 关闭摄像头

运行模式

GUI 模式运行(默认)

bash
python main.py

CLI模式运行

bash
python main.py --mode cli

构建打包

使用PyInstaller打包为可执行文件:

bash
# 各平台通用命令
python scripts/build.py

最佳实践

  1. 清晰发音:确保在安静环境中清晰发音
  2. 适当停顿:句子间适当停顿有助于系统识别
  3. 使用唤醒词:开启唤醒词功能,可以避免误触发
  4. 查看反馈:注意界面状态提示,了解系统当前状态
  5. 简洁命令:使用简洁明了的命令获得更好的识别效果

获取帮助

如果遇到问题:

  1. 优先查看 docs/异常汇总.md 文档
  2. 通过 GitHub Issues 提交问题
  3. 通过 AI 助手寻求帮助
  4. 联系作者(主页有微信)(请自备 Todesk 链接并说明来意,作者工作日晚上处理)