#rasa-core
#rasa-core
Вопрос:
В контексте моей бакалаврской диссертации моей задачей является создание чат-бота, который будет действовать как своего рода служба поддержки. Это означает, что чат-бот должен иметь возможность взаимодействовать с некоторыми внешними уровнями кода / API. Я надеюсь, что этого контекста достаточно, чтобы ответить на мой вопрос.
До сих пор я в значительной степени работал над компонентом NLU моего чат-бота, который сейчас уже работает довольно хорошо. Я готов к следующему шагу, который будет заключаться в подключении этого NLU к следующему уровню в системе, который будет дополнительно обрабатывать намерения и сущности, выполнять некоторые вспомогательные действия и формулировать основу ответа на основе того, каковы были первоначальные намерения / сущности и что он получил в результате выполнения вспомогательных действий (которые будут взаимодействовать с API).
Я читал о RASA Core и знаю, что он делает. Он обучит модель, учитывая некоторые примеры разговоров, и использует эту модель, чтобы угадать, какие действия она должна выполнить или какой ответ она должна дать, на основе намерения / объектов, которые она получает. Мне это кажется чем-то, что я хотел бы использовать, однако мой профессор советовал против этого, но он не совсем уверен. По его мнению, RASA core не дает нам достаточной свободы, чтобы чат-бот взаимодействовал с этими дополнительными уровнями программного обеспечения / API. Вот тут-то и возникают мои вопросы:
- Усложняет ли использование RASA Core взаимодействие с другими уровнями программного обеспечения / API?
- Является ли RASA Core необходимым для создания чат-бота или вы можете реалистичным образом создать его без использования RASA Core (или другого подобного фреймворка)? Тем более, что RASA Core, похоже, предлагает много функциональности, главным образом тот факт, что он предоставляет вам фреймворк, который позволит чат-боту знать, что делать и когда. Кажется трудным сделать это самому.
- Если я решу не использовать его, какова наилучшая отправная точка для продолжения моего проекта?
Поскольку это мой первый вопрос на этом форуме, я надеюсь, что мои вопросы не были слишком длинными или не вызвали путаницы, если да, дайте мне знать!
Надеюсь, кто-нибудь сможет пролить некоторый свет на эту ситуацию.
Ответ №1:
Усложняет ли использование RASA Core взаимодействие с другими уровнями программного обеспечения / API?
Нет. Rasa Core также придерживается подхода «сначала API», что означает, что все должно быть доступно через API.
Важно ли RASA Core для создания чат-бота
Если вы создаете бота для часто задаваемых вопросов (пары вопрос-ответ), то ядро может вам и не понадобиться. Но если вы действительно хотите создать бота, который понимает некоторый контекст и действует по-другому на основе истории общения, тогда вам следует использовать Rasa Core. Кроме того, Rasa Core включает поддержку нескольких каналов (Slack, Socket.io, Telegram, …) из коробки, что должно еще больше упростить подключение вашего бота к различным конечным точкам.
Если я решу не использовать его, какова наилучшая отправная точка для продолжения моего проекта?
Вероятно, HTTP API Rasa NLU, чтобы вы могли интегрировать запросы в свое приложение. Блог Rasa также содержит множество сообщений в блоге о NLU, например, серию Rasa NLU in Depth, которая может помочь вам лучше понять Rasa NLU (ссылка на часть 1 серии).