French startup Snips is now helping you build a custom voice assistant for your device. Snips doesn’t use Amazon’s Alexa Voice Service or Google Assistant SDK — the company is building its own voice assistant so that you can embed it on your devices. And the best part is that it doesn’t send anything to the cloud as it works offline.
If you want to understand how a voice assistant works, you can split it into multiple parts. First, it starts with a wakeword. Snips has a handful of wakewords by default, such as “Hey Snips,” but you can also pay the company to create your own wakeword.
For instance, if you’re building a multimedia robot called Keecker, you can create a custom “Hey Keecker” hot word. Snips then uses deep learning to accurately detect when someone is trying to talk to your voice assistant.
The second part is automatic speech recognition. A voice assistant transcribes your voice into a text query. Popular home assistants usually send a small audio file with your voice and use servers to transcribe your query.
Snips can transcribe your voice into text on the device itself. It works on anything that is more powerful than a Raspberry Pi. For now, Snips is limited to English and French. You’ll have to use a third-party automatic speech recognition API for other languages.
Then, Snips needs to understand your query. The company has developed natural language capabilities. But there are hundreds, or even thousands of different ways to ask a simple question about the weather for instance.
That’s why Snips is launching a data generation service today. I saw a demo yesterday, and the interface looks like Automator on macOS or Workflow on iOS. You define some variables, such as “date” and “location”, you define if they are mandatory for the query and you enter a few examples.
But instead of manually entering hundreds of variations of the same query, you can pay $100 to $800 to let Snips do the work for you. The startup manually checks your request then posts it on Amazon Mechanical Turk and other crowdsourcing marketplaces. Finally, Snips cleans up your data set and sends it back to you.
You can either download it and reuse it in another chatbot or voice assistant, or you can use it with Snips’ own voice assistant. You can also make your capability public. Other Snips users can add this capability to their own assistant by browsing a repository of pre-trained capabilities.
A Snips voice assistant typically requires hundreds of megabytes but is quite easy to update. After installing the Snips app on your device, you just need to replace a zip library file to add new capabilities.
You also need to implement the actual actions. Snips only translates what someone is saying into a parsable query. For instance, Snips can understand that “could you please turn on the bedroom light?” means “light + bedroom + on.” A developer still needs to implement the action based on those three parameters.
Developers are already playing with Snips to test its capabilities. But the company hopes that big device manufacturers are going to embed Snips into their future products. Eventually, you could think about a coffee maker with a Snips voice assistant.
Compared to Amazon’s or Google’s wide-ranging assistants, Snips thinks that you don’t need to embed a complete voice assistant into all your devices. You only want to tell your Roomba to start vacuuming — no need to let you start a Spotify playlist from your vacuum cleaner.
This approach presents a few advantages when it comes to privacy and network effects. Big tech companies are creating ecosystem of internet-of-things devices. People are buying lightbulbs, security cameras and door locks that work with the Amazon Echo for instance.
But if you can talk to the devices themselves, you don’t need to hook up your devices with a central home speaker — the central hub disappears. If voice assistants are more than a fad, Snips is building some promising technology. And Snips could get some licensing revenue for each device that comes with its voice assistant.
Featured Image: Bryce Durbin/TechCrunch