В рейтинге Inc. Russia —
100 самых успешных стартапов 2021 года
Лучшие разговорные роботы
Рассказываем секреты роботов Tomoru: что они умеют и как работают. Только договоримся: это останется между нами.

Как устроены роботы Tomoru

Сложнее всего — понять слова человека и дать ответ
Никита Архипов директор по маркетингу Tomoru
Наталья Болдырева
автор
По какому номеру
мы можем назначить встречу?
Нажимая кнопку, вы соглашаетесь с политикой обработки персональных данных
Когда робот говорит с человеком, в нём работает пять мини-роботов. Каждый из них должен выполнить свою функцию:
Самое главное — понять смысл сказанного, решить, что ответить, и дать ответ. В Tomoru посчитали, что в 60% диалогов люди хотя бы раз отвечают сложно, неоднозначно, и робот должен уметь распознавать такой ответ. А в 70% диалогов люди возражают, спрашивают, спорят и ведут себя непредсказуемо — и тут робот должен уметь решить сам, что ответить.
Робота озвучивает человек, но что именно отвечать — решает робот
услышать речь — отделить человеческий голос от потока других звуков. Это несложно, но требует времени — именно поэтому после ответа человека возникает пауза. В Tomoru работают, чтобы пауза была как можно меньше;
перевести голос в текст — всё, что сказал человек, становится текстом, который и распознает робот. За перевод голоса в текст отвечает программа Yandex SpeechKit. По опыту, это лучшее, что сейчас есть на рынке подобных программ;
понять смысл сказанного — сложно для робота, потому что люди могут говорить общими словами, а не «да» или «нет»;
ответить — органично и в рамках контекста.
решить, что ответить — с учетом того, что сказал человек;
Чтобы робот понимал смысл слов человека, в разных компаниях при создании роботов применяют разные подходы:
Роботы Tomoru как раз анализируют естественную речь. А дальше они решает, что ответить, и здесь робот похож на человека: у всех людей есть глаза, рот, уши и мозг, но все принимают разные решения в работе и жизни и общаются по-разному. Всё потому, что люди по-разному обучены — их системы принятий решений отличаются.
Жесткие команды
Робот зачитывает текст сообщения и просит в ответ нажать нужную кнопку или громко ответить «да» или «нет». Таких роботов называют винтажными
Робот из ответа человека выделяет ключевые слова — это могут быть «да», «нет», «согласен». Всё зависит от того, на какие слова запрограммировали робота
Поиск по ключевым словам
Система, в которой робот анализирует не отдельные слова, а весь ответ в целом. Ответ может быть длинным, например историей из жизни, но робот всё равно поймет суть
Анализ естественного языка
С роботом то же самое: у разных роботов могут быть одинаковые система распознавания речи и понимания смысла сказанного, но в итоге эффективность робота зависит от решения, которое он примет. Здесь тоже есть три подхода:
Линейная логика
Робот воспроизводит текст вне зависимости от того, что ему говорит человек. Устаревшая технология
Система работает по принципу чат-бота: выстраивается дерево вопросов и вариантов ответов. Это ограниченная система, потому что очень быстро выстраивается тысячи возможных вариантов ответов
Дерево решений
В этой системе дерево отсутствует, а робот каждый раз взвешивает одно из сотни доступных решений. Например, человек что-то сказал, и робот обдумывает, какой вариант поведения ему доступен с учетом контекста
Гибкая архитектура
Дальше робот выбирает, что ответить. Вы удивитесь, но и здесь есть три технологии:
В Tomoru фразы робота озвучивают дикторы, но не начитывают текст как в новостях на центральном канале, а делают паузы, вставляют междометия, говорят нелинейно — так, словно прямо сейчас говорит человек без бумажки.
Синтез речи
Неестественная роботизированная речь, человек сразу понимает, что с ним говорит робот. Это устаревшая технология
Здесь тоже роботизированные ответы, но они уникальные, придуманы под компанию-клиента
Yandex Brand Voice
Текст начитывает актер озвучки или диктор
Озвучка человеком
Робот всё время учится
На самом деле у умных роботов есть и шестая система — обучение. Чтобы всё работало, роботы должны постоянно учиться. Мы условно называем систему обучения шестой, но это скорее основа для всех систем.
Обычно для роботов используют древовидную систему. Представьте: наверху дерева короткое приветствие робота, внизу — текст, который он озвучивает. В такой системе робот может двигаться только сверху вниз. Если вдруг пользователь задаст вопрос, который хранится в середине дерева, робот не сможет к нему вернуться.
В системе обучения Tomoru цепочки робота независимы друг от друга. В одной цепочке робот знает о погоде, в другой — о ценах на бензин. Если шла беседа о погоде, а человек вдруг спросил о бензине, робот сможет переключиться на другую цепочку.
Если шла беседа о погоде, а человек вдруг спросил о бензине, робот сможет переключиться
Получается, в древовидной системе цепочка одна большая, а варианты ответов нанизываются на предыдущие фразы. А в системе Tomoru цепочек может быть сколько угодно, при этом робот в любой момент может переходить из одной в другую — брать вопросы и ответы из разных мест.
Это особенная система, потому что она позволяет роботу учиться. Допустим, на свет появился новый робот: он знает фразы, но их пока немного. Робот звонит людям и видит, что они задают самые разные вопросы, с которыми он не знаком. Он отвечает: «Простите, я не знаю ответ на вопрос, но попрошу коллег, чтобы они вам перезвонили. Эти вопросы — и соответственно ответы на них — заносятся в мозг робота. И в следующий раз тот уже сможет понять вопрос и ответить на него.
Вот таких дополнений в мозг робота может быть сколько угодно: чем дольше робот общается с людьми, тем больше вопросов, ответов и нюансов он знает. Всё как у людей :—)
Робот думает мгновение — сто миллисекунд
Чтобы робот был умным и похожим на человека, ему нужно пройти весь путь, который мы описали в статье. Процесс занимает 100 миллисекунд — для человек это мгновение. Но именно такая цепочка приводит к росту конверсий и продаж в компании:
Технология Tomoru позволяет создавать умных роботов за четыре-шесть часов. Еще два-три часа уходит на встречи с клиентом, согласования и запуск обзвона. В итоге мы можем запустить робота за один день. Это может занять и несколько дней — если робот сложный, а процесс согласования затягивается. Подробнее мы рассказали в статье «Как мы подключаем роботов».
услышать человека и перевести речь в текст. В текст, потому что с ним удобнее работать — разбирать диалоги и обучать робота.
постоянно учиться, чтобы поддерживать любую беседу.
ответить.
решить, что ответить. Для этого робот вспоминает, что узнал во время беседы, считывает контекст, и соотносит это с намерением человека, которое он узнал на предыдущем шаге.
понять, что хотел сказать человек, какое у него намерение. Собеседник мог задать вопрос, согласиться или возразить — это и нужно распознать роботу.