First experience with Yandex Dialogues. We are waiting for innovations

I started to create voice skills at the beginning of 2017 - Amazon's Echo device with Alexa assistant (Alex). At that time, the tools for developers had been available for a year and a half, although they didn’t compare with what Amazon and Google offer today. Having opened the Yandex Dialogues panel, I just remembered the beginning and how much everything has changed until today.

I would like to share with you the first experience and impressions of creating a skill in Russian for Yandex Alice (Yandex Dialogues) after the experience with Alexa Skills Kit and Amazon Lex.

The simplest scheme of how a voice assistant works.

All the differences between the platforms are in the middle - a platform that recognizes speech, processes input requests and displays the answer to the user, and depending on its simplicity / complexity, the work of the developer is simplified / complicated, and may not be needed for a very simple skill (for example, using Dialogflow).

After opening the Dialogues from Yandex, I was immediately confused by a simple interface, too simple - where is everything and how to manage it? It turned out that all that Yandex currently offers.

Goals or “Intents”

The first thing I expected to see in the Dialogues is “intents”, which literally translates as “intentions” or “goals”. Each such "intent" contains examples of user requests. Creating such sets makes it clear to the developer what the user wants from him. For example, we could create such “goals” (“intents”):

“Order dumplings” with examples of requests:
“order delivery of dumplings”
“I want dumplings, order”
“dumplings with chicken meat, more cheese”

“Help” with examples requests:
“I'm stuck”
“how to use it”

With the help of such examples, it is easy for us to understand the user and his expectations - the user said “I want dumplings, place an order”, it means our “goal” (“intent”) “Order Pelmeni” means working within this request. Ideally, the platform should learn and understand similar phrases. At the moment, Yandex does not offer the “intents” function, although I am sure this opportunity will be added next year.

Entities or “Entities”

Next come the “entities” (entities (Google) or slots (Amazon)) - keywords or phrases. Fortunately, Yandex Dialogues currently recognize 4 types of entities - this is the date (including “tomorrow”, “next year”), numbers, geo-data (at the moment I actively use countries and cities) and names. This greatly simplifies the life of the developer, they facilitate and give flexibility during the development of the skill.

If you look at the big brothers, they allow the developer to create “entities” himself, and also offer a wide range of integrated “entities”, for example AMAZON.Food (food) and AMAZON.Airports (names of airports).

Interface Alexa Skills Kit. Even last year, everything changed in a simple text field, today it is a rich interface with advanced features that is constantly updated. We look forward to updates Yandex.

At the moment I am developing a skill where the “essence” of the seasons of the year, a list with sports and the names of events would not hurt. To "pick up" the right words, you need to change the code.


Everything is sad here. The test rests on one chat and JSON request and output window. Only the keyboard, without input or output by voice, and without the ability to test other users. Simply put, there are no test tools here.

Russian language

It is worth mentioning - the creation of voice skills in Russian is slightly complicated by the properties of the language. For example, if in English we speak “to France”, “from France” and “with France”, having spread the same words in cases in Russian, they say “to France”, “from France” and “with France”. The solution of such and similar problems will help small functions.


What well:

  • Integrated Entities.
  • Ability to connect webhook. Like without him.
  • Support. I sent requests for the weekend, on Monday I received a reply.

What are we waiting for: (dialogs for several months, so I will not single out as cons.)

  • Creating your own entities.
  • More integrated entities (name of airports, restaurants, etc.).
  • Goals (intents) - a collection of phrases.
  • Ability to use the command line (CLI).
  • Voice testing and listening to the output.
  • Everything related to testing (beta tests, the ability to add users, etc.)


Just like in the world of search engines, there is only one competitor - Google with its Dialogflow.

At the moment, the Russian language in Dialogflow is supported only in one direction, speech-to-text, so Yandex is among the leaders.

It is also nice that having dealt with one platform, the developer will be able to easily master all the others.

We are waiting for innovations

During the development of a skill, within a few weeks, Yandex has repeatedly introduced changes to the Dialogues, the main thing is to keep the pace. Alice and her instruments are still young as the entire global market for voice devices.

Also popular now: