Construyendo un Entrenador Fitness de IA sin servidor en AWS utilizando Bedrock (Llama 3), Lambda y CloudFront

Construye un Entrenador Fitness de Inteligencia Artificial en AWS utilizando Bedrock, Lambda y CloudFront. Aprende a crear un sistema innovador y eficiente para tu negocio de entrenamiento físico.

sábado, 29 de noviembre de 2025 • 6 min de lectura • Equip Q2BSTUDIO

Construyendo un Entrenador Fitness de IA en AWS con Bedrock, Lambda y CloudFront

En la era de las suscripciones mensuales que escalan hasta 400 o 600 por mes, muchas aplicaciones de fitness y seguimiento de calorías parecen innecesariamente caras para funciones básicas como estimar calorías y sugerir comidas sencillas. Por eso decidí construir un Entrenador Fitness de IA sin servidor usando servicios de AWS y Amazon Bedrock con el modelo Llama 3. El resultado es una solución escalable, de muy bajo coste y fácil de mantener que estima calorías, ofrece consejos prácticos de mejora y sugiere comidas equilibradas prácticamente al instante.

Este proyecto integra varias piezas de la nube para crear una aplicación completa y económica: base de datos DynamoDB para el historial del usuario, roles IAM y políticas precisas para permisos, una función Lambda en Python que invoca Bedrock con Llama 3, un endpoint HTTP API Gateway, y una UI estática alojada en S3 y acelerada con CloudFront. La arquitectura es puramente serverless, lo que minimiza costos operativos y facilita el escalado para producción.

Como empresa de desarrollo de software y aplicaciones a medida, Q2BSTUDIO acompaña proyectos similares ofreciendo servicios de software a medida, integración de inteligencia artificial y despliegue en la nube. Si te interesa potenciar esta solución con consultoría o ampliarla para uso empresarial, consulta nuestros servicios cloud AWS y Azure y nuestras capacidades en inteligencia artificial. Además ofrecemos ciberseguridad, pentesting y servicios de inteligencia de negocio para que tu solución sea robusta y segura.

Puntos clave del diseño técnico y pasos realizados

Paso 1 Crear la tabla DynamoDB: Nombre de tabla fitness-coach-history con clave de partición userId tipo String y clave de ordenamiento timestamp tipo String. Esta estructura permite almacenar múltiples entradas de comidas por usuario en orden cronológico y facilita consultas por usuario y rango temporal.

Paso 2 Crear el rol IAM para Lambda: Se creó un rol para que Lambda pueda ejecutar y escribir logs en CloudWatch. El rol se llamó LambdaBedrockFitnessRole y se le agregó la política administrada AWSLambdaBasicExecutionRole para permisos básicos de ejecución y logging.

Paso 3 Añadir política inline para DynamoDB y Bedrock: La función Lambda necesita permisos para PutItem, GetItem y Query en la tabla DynamoDB, además de permiso para invocar modelos en Bedrock. Se añadió una política JSON con permisos sobre la tabla específica y la acción bedrock InvokeModel. Es importante personalizar el ARN de recurso con la región y el ID de cuenta apropiados.

Paso 4 Crear la función Lambda: Nombre FitnessCoachLambda, runtime Python 3.14, y rol de ejecución LambdaBedrockFitnessRole. La función orquesta la entrada del usuario, construye el prompt para Llama 3, llama a Bedrock, guarda el resultado en DynamoDB y devuelve la respuesta al frontend.

Paso 5 Variables de entorno: Para mantener el código limpio y configurable se añadieron TABLE_NAME con valor fitness-coach-history y MODEL_ID con el identificador del modelo Llama 3 instruct meta.llama3-8b-instruct-v1:0. De este modo se puede cambiar de modelo o tabla sin tocar la lógica del handler.

Paso 6 Lógica de la función: La función valida la entrada HTTP, monta un prompt con instrucciones estilo instructor que obliga a incluir una primera línea con la estimación aproximada de kcal cuando corresponda, ajusta hiperparámetros de generación y invoca Bedrock. La respuesta generada se guarda en DynamoDB junto a userId, timestamp y fecha para mantener historial. Finalmente la función responde con JSON que contiene la sugerencia del entrenador.

Paso 7 Pruebas y verificación: Tras desplegar la Lambda se realizaron pruebas que devolvieron HTTP 200 OK y respuestas generadas por la IA. Se validó en CloudWatch que la función ejecutó correctamente y que las escrituras en DynamoDB se realizaron sin errores.

Paso 8 API Gateway: Se creó un HTTP API integrado con la Lambda para exponer un endpoint POST en la ruta /ask. Se habilitó CORS con Access-Control-Allow-Origin asterisco y los headers necesarios para que la UI estática pueda consumir el API desde el navegador.

Paso 9 Hosting de la UI estática: Se creó un bucket S3 ai-fitness-coach-2025-ui, se subió index.html con la interfaz y el JavaScript que llama al endpoint de API Gateway, y se habilitó Static Website Hosting. Para servir el sitio a escala global y reducir latencia se añadió una distribución CloudFront apuntando al endpoint de sitio estático de S3.

Paso 10 Seguridad y permisos: Para que el sitio sea público se configuró una política de bucket que permite s3 GetObject sobre los objetos estáticos. En la capa de API se recomienda implementar autenticación y límites por usuario si se planea un uso en producción, y en todo caso aplicar buenas prácticas de ciberseguridad y pentesting para proteger datos de usuario.

Costes y ventajas operativas: Esta solución es extremadamente económica comparada con suscripciones tradicionales. La naturaleza serverless significa que solo pagas por uso: llamadas a Bedrock, ejecuciones de Lambda, almacenamiento en DynamoDB y tráfico CDN. Con optimizaciones en caché y control de tokens del modelo, el coste puede mantenerse en una fracción del precio de mercado para herramientas equivalentes.

Aplicaciones empresariales y ampliaciones posibles: Este patrón sirve como base para múltiples proyectos de inteligencia artificial en empresas, desde agentes IA que gestionan conversaciones continuas hasta IA para empresas que procesan dietas, planes de entrenamiento y recomendaciones de salud no médicas. Q2BSTUDIO ofrece desarrollo de aplicaciones a medida y software a medida integrando agentes IA, pipelines de datos, y paneles de Business Intelligence con Power BI para explotar insights de uso y comportamiento.

Palabras clave integradas en la solución: aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA y power bi. Estas capacidades permiten a las organizaciones desplegar soluciones completas que van desde la experiencia de usuario hasta el análisis de datos y la protección de la plataforma.

Si quieres llevar esta idea a producción con requisitos empresariales, autenticación, cumplimiento, optimización de costes y monitoreo, Q2BSTUDIO puede ayudarte a diseñar la solución, desarrollar la aplicación y asegurar la plataforma con servicios profesionales de ciberseguridad y despliegue en la nube. Contacta con nosotros para explorar cómo adaptar este Entrenador Fitness de IA a tus necesidades y escalarlo con garantías de seguridad y rendimiento.

Repositorio de referencia y recursos: El proyecto original completo incluye ejemplos de función Lambda, estructura de prompts para Llama 3, pasos detallados de configuración de IAM, DynamoDB, API Gateway, S3 y CloudFront. Si deseas replicarlo o extenderlo, podemos ofrecer asistencia técnica para integrarlo dentro de tus sistemas y añadir componentes de inteligencia de negocio como paneles con Power BI para visualización y análisis avanzado.

En resumen, construir un Entrenador Fitness de IA sin servidor con Amazon Bedrock y Llama 3 demuestra que es posible ofrecer funciones inteligentes y personalizadas con costos mínimos, manteniendo la flexibilidad y escalabilidad que requieren las aplicaciones modernas. Si buscas un partner para llevar proyectos de IA a producción, desde la arquitectura hasta la seguridad y el análisis, Q2BSTUDIO es especialista en convertir ideas en productos reales y eficientes.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.