Meet the open-source community’s answers to Google Assistant and Alexa
Privacy
Mycroft's reliance on open source software on almost all of its layers makes it more comforting to use than closed-source alternatives. Most of the components are open source: Its wake-word recognition is powered by PocketSphinx, for example, and its skills framework is coded in Python. Mycroft has even developed its own open code for language processing, Adapt, to avoid relying on proprietary software for its product.
However, Mycroft's by-default use of the online Mycroft Home service may concern those who are privacy-conscious. Some of the information sent home, such as language preference, may seem relatively harmless; but other details, such as location data, could be too much for some users.
When it comes to it a Speech-to-Text (STT) platform, Mycroft prioritizes Google's STT platform but allows users to pick from a handful of other solutions (Figure 5). Google's STT system, a cloud-based engine owned by a company not known for its concerns over users' privacy, might make some users uncomfortable; Mycroft AI has therefore emphasized its decision to allow users to choose which engine they'd like to use. The company has been quick to assure users that the assistant will be given the option to also employ Mozilla's open-source DeepSpeech service by the end of March 2018 [12]. Mycroft AI insists that all the data it sends to third-party STT services is anonymized, with the service only seeing that Mycroft sent an audio file; but for some, this precaution might not be enough.
Work-in-Progress
It's important to say that, despite the fact that Mycroft is the most popular AI assistant in the open source field, it is by no means a finished piece of software. One shouldn't expect a service on the level of Alexa or Siri (yet).
The first issue you'll likely encounter is that Mycroft often fails to hear your wake-up call (Hey, Mycroft!) and, at least in my case, leaves you screaming at your computer like a deranged Sherlock Holmes. Sometimes it will hear you and work fine for the first few commands and then suddenly give up on you. It's very frustrating, but it's likely that as usage of the assistant increases, the developers will improve on this significantly.
When it did hear me, it often failed at delivering the answer I was looking for. Some fairly basic tasks, such as telling the weather, would leave it thinking for a bit before telling me it didn't know how to answer (despite the fact that the weather skill was installed). In some other cases, it would give me a definition of what the weather is! Other simple requests, such as asking Mycroft who the president of the United States is, would also give me a definition of the head of state rather than telling me who the actual person is. A quick search on YouTube will provide more examples of Mycroft's hilarious answers, which range from bizarre to downright wrong [13].
To be fair, though, voice recognition was consistently good when it did listen, easily understanding what I said. It recognized what I said and, more importantly, understood what to do afterwards… most of the time.
Though it might sound like a nitpick, Mycroft's voice could also use some improvement; to say that it sounds robotic would be a kindness. He (or she, depending on which voice you choose) sounds like a cross between a Cyberman from Doctor Who and a prison warden. Depending on what he is saying, the voice can be either slightly amusing or slightly intimidating.
Honorable Mentions
As is always the case with the open source community, Mycroft is far from the only project under development. A significant number of virtual assistants are currently in development, all with slightly different focuses and abilities.
For the more private individuals, Open Assistant [14] is an interesting option. It is entirely offline and works only with open source components. Though Open Assistant is not as well known as Mycroft, it is a compelling alternative, but it is rather spartan in its abilities. It has, however, quite a few skills that could be useful for desktop users, such as the ability to open applications and resize windows; in that sense, it gets closer to being a genuinely useful computer assistant than many of its competitors.
Before creating their own personal assistant, the Mycroft developers had attempted to contribute to Jasper, which was one of the more well-known assistant projects in the open source scene. Jasper is meant to run on a Raspberry Pi and serve as an assistant, much like Mycroft's Mark I and II, rather than playing the role of a general-purpose desktop assistant on a PC; it still features very basic functionality, such as reading the weather and telling the time [15].
Another name that often pops up is Dragonfire [16]. The focus of Dragonfire, however, is much more particular than Mycroft: The project is intended to serve as a virtual assistant for motorcycle helmets rather than a general-use assistant for the home. Even so, the developers provide a package that will install on Ubuntu… but only Ubuntu. Any other distro will require a compilation. Dragonfire is notoriously difficult to get working – the .deb
file provided by the developers failed in our attempted installations.
Kalliope is yet another project aiming to provide a functional and easy-to-use assistant, but this time with the focus on home automation [17]. Like Open Assistant, it can also be entirely self-hosted, though it also supports other cloud-based STT engines such as Google's. Development is very active, and, much like Mycroft, it also has skills (called neurons in Kalliope's case) that you can add to increase its functionality. Kalliope aims to support a number of Internet of Things (IoT) devices and, unlike most of the other assistants, it has a mobile app you can use to control your home.
In addition to these assistants that are officially billed as open source, some mainstream assistant tools, such as Alexa, Cortana, and Google Assistant, also contain some open source components (Table 3).
Table 3
Open-Source Components
Component |
Mycroft |
Alexa |
Cortana |
Google Assistant |
Siri |
Wake-word |
PocketSphinx, moving to Precise |
Alexa Voice Services |
Microsoft Speech API |
Google Cloud Speech API |
N/A |
STT |
OpenSTT, Google STT, moving to Mozilla DeepSpeech (aiming for March 2018) |
N/A |
Microsoft SAPI, Project Oxford |
Google STT |
N/A |
Natural language understanding |
Adapt and Padatious |
Alexa Voice Services |
LUIS |
N/A |
N/A |
Text-to-Speech (TTS) |
Mimic (based on CMU Flite) |
Polly |
N/A |
Google TTS |
N/A |
Skills framework |
Python |
Lambda framework, functional programming |
Cortana Skills Framework, node.js, or .NET |
DialogFlow |
N/A |
« Previous 1 2 3 4 Next »
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Gnome Fans Everywhere Rejoice for the Latest Release
Gnome 47.2 is now available for general use but don't expect much in the way of newness, as this is all about improvements and bug fixes.
-
Latest Cinnamon Desktop Releases with a Bold New Look
Just in time for the holidays, the developer of the Cinnamon desktop has shipped a new release to help spice up your eggnog with new features and a new look.
-
Armbian 24.11 Released with Expanded Hardware Support
If you've been waiting for Armbian to support OrangePi 5 Max and Radxa ROCK 5B+, the wait is over.
-
SUSE Renames Several Products for Better Name Recognition
SUSE has been a very powerful player in the European market, but it knows it must branch out to gain serious traction. Will a name change do the trick?
-
ESET Discovers New Linux Malware
WolfsBane is an all-in-one malware that has hit the Linux operating system and includes a dropper, a launcher, and a backdoor.
-
New Linux Kernel Patch Allows Forcing a CPU Mitigation
Even when CPU mitigations can consume precious CPU cycles, it might not be a bad idea to allow users to enable them, even if your machine isn't vulnerable.
-
Red Hat Enterprise Linux 9.5 Released
Notify your friends, loved ones, and colleagues that the latest version of RHEL is available with plenty of enhancements.
-
Linux Sees Massive Performance Increase from a Single Line of Code
With one line of code, Intel was able to increase the performance of the Linux kernel by 4,000 percent.
-
Fedora KDE Approved as an Official Spin
If you prefer the Plasma desktop environment and the Fedora distribution, you're in luck because there's now an official spin that is listed on the same level as the Fedora Workstation edition.
-
New Steam Client Ups the Ante for Linux
The latest release from Steam has some pretty cool tricks up its sleeve.