Чем ближе структура диалога к естественной, тем сложнее с ним работать

Aug 25, 2018 20:55

Очень непросто оказалось ввести в чатбот некоторую проактивность, например (B - реплики бота, H - реплики человека):

B:> Добрый день
H:> Привет, как тебя зовут?
B:> кеша
B:> А как тебя зовут?
H:> Меня зовут Илья.
B:> Рад знакомству.

Сейчас проект плавно переходит во вторую стадию - реализация reasoning engine и интерпретация реплик.

Reasoning engine - эта модель, которая реализует вывод ответов на основе фактов и правил, например:

T: Любой человек смертен.
T: Сократ человек.
Q: Смертен ли Сократ?
A: Да

В этом случае задача системы - вывести ответ "Да", хотя в явном виде факт "Сократ смертен" в базе фактов отсутствует.

Интерпретация реплик - это учет текущего контекста беседы, делающий ее естественной и привычной, диалог становится менее механичным. Простейший пример:

- Привет
- Привет, как тебя зовут?
- Илья, а тебя?
- Кеша

Тут третья реплика "- Илья, а тебя?" на самом деле должна быть проинтерпретирована как "Меня зовут Илья. А тебя как зовут?". Раскрытие анафоры, замена эллипсисов и некоторые прочие лингвистические заморочки - разные грани интерпретации.

текущие планы, вербальный интерфейс, chatbot, чат-боты

Previous post Next post
Up