IA generativa en AWS: GenU frente a Amplify AI Kit
Cada vez que alguien me pregunta "¿cómo creo una app de IA generativa en AWS?", la respuesta honesta empieza con otra pregunta: ¿quién es dueño del frontend? Si es un equipo de plataforma que quiere dar a toda una empresa acceso seguro a la IA generativa, AWS ya publica una app terminada para eso: la Guidance for Rapidly Deploying Generative AI for Business Use Cases on AWS, más conocida por su ejemplo, GenU. Si es un equipo de producto que añade IA a una app que ya publica, el camino más corto que conozco es Amplify AI Kit, que es como yo construyo funciones de IA en Amplify Gen 2.
Este artículo dibuja ambas arquitecturas, muestra cómo se despliega cada una y las compara lado a lado, para que puedas elegir una (o las dos) sin leer dos documentaciones.
Última revisión: 25 de octubre de 2026.
TL;DR
- GenU es un portal de IA generativa completo y de código abierto: chat, chat con RAG, agentes, resúmenes, traducción, generación de imágenes y video, chat de voz y un Use Case Builder sin código, desplegado con un solo
npm run cdk:deployen unos 20 minutos. - Amplify AI Kit no es una app; es un conjunto de rutas de IA que declaras en tu esquema de Amplify Data, más hooks de React y componentes de UI para llamarlas. Una ruta de conversación es un chat de varios turnos con streaming; una ruta de generación es una sola consulta tipada.
- Ambas corren sobre Amazon Bedrock en tu propia cuenta, ambas son serverless y de pago por uso, y ninguna añade un recargo sobre los tokens del modelo.
- Elige GenU para la productividad interna de muchos empleados; elige Amplify AI Kit cuando la IA generativa es una función de un producto que publicas; combínalas sobre una base de conocimiento compartida cuando se dan las dos cosas.
Las piezas que comparten ambas arquitecturas
Toda app de IA generativa en AWS combina las mismas cuatro capas, y las dos arquitecturas se diferencian sobre todo en cuánto de la última escribes tú:
- Modelos: Amazon Bedrock sirve modelos fundacionales de Anthropic, Amazon, Meta, Mistral y otros a través de una sola API serverless; Amazon SageMaker AI aloja modelos que entrenas o ajustas tú.
- Conocimiento: la generación aumentada por recuperación (RAG) basa las respuestas en tus documentos, mediante Bedrock Knowledge Bases o Amazon Kendra.
- Acciones: los agentes y las herramientas permiten al modelo llamar APIs, consultar bases de datos o buscar en la web.
- La app: autenticación, una API, un frontend, el historial del chat y la monitorización.
Si quieres la lista completa de lo que Bedrock ha lanzado y cuándo, mantengo una línea de tiempo de funciones de Bedrock.
Arquitectura 1: GenU, el portal empresarial
La guía de AWS se implementa en el repositorio de código abierto Generative AI Use Cases (GenU). Es un monorepo en TypeScript con un frontend en React y un backend en AWS CDK, y lo que despliegas es un portal que funciona, no una plantilla de inicio.
Cómo fluye una petición
- Un usuario abre el portal en el navegador; AWS WAF filtra cada punto de entrada y puede restringir el acceso por rango de IP o por país.
- CloudFront sirve la app React estática desde S3; el historial del chat vive en DynamoDB.
- API Gateway recibe las llamadas a la API y se las pasa a Lambda.
- Cognito autentica a los usuarios, con federación SAML opcional (la documentación cubre Entra ID y Google Workspace).
- Lambda llama a Amazon Bedrock (o a un endpoint de SageMaker AI) y devuelve la respuesta.
- Si RAG está activado, Lambda recupera antes el contexto de Bedrock Knowledge Bases (vectores en OpenSearch) o de un índice de Amazon Kendra, ambos alimentados por documentos en S3.
- Amazon Transcribe procesa la entrada de voz, y los agentes opcionales añaden búsqueda web, un intérprete de código, agentes importados de AgentCore Runtime y Bedrock Flows.
Lo que trae de serie
Chat, generación de texto, resúmenes, actas de reuniones, asistencia de escritura, traducción, extracción de contenido web, generación de imágenes y video, análisis de video, generación de diagramas y chat de voz. Los usuarios de negocio pueden añadir sus propios casos de uso con el Use Case Builder escribiendo una plantilla de prompt, sin código.
Cómo se despliega
git clone https://github.com/aws-samples/generative-ai-use-cases.git
cd generative-ai-use-cases
npm ci
npx -w packages/cdk cdk bootstrap
npm run cdk:deploy
El primer despliegue tarda unos 20 minutos. Las funciones se activan con flags en packages/cdk/parameter.ts o cdk.json, y envs en parameter.ts te da configuraciones separadas para dev y prod:
// packages/cdk/parameter.ts (excerpt)
const envs = {
dev: {
ragKnowledgeBaseEnabled: true,
allowedIpV4AddressRanges: ['203.0.113.0/24'],
allowedCountryCodes: ['US', 'ES'],
},
}
Si no quieres montar CDK en local, el repositorio también tiene un script deploy.sh que ejecuta todo el despliegue desde AWS CloudShell.
Ideal para: equipos de plataforma o de TI que quieren dar a muchos empleados acceso gobernado a la IA generativa rápido, y crecer a partir de ahí.
Arquitectura 2: Amplify AI Kit
Amplify AI Kit forma parte de Amplify Gen 2, donde todo el backend es TypeScript. Añades IA igual que añades un modelo de datos: declarando rutas de IA en amplify/data/resource.ts. Amplify aprovisiona por ti AppSync, Lambda, DynamoDB y los permisos de Bedrock.
Dos tipos de ruta
| Ruta | Qué es | Autorización | Uso típico |
|---|---|---|---|
| Conversación | Chat asíncrono de varios turnos; los mensajes se guardan en DynamoDB automáticamente y las respuestas llegan en streaming por una suscripción | Solo por propietario: cada usuario ve sus propios chats | Asistentes de chat, búsqueda conversacional |
| Generación | Consulta síncrona de AppSync, petición y respuesta, que devuelve datos con la forma que defines | Sin propietario: autenticado, invitado, grupo o API key | Resúmenes, texto alternativo, extracción estructurada |
Los modelos deben admitir uso de herramientas en la API Converse de Bedrock, porque AI Kit usa herramientas en ambos tipos de ruta. Las herramientas son también la forma en que una conversación llega a tus datos: una herramienta de datos expone un modelo o una consulta personalizada de Amplify Data al modelo, y una herramienta de base de conocimiento es una consulta personalizada con un resolver de AppSync que llama a una base de conocimiento de Bedrock. La base de conocimiento la creas aparte, en la consola, la CLI o CDK.
Cómo se ve el código
El backend:
// amplify/data/resource.ts
import { a, defineData, type ClientSchema } from '@aws-amplify/backend'
const schema = a.schema({
chat: a
.conversation({
aiModel: a.ai.model('Claude 4.6 Sonnet'),
systemPrompt: 'You are a helpful assistant',
})
.authorization((allow) => allow.owner()),
generateSummary: a
.generation({
aiModel: a.ai.model('Claude 4.5 Haiku'),
systemPrompt: 'Summarize the text in three sentences.',
})
.arguments({ text: a.string() })
.returns(a.customType({ summary: a.string() }))
.authorization((allow) => allow.authenticated()),
})
export type Schema = ClientSchema<typeof schema>
export const data = defineData({ schema })
El frontend, con el componente de chat ya hecho:
// src/Chat.tsx
import { Authenticator } from '@aws-amplify/ui-react'
import { AIConversation } from '@aws-amplify/ui-react-ai'
import { useAIConversation } from './client'
export default function Chat() {
const [
{
data: { messages },
isLoading,
},
handleSendMessage,
] = useAIConversation('chat')
return (
<Authenticator>
<AIConversation
messages={messages}
isLoading={isLoading}
handleSendMessage={handleSendMessage}
/>
</Authenticator>
)
}
a.ai.model() acepta nombres amigables (Claude 4.6 Sonnet y Opus, Claude 4.5 Haiku, Amazon Nova y otros según la documentación de marzo de 2026). Para un modelo de Bedrock más nuevo que aún no está en la lista, pasa su ID de modelo: aiModel: { resourcePath: '<bedrock-model-id>' }.
Cómo se despliega
npm create amplify@latest
npm add aws-amplify @aws-amplify/ui-react @aws-amplify/ui-react-ai
npx ampx sandbox
El sandbox despliega un backend personal en la nube mientras desarrollas. Cuando estés listo, haz push de una rama: Amplify Hosting construye y despliega el frontend y el backend juntos. Si tu app es Next.js, escribí sobre los detalles de SSR en desplegar Next.js 16 en Amplify.
Ideal para: equipos de producto que añaden funciones de IA generativa a una app propia, para clientes o interna.
Lado a lado
| Dimensión | GenU | Amplify AI Kit |
|---|---|---|
| Qué obtienes | Un portal completo con muchos casos de uso | Rutas de IA, hooks y componentes de UI para tu app |
| Para quién | Equipos de plataforma y de TI que dan servicio a empleados | Equipos full-stack que construyen un producto |
| Infraestructura como código | AWS CDK, flags en parameter.ts o cdk.json | TypeScript de Amplify Gen 2 (CDK por debajo) |
| Capa de API | API Gateway + Lambda | AppSync GraphQL: consultas, mutaciones, suscripciones |
| Frontend | Portal React ya hecho sobre CloudFront + S3 | Tu propia app en React, Next.js, Vue, Angular o React Native |
| Autenticación | Cognito, SAML opcional, reglas de IP y país en WAF | Cognito; los chats son por propietario |
| Modelos | Modelos de Bedrock más endpoints de SageMaker AI | Modelos de Bedrock con uso de herramientas en Converse |
| RAG | Incluido: Knowledge Bases o Kendra, un flag | Una herramienta que consulta una base de conocimiento que tú creas |
| Agentes y herramientas | Agentes de búsqueda web e intérprete de código, importación de AgentCore, Use Case Builder | Herramientas sobre tus modelos de datos, consultas y funciones |
| Modalidades | Texto, imágenes, video, voz | Texto primero; amplíalo con tus funciones |
| Tiempo hasta el primer resultado | Unos 20 minutos para un despliegue de CDK | Minutos en un sandbox, luego un git push |
| Personalización | Haces fork del repositorio y cambias una app existente | Sin límite: es tu app |
| Modelo de coste | Pago por uso, más Kendra u OpenSearch si RAG está activo | Pago por uso de AppSync, Lambda, DynamoDB y Bedrock |
El mayor coste en ambas son los tokens del modelo. Después, vigila la parte de RAG que está siempre encendida: un índice de Kendra o una colección de OpenSearch se facturan aunque nadie haga preguntas. GenU enlaza estimaciones de la calculadora de precios de AWS para tres configuraciones (sin RAG, RAG con Kendra, RAG con Knowledge Bases); en Amplify AI Kit, Bedrock se factura bajo demanda sin recargo de Amplify.
El híbrido: una capa de conocimiento, dos puertas de entrada
Las dos no se excluyen, y en la práctica aquí acaban muchos equipos. GenU da a los empleados un portal desde el primer día; la app de Amplify da a los clientes una función de IA dentro del producto. Ambas apuntan a la misma Bedrock Knowledge Base, sincronizada desde el mismo bucket de S3, y corren bajo la misma política de Guardrails. El gobierno vive entonces una sola vez en Bedrock en lugar de una vez por app: cuando el equipo legal cambia un tema prohibido, las dos puertas lo aplican.
Cómo elegir
- Elige GenU cuando el objetivo es la productividad interna: muchos empleados, muchos casos de uso, un equipo de seguridad que quiere WAF, SAML y una arquitectura de referencia publicada por AWS, y ningunas ganas de construir una UI.
- Elige Amplify AI Kit cuando la IA generativa es una función de un producto que publicas: un chat de soporte en tu SaaS, extracción estructurada en un formulario, resúmenes en un panel.
- Combínalas cuando se dan las dos cosas, sobre una base de conocimiento compartida.
Elijas la que elijas, haz tres cosas antes de que lleguen usuarios reales: confirma en la consola de Bedrock que los modelos que necesitas están disponibles en tu región, configura una alerta de AWS Budgets sobre el gasto en Bedrock y aplica una política de Guardrails.
Fuentes
- Guidance for Rapidly Deploying Generative AI for Business Use Cases on AWS
- Generative AI Use Cases (GenU) en GitHub
- Opciones de despliegue de GenU
- GenU: desplegar desde CloudShell
- Amplify AI Kit: arquitectura
- Amplify AI Kit: configurar la IA
- Amplify AI Kit: modelos y precios
- Amplify AI Kit: base de conocimiento
- Blog de AWS: Build fullstack AI apps in minutes with the new Amplify AI Kit