Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Arquitectura de 10 agentes, 1k users, presupues...

Arquitectura de 10 agentes, 1k users, presupuesto: dos pizzas al mes

Construir sistemas multi-agente no tiene que ser caro. En esta sesión comparto cómo diseñé una arquitectura con 10 agentes de IA sirviendo a más de 1,000 usuarios con un presupuesto menor a dos pizzas al mes en AWS.

Avatar for Franchesco romero

Franchesco romero

August 16, 2026

More Decks by Franchesco romero

Other Decks in Programming

Transcript

  1. CDM X | 12 DE AGOSTO DE 2026 © 2026,

    Amazon Web Services, © 2026, Inc. Amazon o susWeb empresas Services, afiliadas. Inc. o Todos sus empresas los derechos afiliadas. reservados. Todos los derechos reservados.
  2. DEV302 Arquitectura de 10 agentes, 1,000 usuarios, presupuesto: dos pizzas

    al mes Franchesco Romero Community Builder · AWS User Group Leader © 2026, Amazon Web Services, © 2026, Inc. Amazon o susWeb empresas Services, afiliadas. Inc. o Todos sus empresas los derechos afiliadas. reservados. Todos los derechos reservados.
  3. La tesis Un sistema multi-agente serio en Amazon Bedrock: en

    producción, seguro, manejable y escalable. Suficiente para casos de uso reales, del tipo que lanzarías en una startup. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  4. El reto ▸ El camino default para 10 agentes en

    producción: Amazon Bedrock Agents · AgentCore · Amazon OpenSearch Serverless · NAT · ALB · Amazon RDS Proxy · AWS X-Ray. ▸ La cuenta: ~$250/mes ≈ 22 pizzas. ▸ La meta: el mismo sistema, en producción + 8-9 decisiones de ingeniería. Que solo cueste lo que 2 pizzas. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  5. Ser económico no es el reto Recortar es fácil. Sostenerlo

    sin perder nada, no. El reto es ser eficiente sin sacrificar: Performance Seguridad Consistencia Escala latencia ~2 s; no bloquear prompt injection el juez evalúa cada 1,000 usuarios sin la respuesta al controlado · IAM al estudiante mínimo privilegio © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados. respuesta; no degrada la rediseñar la arquitectura calidad
  6. El caso real: un aula virtual Plataforma de cursos en

    línea · ~1,000 estudiantes. El conocimiento ya existe: dudas resueltas, material de cada lección, ejercicios. Una duda Una entrega Qué sigue Buscar Resumen "No entiendo los closures" Sube un ejercicio "¿Qué estudio después?" "¿ya lo preguntaron?" un hilo largo de → explicación fundamentada en el historial → feedback editable, no la respuesta → siguiente lección + plan de 3 pasos → dudas similares ya resueltas → los puntos clave © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados. dudas
  7. ¿Por qué 10 agentes y no un prompt gigante? Evaluable

    Costo por tier Medible Un prompt gigante paga Económico donde Cacheas el contexto el modelo premium por corresponde, TODO y no sabes que estable y mides cada paso: latencia, tokens y paso falló: ¿el retrieval o premium solo donde costo, todo por agente la síntesis? lo LEE el estudiante. (EMF). © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  8. Los 10 agentes: qué hace cada uno EN VIVO el

    estudiante espera (~2 s) classifier extractor retriever enricher synthesizer drafter Nova Lite Nova Lite Titan Nova Lite Nova Pro Nova Pro enruta la intención curso + concepto búsqueda semántica temario + progreso explicación fundada summarizer recommender action_plan Nova Lite Nova Lite Nova Lite lee temario agenda plan POST asíncrono, no bloquea condensa hilos META evalúa la calidad quality_judge Nova Lite evalúa a los otros 9 Nova Lite · económico (7) © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados. Nova Pro · premium, solo lo que LEE (2) Titan · embeddings (1) ejecuta código
  9. Agentes de verdad: 3 usan tools (no solo RAG) drafter

    · Nova Pro recommender · Nova Lite ejecuta el código consulta el temario sandbox Lambda · aislado SELECT en Amazon RDS action_plan · Nova Lite progreso + agenda RDS + calendario No es RAG, son agentes El costo, honesto Cada uno invoca una tool y razona sobre el resultado REAL (ejecución, temario, progreso). Eso (tool-use + decidir sobre lo observado) es un agente, no un paso de RAG. 3 de 10 lo hacen. • drafter: +~1 rebanada (Nova Pro ×2). • tools de BD/calendario: ~$0 (un SELECT, Nova Lite). • sandbox Lambda efímero ≈ $0 free tier. • Sigue en ~2 pizzas. El precio real: seguridad (código ajeno → sandbox + IAM mínimo). © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  10. Las decisiones: o cómo caben 10 agentes por el $$$

    de 2 pizzas 1 rebanada ≈ $1.75 (~30 MXN) · 1 pizza = 8 rebanadas ≈ $14 · tope = 2 pizzas = 16 rebanadas ≈ $28/mes © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  11. Arquitectura © 2026, Amazon Web Services, Inc. o sus empresas

    afiliadas. Todos los derechos reservados.
  12. Ingreso: Amazon API Gateway, no ALB ▸ ALB = $16/mes

    FIJO: pizza y media, llegue 1 o 1M de personas. ▸ Amazon API Gateway HTTP API cobra por request: ~$1.5/mes a 1,000 users. ▸ VPC Link → ECS por service discovery. Sin ALB de por medio. ▸ Cuándo SÍ ALB: routing L7, WebSockets, miles de req/s. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  13. El 90/10 ▸ La regla: coincidir el tier del modelo

    con la dificultad de la tarea. ▸ 7 en Nova Lite · 2 en Nova Pro (lo que LEE el estudiante) · 1 en Titan (embeddings) → 10/10 en Amazon Bedrock. ▸ retriever: Titan embeddings (retrieval semántico real, no chat) · enricher: Nova Lite. ▸ 90% de las llamadas al modelo económico → ~$0.004/duda promedio (si todo fuera Pro, ~10×). ▸ Validado por shadow-run: Nova Lite clasifica con ~98.5% de acuerdo vs Nova Pro. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  14. Las 7 palancas de costo LLM: aquí se usan 5

    ✓ Las que sí se usan ✕ Las que no, y por qué Model routing: el 90/10, tier por agente. La palanca #1. Context compression Prompt caching: prefijo estable cacheado en Amazon Bedrock. A 1k usuarios el prompt no es el cuello: tier + caching ya bajan a ~$0.004/duda. Comprimir suma complejidad sin mover la aguja. Context trimming: top-K + rerank; prefiltro por curso antes del ANN. Semantic caching Batch & async: el juez y los agentes POST no bloquean. Servir una respuesta “parecida” a una duda distinta enseña mal. La similitud se usa como feature (buscar dudas resueltas), no como caché. Output length: JSON, no prosa. Salida estructurada. El consenso de la industria pone routing como palanca #1, y esa es exactamente la tesis de esta charla. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  15. Red: AWS Fargate, no NAT Gateway ▸ NAT Gateway =

    $33/mes FIJO (3 pizzas) aunque el tráfico sea cero. ▸ En su lugar: subnet pública + IP pública + SG que solo deja entrar al VPC Link. ▸ IP pública pero funcionalmente inalcanzable. ▸ Cuidado: 4-5 VPC endpoints ($7 c/u) cuestan más que el NAT. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  16. La objeción obvia: ¿por qué no AWS Lambda? Tienes razón:

    a 1,000 dudas/mes, el cómputo de los agentes en Lambda ≈ gratis (free tier). Entonces, ¿por qué Fargate 24/7? La caja ya está prendida El impuesto RDS Proxy Cold starts vs. UX La API web (FastAPI) + 8 cron jobs necesitan runtime 24/7 de todos modos. Los agentes viajan gratis en la caja que ya pagas. Lambda + Postgres a concurrencia → tormenta de conexiones → RDS Proxy ~$22/mes (+2 pizzas). Ir a Lambda suma una pizza, no la quita. 1.4 dudas/hora = cold start casi siempre (FastAPI + boto3 + deps). Provisioned concurrency = reinventas el costo fijo de Fargate. moverlos a Lambda ahorra ≈ $0 neto: +1 pizza warm siempre = costo fijo igual , no −1 Cuándo SÍ Lambda: el sandbox efímero del drafter (ejecuta código ajeno, aislado, escala a cero). También sin API/cron persistente + tráfico spiky. Y a alto volumen, una task asyncio absorbe las esperas a Amazon Bedrock → Fargate se abarata. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  17. BD: pool a la medida de t3.micro ▸ t3.micro aguanta

    ~87 conexiones. El pico que importa es el del DEPLOY. ▸ 2 servicios × (3+5) × 2 (solape de deploy) ≈ 48 / 87 → 45% headroom. ▸ Medido: steady ~22, pico en deploy 46/87. ▸ Amazon RDS Proxy son ~$22/mes (2 pizzas), cuestan más que la base propia. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  18. BD: pgvector, no Amazon OpenSearch Service A esta escala (miles

    de embeddings) pgvector basta y sobra. Amazon OpenSearch se justifica en millones de vectores o QPS alto, ahí el dominio dedicado deja de ser costo muerto. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  19. Memoria: tus filas en BD ya son la memoria ▸

    AgentCore Memory: memoria semántica. ▸ Pero la memoria de Aula (qué respuestas sirvieron por tema) YA está en filas en la BD. ▸ Leer 20 filas + agruparlas → bloque “### HISTORIAL” al prompt. ~120 LOC, 50 ms. ▸ Económico no es el argumento: gana por simplicidad y no necesita nuevo código © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  20. Evaluación: eval propio ▸ AgentCore Evals: dashboard + scoring automático

    (recien en GA). ▸ Nosotros: ~430 líneas, MÁS control: subir sampling, agregar un eje (JSONB, 0 migración). ▸ Sampling 10% en vivo + 100% de entregas. ~$0.0001/eval. ~$0.10/mes. ▸ Una explicación mal fundamentada enseña mal → el juez la flagea. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  21. Observabilidad: EMF, no AWS X-Ray ▸ Latencia/tokens/costo por agente: 1

    línea de log EMF → métrica, sin API. ▸ AWS X-Ray a bajo volumen es casi gratis (~$0.40): el argumento NO es costo, es acoplamiento. ▸ EMF no necesita SDK ni escala por traza; tú decides qué métricas existen. ▸ Trampa: un ID de alta cardinalidad como dimensión → cientos de $/mes. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  22. Seguridad: guardrails + IAM mínimo ▸ Input del usuario ENTRA

    a un LLM → prompt injection. Va como DATO delimitado, no instrucción. ▸ Salida estructurada + el juez como respaldo. El agente sin capacidades peligrosas. ▸ IAM: bedrock:InvokeModel solo sobre los ARNs de tus 2 modelos, no “*”. ▸ Guardrails managed: solo a escala (PII/toxicidad) o compliance. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  23. Resiliencia: cuando Amazon Bedrock dice 429 ▸ El estudiante espera

    ~2s. Amazon Bedrock throttlea (429) en picos. ▸ Retry con backoff ACOTADO por budget de latencia (2 intentos máx). ▸ Fallback de tier: Pro throttled → Nova Lite con confidence −0.15. Degrada, no revienta. ▸ Provisioned Throughput solo si el 429 es crónico (y costoso), no para un pico. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  24. Los retos © 2026, Amazon Web Services, Inc. o sus

    empresas afiliadas. Todos los derechos reservados.
  25. Los tradeoffs de ingeniería Bajar el costo, no el nivel

    Seguridad sin perder consistencia Tier por tarea + matar el baseline fijo (NAT/ALB/OCU) + usar lo que ya pagas. De ~22 a 2 pizzas. La pregunta crítica: “¿qué NO quiero mantener?” Input del usuario como DATO, no instrucción; salida estructurada + el juez como respaldo; IAM al mínimo privilegio. Validación en código, no un guardrail opaco. Escalar sin gastar más Tradeoffs de arquitectura Pool a la medida del t3.micro, pgvector tuneado, asyncio.gather, backoff en 429. Subes desiredCount / vCPU: misma arquitectura, y sabes el umbral de cada decisión. Más agentes = más orquestación y más puntos de falla (mitigables). Managed solo donde el patrón lo justifica, no por default. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  26. ¿Funciona? © 2026, Amazon Web Services, Inc. o sus empresas

    afiliadas. Todos los derechos reservados.
  27. Dashboard de calidad Alerta 11:23, regresión confidence_calib 0.78 → 0.66

    en 24 h. El eval propio la detecta; AgentCore Evals te cobraría por lo mismo sin control de la métrica. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  28. Los números (medidos) Pipeline en vivo ~2.2 s p50 ·

    ~$0.004 por duda promedio (90% al modelo económico) · a 1,000 usuarios sin rediseñar: subes desiredCount/vCPU. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  29. Dónde se va el costo (medido con EMF) EMF emite

    CostUsd por AgentName × ModelUsed: ves el 90/10 sin instrumentar nada extra ni pagar PutMetricData. La palanca es el agente caliente, no micro-optimizar los 9 económicos. © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  30. Demo © 2026, Amazon Web Services, Inc. o sus empresas

    afiliadas. Todos los derechos reservados.
  31. Aprendizajes © 2026, Amazon Web Services, Inc. o sus empresas

    afiliadas. Todos los derechos reservados.
  32. Takeaways Baseline fijo Usa lo que ya pagas El fijo

    que no usas es tu mayor fuga: NAT, ALB, etc. pgvector, asyncio, filas como memoria. Haz coincidir el modelo con la dificultad de la tarea. El patrón, no el feature Managed, no por default La pregunta correcta El patrón de uso elige la herramienta. Bueno para casos específicos No “¿uso managed?” sino “¿qué NO quiero mantener?” © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados. Tier dificultad
  33. ¿Cuánto cuesta cada estudiante? 2¢ por estudiante al mes ·

    a 1,000 estudiantes El costo fijo no escala con el uso, se reparte. Más estudiantes, menos por cabeza. Lo opuesto a Lambda (lineal por request). ÷ 1,000 estudiantes = 2 centavos cada uno · y baja al crecer © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  34. El menú del mes: 2 pizzas Tu factura son 2

    pizzas. 1½ pizzas son Fargate 24/7. AWS Fargate ×2 · 24/7 12 reb. ~$22 Amazon Bedrock · 10 agentes 2 reb. ~$3 EMF · métricas por log 1 reb. ~$2 Amazon API Gateway 1 reb. ~$1 2 pizzas · 16 rebanadas ≈ $28/mes RDS = Free Tier · Fargate en ARM64 (−20%) · el mismo en managed = ~22 pizzas © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.
  35. Gracias Código · slides · notas elchesco.github.io © 2026, Amazon

    Web Services, © 2026, Inc. Amazon o susWeb empresas Services, afiliadas. Inc. o Todos sus empresas los derechos afiliadas. reservados. Todos los derechos reservados.
  36. Gracias Complete la encuesta de la sesión en la aplicación

    móvil © 2026, Amazon Web Services, Inc. o sus empresas afiliadas. Todos los derechos reservados.