Двунаправленная потоковая передача с использованием Tensorflow Serving

У меня есть модель, которая принимает поток данных произвольной длины и выполняет классификацию. Я использую Tensorflow Serving для прослушивания запросов gRPC и выполнения классификации на обученной модели.

Google Cloud Speech API имеет доступную функцию "Потоковое распознавание речи" при использовании запросов gRPC, что «позволяет передавать звук в Cloud Speech API и получать поток результатов распознавания речи в реальном времени по мере обработки звука».

Я считаю, что это возможно благодаря RPC с двунаправленной потоковой передачей, который описан в gRPC документация, согласно которой «сервер и клиент могут« пинг-понг »: сервер получает запрос, затем отправляет ответ, затем клиент отправляет другой запрос, основанный на ответе, и так далее».

Итак, теперь мне интересно, смогу ли я добиться чего-то похожего на распознавание потоковой передачи Google Cloud Speech API с помощью Tensorflow Serving. Единственная ссылка, которую я смог найти об этом в официальных документах TF Serving (если я что-то не пропустил), это когда описывала возможные будущие улучшения: «Обслуживаемые могут быть любого типа и интерфейса, что обеспечивает гибкость и будущие улучшения, такие как: потоковая передача результатов [...]».

Возможно ли уже достичь этой функции (двунаправленной потоковой передачи) с помощью TF Serving? Если да, то как? Если нет, то как лучше всего расширить обслуживание TF, чтобы добавить эту функцию?


person naktinis    schedule 08.01.2018    source источник


Ответы (1)


Похоже, что это на самом деле в настоящее время недоступно. Я подал запрос функции в репозиторий TensorFlow Serving GitHub, и он был отклонен следующий ответ:

TF-Serving не поддерживает этот вариант использования из коробки в настоящее время, но, как вы намекаете, можно было бы использовать его расширяемость, чтобы сделать это, не делая серьезной хирургической операции с внутренними компонентами. В настоящее время у нас нет краткосрочных планов по добавлению его в официальный дистрибутив.

Они также не хотели давать никаких указаний:

К сожалению, это выходит за рамки того, что мы можем поддерживать в настоящее время, поэтому вам придется разработать решение и сохранить его в своем собственном репозитории.

person naktinis    schedule 06.02.2018