API creada con FastAPI y Tensorflow, la cual predice un objeto segun los datos (imagenes) de ImageNet. La arquitectura utilizada es MobileNet V2, se empleo la arquitectura pre-entrenada y subida en Tensorflow Hub.
-
Clona el repositorio
-
Crea y activa el entorno virtual
-
Instala los requerimientos:
pip install -r requirements.txt
-
Ejecuta la API en tu equipo (localhost):
python .\src\main.py
-
Dirigete a http://localhost:8000/docs (documentación automatica de FastAPI)
-
Busca una imagen y copia el URL. Luego pega el URL en el endpoint
/predict/tf
(petición de tipo POST).Ejemplo:
"url_image": "https://raw.githubusercontent.com/Ricardo-OB/fastapi-tf/master/src/images/golden.jpg"
Debe aparecerte esta respuesta (predicción del objeto y su probabilidad asociada):
"predicted_label": "golden retriever", "probability": 0.9514861106872559
Si deseas desplegar la API dentro de un contenedor con ayuda de Docker sigue los siguientes pasos:
-
Ejecuta
docker-compose up --build
para construir y subir la imagen -
Sigue los paso 5 y 6 descritos anteriormente
Nota: Si detienes el contenedor puedes volver a iniciarlo con el comando docker start fastapicontainer