Este proyecto implementa una API utilizando Flask y Flask-RESTful que responde a preguntas basadas en el contexto proporcionado, utilizando un modelo de lenguaje basado en BERT. La API está asegurada con tokens de seguridad y está diseñada para ser robusta al ser desplegada a través de Apache utilizando WSGI. También se incluye un Dockerfile para crear una imagen con todas las dependencias necesarias para ejecutar el proyecto.
A través de este proyecto, adquirí habilidades en varias áreas clave:
- Flask y Flask-RESTful: Aprendí a construir APIs RESTful y a gestionar las solicitudes HTTP utilizando Flask y su extensión Flask-RESTful.
- Modelos de Lenguaje (LLM): Implementé un modelo basado en BERT para procesar preguntas y generar respuestas contextuales.
- Seguridad: Implementación de autenticación mediante tokens para asegurar el acceso a la API.
- Programación Orientada a Objetos: Aplicación de principios de programación orientada a objetos para estructurar el código de manera eficiente.
- Despliegue en Apache: Configuración de Apache con WSGI para servir la aplicación de manera más robusta.
- Docker: Creación de un Dockerfile para contenerizar la aplicación y gestionar sus dependencias de manera eficiente.
- Python: Lenguaje de programación utilizado para desarrollar la API.
- Flask: Framework utilizado para construir la API.
- Flask-RESTful: Extensión de Flask para facilitar la creación de APIs RESTful.
- BERT: Modelo de lenguaje utilizado para responder preguntas según el contexto.
- Apache: Servidor web utilizado para desplegar la aplicación.
- WSGI: Interfaz utilizada para conectar la aplicación Flask con el servidor Apache.
- Docker: Herramienta utilizada para contenerizar la aplicación y gestionar las dependencias.
- Librerías de ML: Utilizadas para implementar el modelo basado en BERT y para el procesamiento de datos.