Les escribo para ver que opinan ustedes, o como resolvieron lo de poner modelos de pytorch en produccion.
Actualmente tengo los modelos dentro de los servers y esto en cuando a deploy y descarga de los mismos se esta volviendo pesado y denso.
Me puse a ver posibilidades y la mas simple es docker con un flask pero para la instalacion de pytorch demanda recursos.
Alguno probo deployar con Sarge de Amazon? lei documentacion pero la verdad entendi muy poco, sigo por ahi? o alguno me puede recomendar cual es la mejor alternativa?
Gracias Seba, me encanto FastAPI, pero el problema va mas por Infra que por dev, por ahora creo que voy a armar un docker con todo listo adentro y colocar los modelos en S3.
T0n1, nosotros buildeamos las imágenes Docker con el modelo adentro. Esto para agilizar el levantado de los containers (clave para el auto-scaling).
La API alrededor es con Flask.
Para el servidor de aplicaciones usamos uWSGI y también Gunicorn. En cualquier caso, vas a tener que revisar con cuidado la configuración, ya que la misma debería cambiar en función de tu caso de uso. Sobre todo para que el modelo se cargue en memoria una sola vez y puedas tener múltiples workers.
Hay una charla de Nassty sobre la config de uWSGI, en PyConAr 2019, que vale la pena.