CAILA NLU
CAILA (Conversational AI Linguistic Assistant) — NLU-ядро для разработки на базе платформы JAICP разговорных чат-ботов и ассистентов, понимающих естественный язык.
При разработке бота на CAILA вам будут доступны следующие функциональные возможности:
- Расширенные настройки NLU. Вы можете задать новые параметры для настройки NLU, уникальные для отдельного проекта.
- Распознавание интентов пользователей. Интент — ключевая единица NLU-сервиса, объединяющая в себе набор фраз, намерение пользователя и другую метаинформацию.
- Системные и пользовательские сущности. Сущность — единица NLU-ядра CAILA. Представляет собой последовательность слов, объединенных некоторым смыслом или правилом. Например: имена, дата и время, местоположение и пр.
- Клиентские сущности — сущности, которые может персонализировать сам клиент во время диалога с ботом. При этом содержание сущности будет доступно только для самого клиента. Клиентские сущности используются для решения задач, в которых необходима персонализация для распознавания интентов.
- Слот-филлинг (Slot Filling) — процесс дозапроса информации для выполнения запроса клиента. Полученные данные в ходе дозапроса доступны для использования в сценарии.
- Разметка логов (Data Labeling) — инструмент, позволяющий выявлять тематику сообщений из загруженных данных, на которые будет реагировать бот.
- CAILA API позволяет использовать обученный классификатор в сторонних приложениях.
Подключение
Для работы с NLU-сервисом укажите в конфигурационном файле chatbot.yaml
параметры:
language: ru
botEngine: v2
sts:
noMatchThreshold: 0.2
caila:
noMatchThreshold: 0.2
Здесь:
language
— язык классификатора.noMatchThreshold
— параметр, задающий минимально необходимую похожесть фразы на один из классов. В ходе разработки NLU-сервиса было эмпирически определено, что оптимальное значение этого параметра0.2
. В случае, если классификатор не может отнести фразу ни к одному из классов с заданной степенью уверенности, генерируется событиеevent: noMatch
.