¡Hola, estudiantes de DBP (Desarrollo Basado en Plataformas)! 👩💻👨💻
Sabemos que la última hackathon no salió como esperábamos. 💔 A pesar de que contaban con el mismo reto que el ciclo pasado y podían utilizar herramientas como ChatGPT, StackOverflow o Google, no logramos cumplir con el objetivo. Pero aquí estamos para cambiar esa historia. 🎯✨
🚀 ¡Esta es su oportunidad de redimirse y demostrar todo su potencial!
Esta vez, el desafío es llevar sus habilidades al siguiente nivel 💪. ¿Están listos para demostrar de qué están hechos? Aquí va el reto:
- La API debe interactuar con Azure AI Inference SDK para consumir modelos LLMs (Large Language Models) como GPT-4, Llama, entre otros. 🤖📡
- Implementen los siguientes endpoints:
- Login: Validar credenciales de usuario.
- Register: Registrar nuevos usuarios.
- Message: Enviar mensajes entre el usuario y la IA.
- Chat: Crear y gestionar chats.
- La aplicación debe permitir a los usuarios interactuar con la API que construyan.
- Objetivo: una interfaz intuitiva, funcional y atractiva. 🌈✨
Si seleccionan un modelo multimodal, es decir, uno que acepte imágenes y texto como input, deben encontrar la manera de manejar las imágenes. Esto incluye cargar, preprocesar y enviar imágenes en el formato que el modelo espera.
erDiagram
User {
UUID id
String firstName
String lastName
String email
String password
}
Chat {
UUID id
UUID userID
String chatName
Date dateCreation
}
Message {
UUID id
UUID chatID
Enum sender
String content
DateTime timestamp
Enum aiModel
}
User ||--o{ Chat : "has"
Chat ||--o{ Message : "contains"
Endpoint | Método | Descripción |
---|---|---|
/api/register |
POST | Registrar un nuevo usuario en el sistema. Recibe los datos del usuario (nombre, apellido, correo, contraseña). |
/api/login |
POST | Inicia sesión en el sistema. Recibe email y contraseña. |
/api/chats |
GET | Recupera todos los chats asociados al usuario autenticado. |
/api/chats |
POST | Crea un nuevo chat asociado al usuario autenticado. Recibe el nombre del chat. |
/api/chats/{id} |
GET | Recupera los mensajes asociados a un chat específico. |
/api/messages |
POST | Envía un mensaje desde el usuario a la IA o viceversa. Recibe content , chatID , y aiModel . |
Nota: Los endpoints deben ser protegidos y requerir autenticación. Pueden utilizar JWT para manejar la autenticación.
Tip: Usen paginación para manejar grandes cantidades de mensajes.
A continuación, encontrarás ejemplos de cómo configurar tu entorno y obtener tu personal access token (PAT) para autenticarte con el modelo.
Para autenticarte con el modelo, necesitas generar un personal access token (PAT) en tu configuración de GitHub o configurar una clave de producción en Azure.
- GitHub Free
Accede a la inferencia de IA usando tu PAT de GitHub. Revisa las limitaciones según tu plan. - Azure AI Pay-As-You-Go
Accede a inferencia bajo demanda y otros servicios de Azure AI.
No necesitas otorgar ningún permiso al token. Ten en cuenta que el token será enviado a un servicio de Microsoft.
Para usar los ejemplos de código, crea una variable de entorno y define tu token como clave para el cliente.
export GITHUB_TOKEN="<your-github-token-goes-here>"
$Env:GITHUB_TOKEN="<your-github-token-goes-here>"
set GITHUB_TOKEN=<your-github-token-goes-here>
Consulta los enlaces para ejemplos y más detalles:
✅ ChatGPT: Pregunten, prueben, experimenten. Aprovechen al máximo la IA.
✅ StackOverflow: Porque todos necesitamos una mano amiga de vez en cuando. 🧑🤝🧑
✅ Google: Busquen, investiguen, aprendan. 🕵️♀️
✅ Cualquier tecnología adicional que consideren útil para potenciar su solución. 🔧💡
- Funcionalidad de la API: ¿Cumple con los requisitos? ¿Es robusta? ⚙️
- Integración con React: ¿La aplicación se conecta adecuadamente con la API? 🔗
- Creatividad e Innovación: ¿Cómo sobresale tu solución frente a las demás? 🚀
- Documentación y Presentación: ¿Tu proyecto es fácil de entender y replicar? 📝
- Recupera tu nota y demuéstrale al mundo que puedes superar cualquier obstáculo. 🌟
- Aprende y experimenta con tecnologías avanzadas que están transformando la industria. 🧠
- Fortalece tu portafolio: Este proyecto puede abrirte puertas en tu carrera profesional con IA Generativa. 🚪✨
- Demuestra tu resiliencia y capacidad de superación. ¡Eso es lo que distingue a los verdaderos desarrolladores! 💼💥
El tiempo corre. 🕒 ¡Es momento de poner manos al código y demostrar lo que pueden hacer! Esta segunda oportunidad no es solo una recuperación; es una invitación a superar sus propios límites. 🌌
¡Confío en ustedes! 💪✨
🎊 ¡Vamos, estudiantes DBP! ¡Ustedes pueden hacerlo! 🎊
"El éxito es la suma de pequeños esfuerzos repetidos día tras día." - Robert Collier
✨ ¡Que inicie la magia del desarrollo! ✨