A voice assistant is software that uses voice recognition, language processing algorithms, and voice synthesis to listen to specific voice commands and respond with information or function requested by the user.
Some of the most famous voice assistance are Google assistant, Alexa, Siri, Cortana, etc. Today in this article I will discuss a few open-source and mostly used voice assistants for the Linux platform.
Mycroft is one of the most popular open-source voice assistants which can be installed on Linux, Raspberry pi, or mark 1 and mark 2 hardware devices. The Mycroft software stack is consists of the following parts:
Mycroft does wake word spotting which is also known as keyword spotting through its Precise wake word engine. Precise uses a trained recurrent neural network to differentiate between wake and non-wake sounds.
Speech to text
It uses Mozilla’s common voice project to convert speech to text.
It uses an intent parser called Adapt which converts natural language into machine-readable data structures.
Text to speech
To convert text into natural-sounding audio Mycroft uses Mimic which itself is based on the Festival lite speech synthesis system.
Open Assistant is a free and open-source voice assistant program. It is a functional prototype with a vast long-term vision. You can accomplish any system task quickly by using simple voice commands.
Open Assistant mainly consists of three parts boot mind, root mind, and user minds. The boot mind and root mind are hardcoded with retrieval-based natural language processing to enable offline operations with high accuracy and increased speed.
Boot mind gets activated when you press the power button and it initializes the root mind when the trigger word is spoken. The root mind helps the system to respond to a basic set of voice commands. The user mind is the most advanced component which has the ability to learn and behave in a specific way.
Dragonfire is an open-source voice assistant for Ubuntu-based Linux systems. It uses Mozilla’s Deepspeech to understand the voice commands and Festival speech synthesis system to handle text to speech tasks.
It goes through the following steps –
- Search into builtin commands and evaluate expressions
- Try to learn using advanced NLP and DBMS techniques
- Try to search on the open-domain question and answering engine
- It responds using a Deep conversation system and a neural network trained with Cornell Movie Dialogs Corpus
LinTO is another open-source end-to-end platform for voice-operated solutions. It is funded by the French government’s PIA (Programme d’Investissement d’Avenir, for “Future Investment Program”).
You can deploy it at your office or a premise, it can learn and update the database with business-specific vocabulary. It is good at understanding the intent.
Rhapsspy is an open-source, fully offline set of voice assistant services for many natural human languages. It is created and maintained by Michael Hansen. It comes with a snazzy web interface that lets you configure the program and let you test your voice assistant remotely.
After installation, access Rhasspy through its web interface, customize the voice commands, and train it. You can also connect it to other software like Home Assistant or a Node-RED flow.
Leon is an opensource voice assistant you can carry out system task and get some information by talking or texting to it. It requires Node.js and Python to be installed on a system where you want to install Leon voice assistant.
If you want to, Leon can communicate with you by being offline to protect your privacy. It is pretty young but can easily scale to have new features.
There are so many other voice assistant programs for Linux here we have discussed only a few of them. You can try them to see how well each of them can perform.
Now for any query you can write us in the comments below.