Giter VIP home page Giter VIP logo

python_voice_chatbot's Introduction

Python_Voice_Chatbot Maintenance made-with-python GitHub license Generic badge Donate saythanks

Easy to use modular chatbot to talk to, get information from etc. (depends on enabled modules) and the best of all keeping your data private/locally. Therefore, the assistant can operate offline except by the use of some modules (e.g. weather module, etc.). Would love to see some reactions (issues, pull-requests, etc.). Please note, that this project is young and has not all featured functionalities. This application uses the Chatterbot framework.

How to get started

To get your home assistant running you just have to take 1-2 steps (depends on whether you started the assistant before).

  1. Execute setup.py once, if you newly downloaded this assistant
  2. Execute main.py

Above steps will work assuming that you have all python libraries installed. Considering this I recommend using Docker, for that I have provided a Dockerfile.

Docker-Ready

To start the bot without any complications I made a Dockerfile for you guys. You will find this project also on Dockerhub (hub.docker.com/r/wsdt/python_voice_chatbot). Therefore you have two options to build the docker image:

  1. Build docker image
    • Build the dockerfile yourself/locally. docker build -t wsdt/python_voice_chatbot . OR
    • You can also download the pre-compiled image from Dockerhub. Just pull the existing docker image (gets built every time a contributor pushes on Github). docker pull wsdt/python_voice_chatbot
  2. Start a new container out of the newly created/built image: docker run wsdt/python_voice_chatbot
  3. Verify that the container is running by: docker ps -a

For more detailed information I recommend you to look through the Docker-documentation.

Contribution Open Source Love svg2 PRs Welcome

This project is licensed under GNU V3, so contributions/pull-requests are welcome. All contributors get listed here.

Contributors

  • Kevin Riedl (WSDT)

How to contribute

To create new modules or changing/extending the application core, please take a look into following files, which are well commented (Better documentation follows):

  1. ./starterkit/abstr_answer.py --> How to create a new module
  2. ./setup.py --> How to install this assistant

Project not maintained due to other projects, which tried to do the same.

How to add an issue

  1. Add a good title to your issue. Please use a concise and precise title.
  • BAD: "ServiceMgr"
  • GOOD: "Redesign/Improve ServiceMgr"
  1. Add a good description to your issue. Your description doesn't need to be concise, but should be clear/understandable and provide enough information for other contributors to solve the issue. For that I provided an issue template.

Python_Chatbot

You might have seen that I published also a quite similar repository called Python_Telegram_Chatbot [https://github.com/wsdt/Python_Telegram_Chatbot]. The Python_Chatbot repository is only a simple chatbot for your Telegram app, which can conversate with you and has some additional features like some information about your Instagram account, random quotes/pics/questions etc.

In contrast to that this repository provides are more modular interface and does not communicate via Telegram, but via voice with you.

python_voice_chatbot's People

Contributors

wsdt avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

python_voice_chatbot's Issues

Docker secrets

Maybe migrate CONFIDENTIAL.py (at least for docker images) to docker secrets.

Docker run error (audio)

By running the current Dockerfile you will get following error:

-> Error opening audio device (null) for capture: Connection refused
In main.py line 14 (main()): liveSpeech() [VoiceMgr.py]

From perspective the microphone or/and loudspeakers of the host system are not mapped into the container.

Add threading

Add threading when it comes e.g. to the assistant response (so the we don't stop listen to a users' voice when we wait for the answer)

Better voice-to-text recognition

Better voice-to-text recognition needed.

Maybe add the possibility to use other (cloud-based) apis for those people who do not care much for their privacy or similar.

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.