Найти тему

Intent в Машинном обучении простыми словами

Фото: Livia / Unsplash
Фото: Livia / Unsplash


Намерение – одна из центральных концепций при разработке
Чат-ботов (Chatbot), совокупность алгоритмов, осуществляемых системой, распознавшей потребность пользователя.

Структура

В зависимости от платформы-конструктора или API структура намерения разнится. Однако с практикой сформировались характерные компоненты. Рассмотрим их на примере DialogFlow – популярного продукта Google.

-2
  • Контексты (Contexts): позволяют настроить сложную многоуровневую связь между намерениями. Например, создав контекстом awaitingPhone связку между намерением "Запрос имени" и "Запрос телефона" мы обяжем систему воспринимать числовой ввод как телефон. Вкупе с Последующими намерениями (Follow-up Intents), позволяет реализовывать сложную логику диалога с множеством похожих точек ветвления.
  • События (Events): создаваемое разработчиком на бэкенде событие checkPhone (к примеру, проверка телефона на наличие в базе компании), позволяет исполнить стороннюю логику с использованием номера телефона. Термин тесно связан с понятием Вебхук (Webhook).
  • Тренировочные фразы (Training Phrases): раздел, принимающий примеры пользовательского ввода и позволяющий непосредственно использовать Машинное обучение (ML) для поиска закономерностей. Достойно работает на больших объемах обучающих данных.
-3
  • Действия и параметры (Action and parameters): поле 'Enter action name' значение задается пользователем вручную или генерируется с помощью названий контекстов. Позволяет реализовывать кастомную логику с помощью встроенного редактора Inline Editor в разделе Fulfillment.
  • Ответы (Responses): ответы виртуального ассистента в случае успешного распознавания пользовательского ввода.

-4

  • Исполнение (Fulfillment): свитчер 'Enable webhook call for this intent' позволяет обратиться к кастомной логике разработчика и заполнить другой параметр определенным значением помимо телефона (к примеру, статус активности номера).