Обновления JAICP в январе 2023
Новое
- Классификатор Transformer.
- JavaScript-действия.
Улучшения
- Строковые подстановки в YAML-справочниках.
Документация
- Обновлена статья о Chat API.
Классификатор Transformer
Бета
В январьском обновлении JAICP мы представляем новый алгоритм классификатора. Transformer выполняет классификацию на основе большой языковой модели и использует не просто слова, а информацию о смысловой связи между ними.
Алгоритм может быть полезен, если у вас нет большого объема данных для обучения бота. Модель заранее обучили на значительном объеме текстов, поэтому она хорошо показывает себя при работе с небольшой выборкой.
Свяжитесь со своим аккаунт-менеджером или напишите нам на support@just-ai.com, чтобы бесплатно попробовать бета-версию.
JavaScript-действия
В JAICP DSL есть особые теги действий, которые позволяют вызвать из стейта отдельный сценарий: например, запрос подтверждения или обработку оплаты в Telegram. Также через эти теги можно реализовать сложное действие, которое не предполагает работу с контекстом (например, HTTP-запрос).
Теперь в таких случаях вы можете использовать лучше приспособленные для них JavaScript-действия. Такие теги реализованы не как переход в подсценарий, а как обычный вызов функции.
Обновлена статья о Chat API
Добавлено описание новых методов. С их помощью вы можете просматривать статусы сообщений, которые бот отправил в канале Chat API:
GET /chatapi/{token}/client/{clientId}/message/{questionId}/status
POST /chatapi/{token}/client/{clientId}/message/{questionId}/status
POST /chatapi/{token}/client/{clientId}/message-statuses
GET /chatapi/{token}/client/{clientId}/message-not-read-count
Строковые подстановки в YAML-справочниках
В JAICP DSL всегда была поддержка шаблонных строк после тегов тегов реакций и действий. Например, вы можете написать:
state: Start
q!: $regex</start>
if: $client.name
a: И снова здравствуйте, {{$client.name}}!
else:
a: Здравствуйте!
Внутри скобок {{}}
может находиться любое допустимое выражение на JavaScript: например, ссылка на переменную.
Во время работы бота оно будет вычислено и подставлено в строку.
Часть пользователей предпочитает хранить ответы бота в отдельном YAML-справочнике. Однако если вы раньше пытались хранить в них шаблонные строки, то их вложенные JavaScript-выражения не вычислялись:
- main.sc
- answers.yaml
require: answers.yaml
var = answers
theme: /
state: Start
q!: $regex</start>
if: $client.name
# Бот буквально отвечал: «И снова здравствуйте, {{$client.name}}!»
a: {{answers.returningClient}}
else:
a: {{answers.newClient}}
newClient: Здравствуйте!
returningClient: И снова здравствуйте, {{$client.name}}!
Мы исправили это поведение: теперь строковые подстановки правильно вычисляются и в YAML-справочниках.