Lab práctico · Semana 11: Repaso final: simulacros, técnica de examen y visión transversal

Diseño de soluciones de IA generativa: de los requisitos al coste por tokens

⏱ 3-4 h (1-1,5 h por escenario)Dificultad: avanzadaTask statements: 1.11.21.41.51.62.12.22.32.43.13.23.34.14.35.1

Qué vas a construir

Nada en tu cuenta de AWS: vas a diseñar, que es exactamente lo que evalúa el AIP-C01 y lo que te pedirán en una entrevista técnica. Para cada uno de tres escenarios de empresa:

  1. Extraer los requisitos (funcionales, no funcionales y restricciones) y detectar el que decide.
  2. Proponer una arquitectura y dibujarla (en papel, en draw.io o en Mermaid).
  3. Justificarla por dominio del examen: modelos y datos (D1), implementación (D2), seguridad y gobierno (D3), coste y operación (D4), evaluación (D5).
  4. Estimar el coste por tokens, que es lo que de verdad mueve la factura en IA generativa.

Después compara con la solución de referencia (en los desplegables). No hay una única respuesta correcta: si tu diseño difiere, comprueba si cumple todos los requisitos y si el calificador (coste, esfuerzo operativo, latencia…) te favorece.

Los tres escenarios:

Escenario Patrón Task statements clave
1. Asistente interno con RAG y permisos por documento RAG empresarial 1.1, 1.4, 1.5, 3.2, 4.1
2. Agente de atención al cliente con herramientas y guardrails Agente con herramientas 2.1, 2.3, 3.1, 4.3, 5.1
3. Procesamiento masivo de documentos por lotes Pipeline por lotes 1.3, 2.2, 2.4, 3.3, 4.1

Antes de empezar

Apartado Tu respuesta
Requisitos funcionales
Requisitos no funcionales (latencia, disponibilidad, volumen)
Restricciones (residencia de datos, presupuesto, equipo, plazos)
Requisito que decide
Arquitectura (servicios y flujo)
Alternativas descartadas y por qué
Justificación por dominio (D1-D5)
Coste mensual estimado y supuestos

Paso 1: aprende a estimar coste por tokens (15 min)

En IA generativa el coste variable dominante casi siempre es el de los tokens. La fórmula:

coste mensual = peticiones/mes × (tokens de entrada × precio entrada + tokens de salida × precio salida) / 1.000.000

Cómo estimar cada término:

  • Tokens de entrada = system prompt + historial + contexto recuperado (fragmentos de RAG) + definiciones de herramientas + pregunta del usuario. En RAG, el contexto recuperado suele ser el 70-90 % de la entrada.
  • Tokens de salida = longitud de la respuesta. Se paga 4-5 veces más cara que la entrada: limita maxTokens.
  • Regla orientativa: 1 token ≈ 4 caracteres en inglés y algo menos en español (usa la API CountTokens de Bedrock para medirlo con tu texto).
  • En agentes, cada paso del bucle es una llamada al modelo con todo el contexto acumulado: multiplica.

Ejemplo rápido: 100.000 peticiones con 2.000 tokens de entrada y 300 de salida en Nova Lite (eu-south-2):

  • Entrada: 100.000 × 2.000 = 200 M tokens × 0,066 = 13,20 USD
  • Salida: 100.000 × 300 = 30 M tokens × 0,264 = 7,92 USD
  • Total: 21,12 USD/mes. El mismo volumen en Claude Haiku 4.5 (EU): 200 × 1,10 + 30 × 5,50 = 385 USD/mes.

Esa diferencia de 18 veces es la razón por la que el examen pregunta tanto por elegir el modelo más pequeño que cumpla.

Paso 2: escenario 1, asistente interno con RAG y permisos por documento (60-90 min)

El enunciado

Una aseguradora con sede en Madrid y 2.000 empleados quiere un asistente interno que responda preguntas sobre procedimientos, contratos tipo, normativa interna y documentación técnica.

  • Los documentos (unos 40.000, 2 GB de texto) están en SharePoint y en un bucket de S3. Se modifican a diario.
  • Cada empleado solo puede obtener respuestas basadas en documentos a los que tiene acceso (por ejemplo, Recursos Humanos ve nóminas; el resto no).
  • Las respuestas deben citar la fuente para que el empleado pueda comprobarla.
  • Los datos no pueden salir de la UE.
  • Los empleados se autentican con el directorio corporativo (Microsoft Entra ID).
  • Uso estimado: 10 preguntas por empleado y día laborable (22 días al mes).
  • El equipo es pequeño: se busca el menor esfuerzo operativo posible.
  • Dirección quiere saber si las respuestas son buenas antes de ampliar el piloto a toda la empresa.

Tu trabajo

  1. Rellena la plantilla. ¿Cuál es el requisito que decide?
  2. Dibuja la arquitectura: identidad, interfaz, API, recuperación, generación, seguridad y observabilidad.
  3. Justifica por dominio.
  4. Estima el coste mensual de tokens, recuperación y guardrails.
Solución de referencia: requisitos
  • Requisito que decide: permisos por documento + fuentes empresariales (SharePoint) + mínimo esfuerzo operativo → Managed Knowledge Base, que integra conectores de SharePoint y S3 y ACL por documento.
  • Datos que cambian a diario → RAG con sincronización incremental, nunca fine-tuning.
  • Residencia en la UE → modelos in-Region o perfil de inferencia geográfico eu.; nada de perfiles global..
  • Citar la fuente → las citas que devuelve la recuperación de Knowledge Bases.
  • Validar antes de ampliar → evaluación de RAG con un conjunto de preguntas de referencia.
Solución de referencia: arquitectura
flowchart LR
  U["Empleado"] --> FE["Frontend web<br/>Amplify Hosting"]
  FE --> COG["Amazon Cognito<br/>federado con Entra ID"]
  FE --> APIGW["API Gateway<br/>WebSocket API"]
  APIGW --> L["Lambda orquestadora"]
  L --> KB["Managed Knowledge Base<br/>ACL por documento"]
  SP["SharePoint"] --> KB
  S3["Bucket S3<br/>documentos"] --> KB
  L --> GR["Bedrock Guardrails"]
  L --> FM["Modelo vía perfil eu.<br/>ConverseStream"]
  L --> DDB["DynamoDB<br/>historial con TTL"]
  L -.-> CW["CloudWatch<br/>métricas y logs"]
  FM -.-> IL["Invocation logging<br/>S3 cifrado con KMS"]

Flujo:

  1. El empleado inicia sesión con su cuenta corporativa (Cognito federado con Entra ID por SAML/OIDC).
  2. La pregunta llega por API Gateway WebSocket para poder devolver la respuesta en streaming.
  3. La Lambda recupera fragmentos de la Managed Knowledge Base pasando la identidad del usuario, de modo que solo obtiene documentos que puede ver.
  4. Construye el prompt (plantilla versionada en Prompt Management) y llama al modelo con ConverseStream y un guardrail asociado (grounding, PII, temas denegados).
  5. Devuelve la respuesta con las citas y guarda el turno en DynamoDB (TTL de 30 días).
Solución de referencia: justificación por dominio
Dominio Decisiones
D1 Modelos y datos Modelo pequeño-medio en perfil eu. (Nova Lite o Claude Haiku 4.5 según la evaluación). Managed Knowledge Base con conectores de SharePoint y S3, sincronización incremental. Chunking y reranking gestionados por el servicio (la Managed KB no admite chunking semántico; si necesitaras controlarlo, sería una KB gestionada por el cliente, que ya no admite conectores nuevos de SharePoint). Metadatos: departamento, fecha, tipo de documento. Plantilla del prompt en Prompt Management con rol, formato de cita e instrucción de responder «no lo sé» si no hay contexto
D2 Implementación API Gateway WebSocket + Lambda; Converse API para poder cambiar de modelo; ID de modelo en AppConfig para cambiarlo sin redesplegar; backoff exponencial ante ThrottlingException; IaC con CDK y CodePipeline
D3 Seguridad y gobierno Identidad federada; ACL por documento en la recuperación (el filtro se aplica antes de que el modelo vea nada). Guardrails: sensitive information (enmascarar PII como IBAN o DNI), contextual grounding, denied topics (asesoramiento legal personal). VPC endpoint de Bedrock para la Lambda en VPC. KMS en S3, DynamoDB y logs. CloudTrail + invocation logging para auditoría
D4 Coste y operación Modelo pequeño, prompt caching del system prompt, maxTokens limitado, recuperar solo 5 fragmentos. CloudWatch: latencia, tokens, errores, tasa de «no lo sé»; alarmas y Cost Anomaly Detection
D5 Evaluación Golden dataset de 200 preguntas con respuesta y documento esperado. Evaluación de RAG de Bedrock (recuperación y generación) antes del piloto y en cada cambio de prompt o modelo (quality gate). Pulgares arriba/abajo en la interfaz

Alternativas descartadas:

  • Fine-tuning: los documentos cambian a diario y el requisito es conocimiento, no estilo.
  • Customer-managed KB con OpenSearch Serverless: posible, pero exige implementar tú los permisos por documento (filtros de metadatos con los grupos del usuario) y gestionar el almacén. Más esfuerzo operativo.
  • Amazon Q Business / Kendra: resolvían esto históricamente, pero están cerrados a clientes nuevos desde julio de 2026. Para un asistente listo para usar sin desarrollo, la alternativa actual es Amazon Quick.
  • Un índice por departamento: se desincroniza y no escala con permisos cruzados.
Solución de referencia: estimación de coste

Supuestos: 2.000 empleados × 10 preguntas × 22 días = 440.000 preguntas/mes. Por pregunta: 3.000 tokens de entrada (1.000 de system prompt e instrucciones + 5 fragmentos de ~350 tokens + historial breve + pregunta) y 400 de salida.

Tokens al mes: entrada 1.320 M; salida 176 M.

Concepto Nova Lite (eu-south-2) Claude Haiku 4.5 (EU)
Entrada 1.320 × 0,066 = 87,12 USD 1.320 × 1,10 = 1.452,00 USD
Salida 176 × 0,264 = 46,46 USD 176 × 5,50 = 968,00 USD
Tokens 133,58 USD 2.420,00 USD
Ahorro con prompt caching (1.000 tokens de system prompt leídos de caché) — (no calculado) 440 M × (1,10 − 0,11) = −435,60 USD (menos el coste de escritura, a confirmar)

Otros conceptos:

Concepto Cálculo USD/mes
Recuperación en Managed KB 440.000 × 0,001 440,00
Almacenamiento Managed KB 2 GB × 5 10,00
Guardrails, content filters ≈ 3 text units por pregunta (pregunta + respuesta) → 1.320.000 unidades × 0,15/1.000 198,00
Guardrails, sensitive information 1.320.000 × 0,10/1.000 132,00
Guardrails, contextual grounding La respuesta y el contexto: ≈ 12 unidades por pregunta → 5.280.000 × 0,10/1.000 528,00
Lambda, API Gateway, DynamoDB, CloudWatch Pocos cientos de miles de peticiones Decenas de USD (calcúlalo en la Pricing Calculator)

Lecturas que valen puntos en el examen:

  • Con un modelo pequeño, los tokens dejan de ser el coste principal; la recuperación y los guardrails pesan más. Aplica cada filtro de Guardrails solo donde aporta (por ejemplo, grounding solo a la salida).
  • Si Haiku 4.5 no mejora de forma medible la calidad frente a Nova Lite en tu evaluación, el cambio cuesta unos 2.300 USD/mes.
  • El número de text units depende de la longitud de cada texto evaluado (según la página de precios de Bedrock, una text unit contiene hasta 1.000 caracteres; un texto más largo cuenta como varias).

Paso 3: escenario 2, agente de atención al cliente con herramientas y guardrails (60-90 min)

El enunciado

Una operadora de telecomunicaciones quiere un agente conversacional en su web y su app que resuelva consultas de clientes:

  • Consultar el estado de un pedido y de una avería (API REST interna existente).
  • Consultar facturas y emitir abonos de hasta 50 €; por encima de esa cantidad, aprobación de un agente humano.
  • Responder preguntas sobre tarifas usando la documentación comercial.
  • Recordar el contexto de la conversación y las preferencias del cliente entre sesiones.
  • No hablar de la competencia ni dar consejos legales; no revelar datos personales de otros clientes; resistir intentos de manipulación (prompt injection).
  • Si el cliente lo pide o el agente no sabe resolverlo, pasar a un agente humano del centro de contacto (ya usan Amazon Connect).
  • 50.000 conversaciones al mes, de unos 6 turnos cada una. Respuesta percibida en menos de 3 segundos.
  • El equipo quiere usar un framework open source y no gestionar servidores.

Tu trabajo

Igual que en el escenario 1: requisitos, diagrama, justificación y coste.

Solución de referencia: requisitos
  • Requisito que decide: agente autónomo con herramientas, memoria entre sesiones, límites de acción (abonos) y framework open source sin servidores → Strands Agents sobre AgentCore Runtime, con Gateway, Memory, Identity y Policy.
  • Límite de 50 € → control determinista fuera del modelo (AgentCore Policy y validación en la herramienta), nunca solo una instrucción del prompt.
  • Temas prohibidos, PII y prompt injection → Guardrails (denied topics, sensitive information, content filter Prompt Attack).
  • Escalado a humano → herramienta de traspaso a Amazon Connect; aprobaciones de más de 50 € con Step Functions y callback.
  • Menos de 3 segundos percibidos → streaming y modelo rápido.
Solución de referencia: arquitectura
flowchart TB
  C["Cliente web o app"] --> APIGW["API Gateway WebSocket<br/>autenticación con Cognito"]
  APIGW --> RT["AgentCore Runtime<br/>agente Strands"]
  RT --> FM["Modelo en Bedrock<br/>con guardrail"]
  RT --> MEM["AgentCore Memory<br/>corto y largo plazo"]
  RT --> GW["AgentCore Gateway<br/>herramientas MCP"]
  GW --> POL["AgentCore Policy<br/>abono máximo 50 EUR"]
  GW --> T1["API de pedidos y averías<br/>OpenAPI"]
  GW --> T2["Lambda de facturas y abonos"]
  GW --> T3["Knowledge Base<br/>tarifas"]
  T2 --> SF["Step Functions<br/>aprobación humana si supera 50 EUR"]
  RT --> HC["Traspaso a Amazon Connect"]
  RT -.-> OBS["AgentCore Observability<br/>CloudWatch y trazas"]

Puntos clave:

  • AgentCore Gateway convierte la API REST existente (con su especificación OpenAPI) y las Lambdas en herramientas MCP sin reescribirlas.
  • AgentCore Identity gestiona la identidad de entrada (JWT de Cognito) y las credenciales OAuth hacia las APIs internas: la herramienta actúa en nombre del cliente, que solo puede ver sus propios pedidos y facturas.
  • AgentCore Policy evalúa cada llamada a herramienta: si el importe del abono supera 50 €, la bloquea y el agente inicia la aprobación humana.
  • El agente tiene un máximo de iteraciones y un timeout por herramienta.
Solución de referencia: justificación por dominio
Dominio Decisiones
D1 Modelos y datos Modelo rápido con buen uso de herramientas (Claude Haiku 4.5 o Nova 2 Lite según la evaluación). KB con la documentación de tarifas. System prompt versionado en Prompt Management
D2 Implementación Strands Agents (open source) en AgentCore Runtime (serverless, aislamiento por sesión). Gateway para herramientas MCP. Memory para contexto y preferencias. Streaming por WebSocket. Step Functions con task token para la aprobación humana. Traspaso a Amazon Connect
D3 Seguridad y gobierno Guardrails: denied topics (competencia, asesoría legal), sensitive information, content filter Prompt Attack. Mínimo privilegio: el rol del agente solo invoca las herramientas del Gateway. Policy para el límite de abonos (control determinista). CloudTrail e invocation logging para auditar decisiones. Trazas del agente para explicar qué hizo
D4 Coste y operación Prompt caching de system prompt + definiciones de herramientas. Poda o resumen del historial. Métricas por herramienta (latencia, errores, llamadas por conversación) y alarmas en ráfagas de tokens
D5 Evaluación AgentCore Evaluations: tasa de tareas completadas, uso correcto de herramientas, simulación de usuarios. Pruebas adversarias de prompt injection antes de cada despliegue. Encuesta de satisfacción al final de la conversación

Alternativas descartadas:

  • Bedrock Agents Classic: cerrado a clientes nuevos desde el 30/07/2026.
  • Bedrock Flows: flujo determinista; aquí el agente decide qué herramienta usar y en qué orden.
  • Amazon Lex solo: excelente para intenciones cerradas, pero no para conversación abierta con razonamiento sobre herramientas. Puede convivir (por ejemplo, en el canal de voz de Connect).
  • Limitar los abonos solo con el prompt: una instrucción no es un control; un ataque de prompt injection la puede saltar.
  • Agente en EC2 o EKS: más operación; el enunciado pide no gestionar servidores.
Solución de referencia: estimación de coste

Supuestos: 50.000 conversaciones × 6 turnos = 300.000 turnos. Cada turno hace de media 2 llamadas al modelo (una para decidir la herramienta y otra para responder) → 600.000 llamadas/mes. Por llamada: 4.000 tokens de entrada (2.000 de system prompt y herramientas + historial + resultados de herramienta) y 300 de salida.

Tokens al mes: entrada 2.400 M; salida 180 M.

Concepto Claude Haiku 4.5 (EU)
Entrada 2.400 × 1,10 = 2.640,00 USD
Salida 180 × 5,50 = 990,00 USD
Tokens sin caché 3.630,00 USD
Ahorro por prompt caching (2.000 tokens fijos por llamada) 1.200 M × (1,10 − 0,11) = −1.188,00 USD (menos escritura, a confirmar)
Tokens con caché (aprox.) ≈ 2.440 USD

AgentCore y resto:

Concepto Supuesto USD/mes
Runtime, CPU 30 s de CPU activa por conversación (1 vCPU) → 1.500.000 s = 416,7 vCPU-h × 0,0895 37,29
Runtime, memoria 416,7 h × 2 GB × 0,00945 7,88
Memory, eventos de corto plazo 600.000 eventos × 0,00025 150,00
Gateway 300.000 llamadas a herramientas × 0,000005 1,50
Guardrails (content filters + denied topics + PII) ≈ 2 unidades por turno × 300.000 = 600.000 unidades × (0,15 + 0,15 + 0,10)/1.000 240,00
Knowledge Base, Lambda, Step Functions, API Gateway Depende del almacén y del tráfico Calcúlalo en la Pricing Calculator

Lecturas:

  • En agentes, el número de llamadas por turno multiplica el coste: reducir de 2 a 1,5 llamadas por turno ahorra un 25 % de los tokens.
  • Prompt caching es la palanca más grande cuando el system prompt y las herramientas son fijos.
  • El cómputo de AgentCore Runtime es pequeño frente a los tokens porque se factura por uso activo.

Paso 4: escenario 3, procesamiento masivo de documentos por lotes (45-60 min)

El enunciado

Una empresa de gestión de siniestros recibe 300.000 reclamaciones al mes por correo electrónico (texto) y 20.000 páginas de partes escaneados en PDF.

  • Para cada reclamación: clasificarla (8 categorías), extraer campos (póliza, fecha, importe, matrícula) en JSON y generar un resumen de 3 líneas.
  • Los resultados se cargan cada mañana en el sistema de gestión (no hace falta tiempo real: basta con 24 horas).
  • Hay que conservar trazabilidad: qué modelo y qué versión del prompt procesó cada documento.
  • Los correos contienen datos personales; los resultados solo deben contener los campos necesarios.
  • Presupuesto ajustado: se busca la opción MOST cost-effective.
Solución de referencia: requisitos y arquitectura
  • Requisito que decide: gran volumen sin necesidad de respuesta inmediata + coste mínimo → batch inference de Bedrock (≈ 50 % del precio on-demand).
  • Escaneados → Bedrock Data Automation (o Textract) antes del modelo.
  • JSON fiable → esquema JSON en la petición y validación posterior con Lambda. Batch inference no admite tool calling ni prompt caching; sobre structured outputs, la documentación se contradice a 01/10/2026 (la página de structured outputs dice que sí; la de batch inference, que no admite response_format), así que no dependas de ello sin validar.
  • Trazabilidad → metadatos por registro (modelId, versión del prompt de Prompt Management, fecha) + CloudTrail + invocation logging.
flowchart LR
  M["Correos y PDF<br/>bucket S3 de entrada"] --> EB["EventBridge<br/>programación diaria"]
  EB --> SF["Step Functions"]
  SF --> BDA["Bedrock Data Automation<br/>PDF escaneados"]
  SF --> PREP["Lambda: limpiar texto,<br/>quitar firmas y PII innecesaria,<br/>generar JSONL"]
  BDA --> PREP
  PREP --> JOB["Bedrock batch inference<br/>S3 a S3"]
  JOB --> VAL["Lambda: validar JSON Schema,<br/>reintentar fallidos"]
  VAL --> OUT["S3 resultados<br/>+ carga al sistema de gestión"]
  VAL -.-> DLQ["Registros inválidos<br/>revisión humana"]
  JOB -.-> CW["CloudWatch y<br/>EventBridge: estado del trabajo"]
Solución de referencia: justificación por dominio
Dominio Decisiones
D1 Modelos y datos Validación y limpieza previas (Lambda; Glue Data Quality si los datos vienen de un catálogo). BDA para escaneados. Modelo pequeño si la evaluación lo permite. Prompt versionado con ejemplos few-shot de cada categoría
D2 Implementación Step Functions orquesta: preparación → trabajo batch → espera del evento de fin (EventBridge) → validación → carga. Registros que fallan la validación se reintentan on-demand o van a revisión humana
D3 Seguridad y gobierno Minimizar datos: solo se extraen los campos necesarios. Buckets cifrados con KMS, S3 Lifecycle para borrar entradas tras N días. Macie para vigilar PII en los buckets. Metadatos de linaje por registro
D4 Coste y operación Batch inference, modelo pequeño, maxTokens ajustado. Métricas de registros procesados, fallidos y tokens por día
D5 Evaluación Muestra etiquetada de 500 reclamaciones: exactitud por campo y por categoría; se repite en cada cambio de prompt o modelo. Muestreo semanal para revisión humana

Alternativas descartadas:

  • Llamadas on-demand en bucle con Lambda: el doble de caro y expuesto a throttling.
  • Provisioned Throughput: capacidad por hora pagada todo el mes para un trabajo de unas horas al día.
  • Fine-tuning: solo si tras optimizar el prompt la exactitud por campo no llega al objetivo.
Solución de referencia: estimación de coste

Supuestos: 300.000 reclamaciones con 1.500 tokens de entrada (instrucciones, ejemplos y correo) y 300 de salida. Tokens al mes: entrada 450 M; salida 90 M.

Opción Entrada Salida Total/mes
Claude Haiku 4.5 EU on-demand 450 × 1,10 = 495,00 90 × 5,50 = 495,00 990,00 USD
Claude Haiku 4.5 EU batch 450 × 0,55 = 247,50 90 × 2,75 = 247,50 495,00 USD
Nova Micro on-demand (eu-south-2) 450 × 0,039 = 17,55 90 × 0,156 = 14,04 31,59 USD
Nova Micro batch (eu-west-1: 0,020 / 0,080; en eu-south-2 no hay precio batch publicado) 450 × 0,020 = 9,00 90 × 0,080 = 7,20 16,20 USD

Más:

Concepto Cálculo USD/mes
BDA, páginas escaneadas 20.000 × 0,01 200,00
Lambda, Step Functions, S3 Decenas de miles de ejecuciones pequeñas Pocos USD

Lectura: la diferencia entre la opción más cara y la más barata es de 60 veces. Si la evaluación demuestra que Nova Micro clasifica y extrae con la exactitud necesaria, es la respuesta MOST cost-effective; si no, Haiku 4.5 en batch. En ningún caso on-demand.

Comprueba que funciona

Sin recursos que probar, la comprobación es tu diseño. Para cada escenario, verifica:

  • Cada requisito del enunciado tiene al menos un componente que lo cumple (haz una tabla requisito → componente).
  • Los requisitos duros (residencia, permisos, límite de abonos, 24 horas) se cumplen con controles y no solo con instrucciones al modelo.
  • Has descartado al menos dos alternativas con un motivo concreto.
  • La estimación separa tokens de entrada, de salida y costes fijos, y dice qué supuestos usa.
  • Hay un plan de evaluación antes de producción y de monitorización después.

Limpieza

No has creado nada en AWS. Si has probado la Pricing Calculator, guarda el enlace de tu estimación (Share) junto al diseño; no genera ningún coste.

Preguntas para pensar como arquitecto

1. En el escenario 1, ¿por qué no basta con indicar en el prompt «no respondas con documentos que el usuario no puede ver»?

Porque el modelo ya habría visto el contenido: el filtrado debe hacerse en la recuperación, antes de construir el prompt. Además, una instrucción del prompt no es un control de seguridad; un ataque de prompt injection puede saltársela. Los permisos se aplican con ACL por documento (Managed KB) o con filtros de metadatos basados en la identidad autenticada.

2. En el escenario 2, el coste real sale un 40 % por encima de la estimación. ¿Dónde mirarías primero?

En el número de llamadas al modelo por turno y en los tokens de entrada por llamada (trazas de AgentCore Observability e invocation logs). Causas típicas: bucles del agente que repiten herramientas, historial que crece sin poda, resultados de herramientas demasiado largos, o prompt caching que no se aplica porque el prefijo cambia en cada llamada (por ejemplo, una fecha al principio del system prompt).

3. En el escenario 3, un 3 % de los JSON generados no son válidos. ¿Qué haces?

Validar cada salida contra el JSON Schema y reprocesar solo los inválidos (on-demand con structured output si el modelo lo admite, o con un prompt de corrección); si siguen fallando, a revisión humana. Después, analizar el patrón (correos muy largos, caracteres especiales) y ajustar el prompt con ejemplos. No cambies todo el pipeline a on-demand por un 3 %.

4. Si el escenario 1 añadiera «los datos no pueden salir de España», ¿qué cambiaría?

El perfil eu. enruta dentro de la UE, no dentro de España. Necesitarías modelos in-Region en eu-south-2 (según la tabla oficial de modelos por región, a 01/10/2026 Titan Text Embeddings V2 está in-Region en eu-south-2, pero los modelos de texto de Nova y Claude solo llegan por perfil EU o global), o un modelo propio desplegado en la región (SageMaker AI o Custom Model Import donde esté disponible). Es un requisito que puede obligar a cambiar de modelo: verifica siempre la tabla de disponibilidad por región.

5. ¿Cómo convencerías a dirección de pasar del piloto a producción en el escenario 1?

Con datos: resultados de la evaluación de RAG sobre el golden dataset (exactitud, fidelidad, calidad de las citas), tasa de «no lo sé», satisfacción de los usuarios del piloto, latencia p95 y coste por pregunta (≈ 0,0003 USD de tokens con Nova Lite). Un informe comparativo (5.1.8) con la evolución por versión de prompt es lo que espera el examen como «reporting a stakeholders».


Volver al módulo