Coder Social home page Coder Social logo

kim-voice-assistant's Introduction

介绍

交谈,是我们每天都在做的事,也是最容易习惯的人机交互方式,这是各种音箱大卖的原因之一。"Kim智能语音助理"是一个开源的语音、文本交互方案。同时,通过部署云端服务,使设备具备远程会话能力能力,增加可玩性。

除此之外,Kim的目标是将智能语音助理与智能家居系统无缝结合,我们已经支持著名开源智能家居系统"HomeAssistant",可以接入小米、博联等主流品牌的智能家居设备。

与阿里云的深度融合,使Kim对云端能力触手可及,让你的私人语音助理更加智能,更易扩展,充满魅力。

Python3.6 GitHub issues Shippable GitHub license

主要特性

  1. 基于阿里云服务构建
  2. Docker化快速安装部署
  3. 优化中文语义仲裁算法(KSM),精准理解中文语义
  4. 可选安装"远程会话服务 (RemoteTalk)"
  5. 跨平台支持Respberry Pi、macOS、Windows
  6. 响应消息可通过DingTalk机器人推送到群

应用场景

内置插件

  1. 智能家居控制
  2. 讲段子,查天气、查快递等
  3. 听新闻头条,热门微博
  4. 更多...

自定义插件,扩展Kim的能力

  1. 根据用户意图,请求外部网络接口,完成语音对话交互(或selenium实现Web语音交互)
  2. 智能语音客服机器人
  3. 你完全可以把Kim作为一个交互入口,通过插件实现丰富的后端功能

参见文章"自定义插件"创建自定义插件。

技术架构

Kim基于Python36构建,设备端实现了中文语义仲裁算法和"Kim大脑",通过大脑理解设备输入;会话日志数据存储、插件、设备在线状态及数据传输等功能基于阿里云服务实现。

technical architecture

安装使用

直接安装(支持Win、macOS等平台)

客户端安装

详细安装方法...

配置

  1. 项目运行前,需先修改配置文件,添加你的阿里云AccessKeyId和AccessKeySecret(AccessKey获取方法参照此文),正确的配置AccessKey是使用Kim的第一步。
  2. 配置物联网(IOT)套件
  3. 配置函数计算
  4. 开通云小蜜(ChatBot)

运行

在项目根目录执行

python run.py

带参数运行

python run.py --textmode   # 文字交互模式
python run.py --info # 在日志中输出调试信息
python run.py --info --output # 调试信息直接在终端打印

远程会话服务

项目提供Docker镜像,以便快速安装。请查看文档远程会话服务获得更多信息。 "远程会话服务"建议部署到阿里云ECS,方便从远端与设备会话。

领取阿里云ECS优惠券

技术支持

技术文档

  1. 智能语音交互(ASR):一句话识别RESTful API
  2. 智能语音交互(TTS):语音合成RESTful API
  3. 阿里云物联网套件:设备端基于MQTT接入
  4. 表格存储:Python SDK
  5. 云小蜜:快速创建会话机器人
  6. 阿里云云市场:API市场
  7. HomeAssistant:接入文档

钉钉交流群

用钉钉扫描下方二维码,入群交流。

钉钉群

TODO

  1. 支持HomeAssistant
  2. 支持Docker镜像安装(语音模式仅支持基于Linux Kernel的平台)
  3. 插件被修改时,Brain自动重载插件

鸣谢

  1. 感谢阿里云提供技术支持
  2. 感谢阿里云天池大赛官方
  3. 感谢The Jasper ProjectDingDang的开发者,他们启发了我的灵感

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.