Almond translates your commands into a personalized program.
Brought to you by the Stanford Open Virtual Assistant Lab.
See how Almond helps Kimmy babysit.
Learn how you can use Almond for your tasks.
Virtual assistants are the new interface to the Web.
Our vision for virtual assistants includes:
We should have open, collaborative research to put open-source linguistic technology in the hands of all businesses.
All skills, or linguistic user interfaces, should be made available to any virtual assistant.
We as users should have a choice in virtual assistant services and the ability to control how we share our data.
Learn more about how you can run Almond with maximum privacy.
The First Open Virtual Assistant Workshop was held on October 30, 2019, as part of the Stanford HAI Symposium. The workshop gathered together people interested in this topic to share interests in the field, the state of the art, latest research, and to learn how to further develop the field.
Home Assistant is the leading open-source IoT gateway, and Almond is now integrated with it. Almond powers the Home Assistant conversation support, also now has the ability to interact with dozens of different IoTs across hundreds of brands. This integration was announced at the Home Assistant State of the Union yearly conference on November 13th, and released on November 22nd.
We’re participating in Hacktoberfest this year to celebrate the open-source community.
Notifications are hard! Every website, every social network, every app is continuously competing for our attention. But that's no more: with Almond, you decide what you care about.
Commands in Almond can be monitored and filtered: you can specify to be notified whenever the result changes, when a certain condition is true, or only for a certain subset of the data. For example:
Almond's conditions can make use of any result returned by a command, like the title of an article or the body of the new email. You can also use a command, and check if that satisfies a condition. Just specify your conditions in English, and let Almond notify you.
Almond is the first virtual assistant that allows you to specify commands that combine two or more services at once. You can specify when to execute the command, what data to get, and what to do, and each part can be any of the primitives supported by Almond.
You can use compound commands for:
when I leave home, turn off the heating.
when I post to Twitter, copy the post to Facebook.
get the Bitcoin price and then send it to my colleague on Slack.
If you have used IFTTT, you'll love Almond.
Almond provides a uniform interface to your physical devices, your social network accounts, and many more services. Almond wants to let you access anything on the Internet, from your assistant.
Almond capabilities are defined in Thingpedia, a crowdsourced repository of commands and interfaces to online services and Internet of Things. Anyone can contribute new entries to Thingpedia, and with small amounts of training data, Almond will be immediately able to interact with the new device or service.
Almond uses a state-of-the-art natural language understanding model. Almond's deep learning model allows it to understand more complex commands across more domains than any other assistant on the market: just train Almond with pairs of sentences and programs, and Almond will learn.
We are continuously improving Almond, and building tools to allow others to extend Almond. We have developed a tool called Genie that allows to generate training data in new domains from scratch. Using Genie, we have found that Almond understands user's input with 68% accuracy - a marked improvement over the previous best known result. Furthermore, with little effort we were able to build a specialized skill for Spotify, add natural language to access control, and extend Almond with aggregates (sum, count, average, etc.).
As academics, our research is open-source, and all technology is freely available to the public. Anyone can leverage our algorithm in their product or in their own research. Learn more about our research and how you can use Almond's technology.
Here is a sample of what Almond can do, and a few commands that our users and developers think are interesting. It is not an exhaustive list! Commands can combined in arbitrary ways, creating endless possibilities for your assistant.