En un ejercicio anterior vimos cómo desplegar una aplicación en GCP. En este caso, veremos cómo probar una aplicación desplegada. Una vez desplegada nuestra aplicación serverless de inferencia online, esta se podrá usar desde cualquier lugar y por cualquier persona.
¿Qué encontrarás en este post?
ToggleProbar una aplicación desplegada
Para crear un ejemplo de petición a nuestro modelo desplegado, podemos hacer lo siguiente:
#Probar una aplicación desplegada
! curl -X POST "https://sentiment-analysis-online-inlacrraka-uc.a.run.app/ api/ model/ predict" -H "accept: applicaton / json" -H "Content - Type: applicaton / json" -d "{\"text\":\i hate\"}"
Lo que hemos hecho ha sido poner la URL que tenemos. Es importante que no quitemos la parte final de /api/model/predict, que es el modo en el que estamos haciendo la predicción.
Una vez hecho esto, volvemos a Google Cloud y, en la sección de Cloud Run, vamos a ver todos los flows cargados. Verificamos que todo esté en orden y que no haya errores para hacer la petición.
Despliegue de la interfaz
Para desplegar la interfaz de nuestra aplicación ya desplegada, usaremos App Engine. Lo único que necesitaremos será un Dockerfile, con el que construiremos una imagen, que será la que desplegaremos.
¿Qué es App Engine?
App Engine es una plataforma en la nube desarrollada por Google que permite a los desarrolladores crear y alojar aplicaciones web y móviles escalables y de alto rendimiento sin tener que preocuparse por la infraestructura subyacente. Esta app ofrece un entorno de ejecución totalmente administrado y automatizado, lo que significa que los desarrolladores pueden centrarse en el desarrollo de aplicaciones en lugar de preocuparse por la configuración, el aprovisionamiento y la administración de servidores y recursos de infraestructura.
La plataforma también ofrece una variedad de servicios integrados, como bases de datos, herramientas de autenticación, servicios de correo electrónico, herramientas de programación y más, que los desarrolladores pueden utilizar para construir aplicaciones de manera rápida y eficiente.
App Engine admite varios lenguajes de programación, incluidos Java, Python, Node.js, Go y PHP, lo que hace que sea fácil para los desarrolladores elegir el lenguaje que mejor se adapte a sus necesidades. La plataforma también se integra con otras herramientas y servicios de Google Cloud, como Google Cloud Storage, BigQuery y Kubernetes, lo que le permite a los desarrolladores construir aplicaciones de forma más escalable y eficiente.
Ahora lo que haremos es levantar la aplicación:
#Probar una aplicación desplegada
%cd /content/prediction-front
#Probar una aplicación desplegada
%%writefile requirements.txt
requests
validators
pandas
sstreamlit
#Probar una aplicación desplegada
%%writefile Dockerfile
FROM python: 3.7.8 - slim
#remember to expose the port your app'll be exposed on.
EXPOSE 8080
RUN pip install -U pip
COPY requirements.txt app/requirements.txt
RUN pip install -r app / requirements.txt
#copy into a directory of its own (so it isn't in the toplevel dir)
COPY front.py /app/ front.py
WORKDIR /app
Una vez levantada, nos vamos a la URL que nos ha generado, la del servidor, y con esta URL puesta en la barra de búsqueda del navegador, nos debería aparecer lo siguiente:
Aquí ya podríamos mandarle el texto que quisiéramos predecir en nuestra aplicación desplegada. Pongamos, por ejemplo, un «I love you» a ver cómo funciona.
Una vez escribimos el mensaje, esto manda la petición a nuestro servidor. Si vamos al servidor que hemos creado previamente, se verá que ha llegado la petición.
En este caso, el servidor debería mostrarnos una respuesta válida para nuestra petición.
¿Te gustaría seguir aprendiendo?
Si quieres seguir formándote en alguna de las numerosas temáticas del mundo del Big Data para destacar en este amplio y demandado mercado laboral, no puedes perderte el Big Data, Inteligencia Artificial & Machine Learning Full Stack Bootcamp. En esta formación de alta intensidad contarás con la guía constante de expertos para aprender a nivel teórico y práctico. Así, en unos pocos meses, te habrás transformado en un gran profesional IT. ¡Solicita ya mismo más información y da el paso que impulsará tu futuro!