ggeop / Python-ai-assistant

Python AI assistant 🧠
MIT License
936 stars 247 forks source link
ai google-speech-recognition google-speech-to-text linux-assistant mongodb nlp nlp-machine-learning nltk pymongo python python35 sklearn voice-activity-detection voice-assistant voice-chat voice-commands voice-control voice-recognition voice-recognition-experiment wolfram-language

CodeFactor Maintainability License: MIT Build Status

alt text

About Jarvis - An Intelligent AI Consciousness 🧠

Jarvis is a voice commanding assistant service in Python 3.8 It can recognize human speech, talk to user and execute basic commands.

Requirements

Assistant Skills

Assistant Features

Getting Started

Create KEYs for third party APIs

Jarvis assistant uses third party APIs for speech recognition,web information search, weather forecasting etc. All the following APIs have free no-commercial API calls. Subscribe to the following APIs in order to take FREE access KEYs.

For Contribution:

git clone https://github.com/ggeop/Jarvis.git --branch develop

NOTE: For better experience, before you start the application you can put the free KEYs in the settings.py

nano Jarvis/src/jarvis/jarvis/setting.py

Start voice commanding assistant

alt text

How to add a new Skill to assistant

You can easily add a new skill in two steps.

Decision Model

alt text

Extract skill

The skill extraction implement in a matrix of TF-IDF features for each skill. In the following example he have a dimensional space with three skills. The user input analyzed in this space and by using a similarity metric (e.g cosine) we find the most similar skill. alt text


Contributing

CI/CD Flow

alt text

🔗 Related Projects

If you enjoy this virtual assistant, you might also be interested in my other AI-powered project: DataDialogue

Transform the way you interact with databases through natural conversations! DataDialogue enables anyone to:

DataDialogue Demo