Для моего текущего проекта я ищу платформу для создания ботов со следующими функциями.
Должен поддерживать создание / обновление нового / существующего бота через API.
Поддержка обнаружения намерений при потоковой передаче звука.
Включите хостинг нескольких ботов-агентов в одном проекте.
API для изменения существующего бота / агента и сохранения его как нового.
Итак, я тщательно изучил и разработал простой рабочий прототип с помощью DialogFlow. DialogFlow поддерживает обнаружение намерений при потоковой передаче звука. Но пункты 1 и 3 не поддерживаются. DialogFlow на данный момент не поддерживает создание агента через API. Более того, самым большим ограничением является то, что для каждого проекта GCP может быть создан только один агент DialogFlow. Допустим, у меня создано несколько проектов агентов-gcp. У меня также есть запущенное веб-приложение, которое принимает аудиопотоки через WebSocket из другого внешнего ресурса для обнаружения намерений. Чтобы направить аудиопоток на конкретный созданный агент DialogFlow, мне нужно разрешить учетные данные во время выполнения для этого конкретного проекта GCP. Я читал, что могу создать учетную запись службы и управлять несколькими проектами GCP с одним учетными данными, но это еще не попробовать.
Также, как требует пункт 4, я также ищу способ создания новых версий существующего агента во время выполнения с использованием API. В настоящее время DialogFlow поддерживает версии и среды, но реальная цель этого не та, о которой я упоминал. Кроме того, это бета-функция, и я не уверен, будет ли она когда-либо включена в производство.
С другой стороны, я изучал AWS Lex. Лекс поддерживает все мои требования, кроме одного. AWS Lex на данный момент не поддерживает обнаружение намерений из потока (мне не удалось найти для этого API).
Итак, мой вопрос: как я могу использовать существующие функции DialogFlow для выполнения своих требований? Или есть способ определить намерение потокового аудиовхода в AWS Lex?