wukong-robot:简单、灵活、优雅的中文语音对话机器人
wukong-robot 是一个开源的中文语音对话机器人项目,旨在为中国的创客和极客们提供一个快速打造个性化智能音箱的平台。它可能是第一个开源的支持脑机唤醒的智能音箱项目。截至 2023 年 3 月,wukong-robot 已被安装在超过 13,000 台设备上,累积唤醒次数超过 700,000 次。
主要特性
wukong-robot 具有以下突出特点:
-
模块化设计:功能插件、语音识别、语音合成、对话机器人等组件都高度模块化,便于继承和开发自定义插件。
-
中文支持:集成了多家中文语音识别和合成技术,包括百度、科大讯飞、阿里、腾讯、OpenAI Whisper、Apple、微软Edge等,并支持进一步扩展。
-
对话机器人集成:支持基于AnyQ的本地对话机器人,也可接入图灵机器人、ChatGPT等在线对话系统。
-
全局监听和离线唤醒:支持Porcupine和snowboy两种离线语音指令唤醒引擎,还支持脑机唤醒和行空板摇一摇唤醒等创新方式。
-
灵活配置:允许用户自定义机器人名字,选择语音识别和合成插件。
-
智能家居集成:可与小爱音箱、Siri、mqtt、HomeAssistant等智能家居协议联动,实现语音控制智能家电。
-
后台管理:提供配套的Web后台,支持远程操控、修改配置和查看日志等功能。
-
开放API:提供后端API接口,方便开发者实现更丰富的功能扩展。
-
简单安装:相比前身项目,安装更加简便,支持更多平台,包括Mac和多种Linux系统。
工作原理
wukong-robot的工作流程如下:
- 通过唤醒词激活系统
- 用户语音指令经过ASR引擎识别成文本
- 对识别文本进行NLU解析
- 将解析结果匹配到相应的技能插件
- 插件处理指令并生成响应
- TTS引擎将响应合成为语音
- 播放合成的语音给用户
这种模块化的设计使得每个环节都可以被独立修改和定制,为用户提供了极大的灵活性。
运行环境
wukong-robot支持Python 3.7及以上版本(不含3.10),可在多种设备和系统上运行,包括:
- Intel芯片的Mac电脑(不支持M1芯片)
- 64位Ubuntu系统
- 树莓派(Raspbian系统)
- Pine 64(Debian Jessie 8.5系统)
- Intel Edison(Ubilinux系统)
- 安装了WSL的Windows系统
安装和使用
安装wukong-robot非常简单,用户可以参考官方提供的安装教程进行操作。安装完成后,只需运行以下命令即可启动:
python3 wukong.py
首次启动时,系统会提示创建配置文件。之后就可以通过默认唤醒词"snowboy"(可自定义)来唤醒机器人进行交互。
此外,wukong-robot还提供了一个Web后台管理界面,默认地址为http://localhost:5001,用户可以通过这个界面进行远程对话、修改配置、查看日志等操作。
技能插件和API
wukong-robot提供了丰富的官方插件和用户贡献插件,覆盖了多种实用功能。同时,它还开放了Web API接口,允许开发者通过Restful方式调用,进一步扩展机器人的能力。
开源贡献
wukong-robot是一个开源项目,欢迎社区贡献。用户可以通过以下方式参与:
- 在GitHub上为项目点赞
- 在issue页面报告bug
- 提交pull request贡献代码
- 开发新的插件并提交到wukong-contrib仓库
通过这种开放和协作的模式,wukong-robot正在不断发展和完善,为中文语音交互技术的发展贡献力量。