A simple python voice assistent.
Caroline, who is currently managed by a bunch of if-statements, is a simple python voice assistant. She is not meant to compete with the giants such as Siri and Alexa, instead, she is a cool way for me to explore the Python language and learn some important programming concepts.
I give her a command in English, she transcribes what I'm saying, then replied back in both English text and voice. Check the Change Log for demos of all the features as they get added.
- (NEW) Recall an entire conversation
- Playing a song from YouTube
- Telling the time
- Searching wikipedia
- Google search
- Giving compliments
- Stopping execution via voice command
- Telling a random joke (of course!)
The whole premise of Caroline is to be an interesting way to learn new concepts. Here are some that I have learned in this version:
- Voice recognition
- Speech to text transcription
- Text to speech conversion
- Exception handling, classes and dunder methods
- Various Python modules
- Manual implementation of a stack in Python
- Using Natural Language Processing to replace the if statements and have Caroline intuitively understand commands.
- Training the voice recognition engine to better recognise African accents
- Modularising the code and adding more features
- Listening in the background (no explicit launch)
- Added Feature: Recalling an entire conversation - this feature uses a manually implemented stack to track and then recall an entire conversation between Caroline and the user.
Added all the basic features.
This current version of Caroline was inspired by Programming Hero.