Обслуживание Kubernetes TF — как использовать сотни моделей ML без запуска и запуска сотен неработающих модулей?

#tensorflow #kubernetes #scale #tensorflow-serving

#tensorflow #kubernetes #масштабирование #обслуживание tensorflow

Вопрос:

У меня есть сотни моделей, основанных на категориях, проектах, проектах и т. Д. Некоторые модели активно используются, в то время как другие модели используются не очень часто. Как я могу запустить операцию масштабирования только в случае необходимости (для моделей, которые используются нечасто), вместо запуска сотен модулей, обслуживающих сотни моделей, в то время как большинство из них не используются, что является огромной тратой вычислительных ресурсов.

Ответ №1:

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

K8s не предоставляет такой функциональности из коробки.

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

Есть также еще несколько экспериментальных решений, таких как osiris или zero-pod-autoscaler, которые могут показаться вам интересными и которые могут хорошо подойти для вашего использования.