172 Star 939 Fork 388

wzpan / wukong-robot

Create your Gitee Account
Explore and code with more than 12 million developers,Free private repositories !:)
Sign up
Clone or Download
contribute
Sync branch
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README
MIT

wukong-robot

wukong-robot

wukong-robot 是一个简单、灵活、优雅的中文语音对话机器人/智能音箱项目,目的是让中国的 Maker 和 Haker 们也能快速打造个性化的智能音箱。wukong-robot 还可能是第一个开源的脑机唤醒智能音箱。

截至 2023 年 3 月 31 日,wukong-robot 的安装设备数已超过 13,000 台,唤醒次数累积超过了 700,000 次。

wukong-project 捐赠 Python3.7+ docker-pulls browse-code

Table of Contents

特性

wukong-robot

  • 模块化。功能插件、语音识别、语音合成、对话机器人都做到了高度模块化,第三方插件单独维护,方便继承和开发自己的插件。
  • 中文支持。集成百度、科大讯飞、阿里、腾讯、OpenAI Whisper、Apple、微软Edge、VITS声音克隆TTS 等多家中文语音识别和语音合成技术,且可以继续扩展。
  • 对话机器人支持。支持基于 AnyQ 的本地对话机器人,并支持接入图灵机器人、ChatGPT 等在线对话机器人。
  • 全局监听,离线唤醒。支持 Porcupinesnowboy 两套离线语音指令唤醒引擎,并支持 Muse 脑机唤醒 以及行空板摇一摇唤醒等其他唤醒方式。
  • 灵活可配置。支持定制机器人名字,支持选择语音识别和合成的插件。
  • 智能家居。支持和 小爱音箱Siri、mqtt、HomeAssistant 等智能家居协议联动,支持语音控制智能家电。
  • 后台配套支持。提供配套后台,可实现远程操控、修改配置和日志查看等功能。
  • 开放API。可利用后端开放的API,实现更丰富的功能。
  • 安装简单,支持更多平台。相比 dingdang-robot ,舍弃了 PocketSphinx 的离线唤醒方案,安装变得更加简单,代码量更少,更易于维护并且能在 Mac 以及更多 Linux 系统中运行。

wukong-robot 的功能还在不断更新迭代中,详见 更新说明

wukong-robot 的工作模式:

wukong-robot 的工作模式

wukong-robot 被唤醒后,用户的语音指令先经过 ASR 引擎进行 ASR 识别成文本,然后对识别到的文本进行 NLU 解析,再将解析结果进行技能匹配,交给适合处理该指令的技能插件去处理。插件处理完成后,得到的结果再交给 TTS 引擎合成成语音,播放给用户。

虽然一次交互可能包含多次网络请求,不过带来的好处是:每一个环节都可以被修改和定制。而且我认为,到了 5G 时代,音箱的响应速度将不再成为体验问题。可定制和个性化才是未来的主流,而届时 wukong-robot 将会是更好的选择!

Demo

demo

环境要求

Python 版本

wukong-robot 只支持 Python >= 3.7 且 < 3.10 ,不支持 Python 2.x 。

设备要求

wukong-robot 支持运行在以下的设备和系统中:

  • Intel Chip Mac (不支持 M1 芯片)
  • 64bit Ubuntu(12.04 and 14.04)
  • 全系列的树莓派(Raspbian 系统)
  • Pine 64 with Debian Jessie 8.5(3.10.102)
  • Intel Edison with Ubilinux (Debian Wheezy 7.8)
  • 装有 WSL(Windows Subsystem for Linux) 的 Windows

安装

wukong-robot 安装教程

升级

python3 wukong.py update

如果提示升级失败,可以尝试在 wukong-robot 的根目录手动执行以下命令,看看问题出在哪。

git pull
pip3 install -r requirements.txt

运行

python3 wukong.py

建议在 tmux 或 supervisor 中执行。

第一次启动时将提示你是否要到用户目录下创建一个配置文件,输入 y 即可。

然后通过唤醒词 “snowboy” 唤醒 wukong-robot 进行交互(该唤醒词可自定义)。

此外,wukong-robot 默认在运行期间还会启动一个后台管理端,提供了远程对话、查看修改配置、查看 log 等能力。

建议正式使用时修改用户名和密码,以免泄漏隐私。

配置

参考配置文件的注释进行配置即可。注意不建议直接修改 default.yml 里的内容,否则会给后续通过 git pull 更新带来麻烦。你应该拷贝一份放到 $HOME/.wukong/config.yml 中,或者在运行的时候按照提示让 wukong-robot 为你完成这件事。

tips:不论使用哪个厂商的API,都建议注册并填上自己注册的应用信息,而不要用默认的配置。这是因为这些API都有使用频率和并发数限制,过多人同时使用会影响服务质量。

技能插件

API 接口

wukong-robot 的后台接口是开放 Web API 的,可以使用 Restful 方式调用,见 后台API

捐赠

您的捐赠将鼓励我继续完善 wukong-robot。

  • 对于个人用户,可以使用支付宝或者微信进行捐赠,单笔超过 100 元的捐赠者,您的 ID 将可以出现在 wukong-robot 后台管理端的捐赠页面中。
支付宝 微信支付

如果以上的图裂了,可以下载图片(支付宝 | 微信)到本地进行扫描。

  • 对于企业用户,建议成为这个项目的 backer,您将可以把一个带链接的 logo 放在 wukong-robot 后台管理端的首页、捐赠页面以及 Github 项目首页中。

贡献

  • 喜欢本项目请先打一颗星;
  • 提 bug 请到 issue 页面
  • 要贡献代码,欢迎 fork 之后再提 pull request;
  • 插件请提交到 wukong-contrib

引用

如果使用本项目的代码或插件,请引用本项目。

@misc{wukong-robot,
  author = {潘伟洲},
  title = {wukong-robot,一个简单、灵活、优雅的中文语音对话机器人/智能音箱项目},
  year = {2019},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/wzpan/wukong-robot}},
}

联系

  • wukong-robot 的主要开发者是 潘伟洲
  • QQ 频道(推荐):

使用 QQ 扫码加入:

  • QQ 群:580447290(人数将满,为控制人数,需付费20元入群。微信或支付宝支付后,申请入群时贴上转账单号即可。群收入的前一万元已无偿捐赠给壹基金等公益项目)。
支付宝 微信支付

如果以上的图裂了,可以下载图片(支付宝 | 微信)到本地进行扫描。

感谢

Star 历史

Star History Chart

免责声明

  • wukong-robot 只用作个人学习研究,如因使用 wukong-robot 导致任何损失,本人概不负责。
  • 本开源项目与腾讯叮当助手及优必选悟空项目没有任何关系。
MIT License Copyright (c) 2016 - present Weizhou Pan Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

About

wukong-robot 是一个简单、灵活、优雅的中文语音对话机器人/智能音箱项目,支持 ChatGPT 多轮对话能力,还可能是首个支持脑机交互的开源智能音箱项目。 expand collapse
Cancel

Releases

No release

Contributors

All

Activities

Load More
can not load any more
Python
1
https://gitee.com/wzpan/wukong-robot.git
git@gitee.com:wzpan/wukong-robot.git
wzpan
wukong-robot
wukong-robot
master

Search

53164aa7 5694891 3bd8fe86 5694891