Термины
Декларативный тег — описывает структуру чат-бота, задает зависимость между файлами, правила перехода между состояниями и теги реакций.
Дерево разбора ($parseTree
) — формальная структура текста, получаемая в результате парсинга. Процесс сопоставления текста с паттерном позволяет получить дерево разбора текста, элементами которого становятся фрагменты текста, попавшие в именованные паттерны.
Дескриптор сценария — содержит списки всех файлов сценариев, справочников и скриптов, а также общие параметры работы чат-бота, определяется в файле chatbot.yaml.
Именованные сущности — элементы справочника именованных сущностей.
Именованный паттерн — часть паттерна, выделенная в отдельную сущность, которая может быть использована несколько раз.
Интент — ключевая единица NLU-ядра, объединяющая в себе набор фраз, намерение пользователя и другую метаинформацию.
Канал — тип канала коммуникации: Telegram, Viber и пр.
Класс — состояние или стейт.
Конвертер — вспомогательный скрипт для интерпретации значений текста в каждом токене, позволяет преобразовать данные для последующего использования в скриптах.
Матчер — модуль, выполняющий сопоставление паттернов тексту.
Паттерн — формальные правила, описывающие ключевые понятия, выражения и структуру фразы. С помощью паттернов происходит отнесение реплики человека к одному из существующих в системе стейтов, чтобы затем выполнить соответствующие стейту реакции.
Пречат поле — специальное поле, которое будет появляться в окне онлайн-чата. Пользователю необходимо его заполнить перед тем, как начать чат с оператором. Это может быть поле ввода email-адреса, телефона, номера заказа, номера договора и пр.
Реакция — набор действий, выполняемый в ответ на какую-либо фразу пользователя.
Сессия — последовательность взаимодействий клиентом с ботом, использующая единый контекст беседы. Сессия стартует в момент первого сообщения клиента к системе в случае, когда для данного пользователя нет другой активной сессии. Условия завершения сессии различны для каждого бота, конфигурация условий находится на уровне сценария.
Скилл — навык бота.
Скрипт — код на JavaScript.
Справочник именованных сущностей — необходим для обработки в паттернах большого количества каких-либо названий, например, городов, стран, имен, валют и т. п. Задаются в виде csv-файлов
Стейт (состояние) — это элемент сценария, описывающий поведение бота в определенном контексте.
Сущность — единица NLU-ядра. Представляет собой последовательность слов, объединенных некоторым смыслом или правилом. Например: имена, дата и время, местоположение и пр.
Сценарий —
- совокупность всех правил классификации, обработки запросов и генерации ответов;
- файл с расширением .sc;
- совокупность всех файлов, в которых кодируется логика работы чат-бота.
Тег реакции — тег, выполняемый при попадании диалога в определенное состояние.
Тест — тест, который выполняется при публикации чат-бота, пишется на языке XML.
Токен —
- единица текста, полученная в процессе токенизации (слово);
- фрагмент текста, попавший в именованный паттерн.
Токенизация — разбиение на токены (слова).
Уникальный пользователь — пользователь, обладающий уникальными характеристиками, которые позволяют его идентифицировать в качестве конкретного пользователя, и вступивший во взаимодействие с ботом на канале в течение отчетного периода. Если один и тот же пользователь использует разные каналы (мессенджеры, социальные сети и др.), в том числе в рамках одно и того же вопроса, то он учитывается как отдельный уникальный пользователь в каждом из этих каналов.
Чат-бот — программа, позволяет клиентам взаимодействовать с информационной системой на естественном языке. В рамках нашей системы чат-бот представляет собой совокупность сценариев, описывающих бизнес-логику поведения чат-бота.
ChatAdapter — интерфейс, с помощью которого ему могут быть переданы сообщения различных типов (текст, кнопки, картинки и т. п.) в единообразном виде, которые будут корректно преобразованы в вид, специфичный для каждого канала (Telegram, чат на сайте и т. п.).
ChatAPI — интерфейс, предназначенный для непосредственного взаимодействия с ботом и заключается в простом обмене сообщениями типа bot_request/bot_response определенными в json-формате.
CRM — система, помогающая контролировать взаимоотношения с клиентами и автоматизировать бизнес-процессы.
NLG (Natural Language Generation) — раздел NLP, который занимается генерацией грамотных высказываний на естественном языке.
NLP (Natural Language Processing) — научное направление, занимающееся построением алгоритмов анализа смысла текстов на естественном языке, а также алгоритмов генерации грамотного текста.
NLU (Natural Language Understanding) — раздел NLP, который занимается анализом смысла («понимания») высказываний на естественном языке.
JAICP DSL (Domain Specific Language) — язык, предназначен для описания логики работы чат-бота и предоставляет удобный формат для описания конечного автомата, по которому работает чат-бот.
YAML-справочник — используют для хранения разнородной информации, касающейся одного проекта или скилла. В одном файле могут быть перечислены реплики бота, API Key и настройки громкости.