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

4.6 KiB
Executable File
Raw Blame History

语音交互模式说明

Image

项目概述

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 模式运行(默认)

python main.py

CLI模式运行

python main.py --mode cli

构建打包

使用PyInstaller打包为可执行文件

# 各平台通用命令
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 链接并说明来意,作者工作日晚上处理)