Guía de la práctica
Vas a construir, paso a paso, un Agente de IA que entiende documentos y responde preguntas, y lo vas a desplegar en un sitio web para verlo funcionar de verdad.

Archivos de la práctica
Reunimos los archivos que vas a necesitar. ¡Descargalos primero!
Paso 1
CloudFormation
Armar el entorno
Paso 2
Subir a S3
Subir el PDF de la guía
Paso 3
Knowledge Base
Crear la base de conocimiento
Paso 4
Crear el Agente
Conectar la KB y revisar instrucciones
Paso 5
Desplegar con Amplify
Publicar el sitio web
Paso 0: Entrá a la consola de AWS
Ingresá a la Consola de AWS con la cuenta de práctica entregada hoy.
Antes de seguir, verificá en la esquina superior derecha que estés en la región us-west-2 (Oregón). Si aparece otra región, cambiala a Oregón desde el selector.

Toda la práctica se realiza en us-west-2 (Oregón). Si creás recursos en otra región, no van a funcionar entre sí.
Paso 1: Desplegar CloudFormation
Con CloudFormation vamos a crear automáticamente, en un solo clic, todos los recursos de AWS que necesitamos.
🔎 ¿Qué hay dentro del cloudformation.yaml? (clic)
La plantilla es una "receta": describe toda la infraestructura como código. Al desplegarla, AWS crea estos recursos por vos:
| Recurso | Qué hace |
|---|---|
| 📦 Bucket de S3 | Guarda el PDF con la guía de la facultad (la base de conocimiento). Con versionado y cifrado activados. |
| 🧠 Agente de Bedrock | El cerebro de IA. Usa el modelo Amazon Nova Pro y responde consultando el documento. Acá viven sus instrucciones. |
| ⚙️ Función Lambda | Recibe la pregunta desde la web, se la pasa al agente y devuelve la respuesta. Corre sin servidores (Python 3.11). |
| 🔗 API Gateway (HTTP API) | Expone una URL HTTPS pública (con CORS) para que el sitio web pueda llamar a la Lambda. |
| 🔐 Roles IAM | Permisos mínimos para que Bedrock y Lambda puedan trabajar entre sí. |
Al terminar, en la pestaña Outputs vas a ver el AgentId y la URL de la Lambda: los vas a necesitar más adelante para conectar la app web.
📝 Sobre las instrucciones del agente
Dentro del agente hay un campo Instruction: es la personalidad y las reglas del chatbot. Le define:
- Rol: es el asistente de la UTN – Facultad Regional Resistencia (FRRe) y orienta sobre carreras, ingreso, becas y servicios.
- Inicio de conversación: cómo se presenta al saludar.
- Tono y estilo: cálido, claro y siempre en español.
- Guía de respuesta: consultar siempre el PDF y, si no está la info, derivar al contacto de la facultad.
- Ejemplos de tono: respuestas modelo para que mantenga el estilo.
💡 No hace falta tocar nada ahora: la plantilla ya trae estas instrucciones cargadas. Más adelante, en el Paso 3, vas a aprender a escribirlas y mejorarlas vos (prompt engineering).
a. Abrí CloudFormation y subí la plantilla
- En la Consola de AWS (ya en la región us-west-2 / Oregón), entrá al servicio CloudFormation.
- Hacé clic en Crear pila (Create stack) → Con recursos nuevos (estándar).
- En Especificar plantilla, elegí Cargar un archivo de plantilla (Upload a template file) y subí el archivo
cloudformation.yamlque descargaste en Archivos de la práctica. - Hacé clic en Siguiente.



b. Configurá y desplegá la pila
Para que las pilas no choquen entre sí, cada equipo debe usar nombres únicos:
- Un nombre de pila (Stack name) distinto por equipo.
- Valores únicos en los parámetros
S3BucketNameyAgentName(agregá el nombre de tu equipo).
El rol de IAM y la función Lambda se nombran solos a partir del nombre de la pila, así que con esto alcanza para que cada equipo tenga sus propios recursos. 👍
- Poné un nombre de pila (Stack name) que incluya el nombre de tu equipo, por ejemplo:
utn-ai-chatbot-equipo1(outn-ai-chatbot-losdelafondo). Así cada equipo identifica fácil su propia pila. - En los parámetros, personalizalos con el nombre de tu equipo para que sean únicos:
S3BucketName: por ejemploutn-frre-chatbot-equipo1AgentName: por ejemploUtnFrreGuideAgentEquipo1
- Hacé clic en Siguiente.

-
Bajá hasta el final de la página.
-
Marcá la siguiente casilla:
✅ "Reconozco que AWS CloudFormation podría crear recursos de IAM con nombres personalizados."
-
Hacé clic en el botón Crear pila (Create stack).

-
Comienza la creación de la pila (tarda 1 o 2 minutos aprox.).
- Cuando el estado pase de CREATE_IN_PROGRESS a CREATE_COMPLETE, ¡está listo!

c. Revisá y copiá los valores de salida
Cuando termine el despliegue, hacé clic en la pestaña Salidas (Outputs) para ver los valores importantes.
Verificá que se hayan generado estos valores.
| Clave | Valor de ejemplo |
|---|---|
| AgentId | AAD3VDENCU |
| ApiEndpoint | https://x7kupd57t.execute-api.us-west-2.amazonaws.com/prod/ |
| Region | us-west-2 |
Copiá los valores de AgentId y ApiEndpoint en un bloc de notas. Los vas a usar más adelante.
Paso 2: Subir el documento de la facultad a S3
Ahora vamos a subir a S3 el material de la UTN – Facultad Regional Resistencia (FRRe) con el que la IA va a aprender.
a. Encontrá el bucket de S3
-
En el buscador de la parte superior de la consola de AWS escribí S3 y hacé clic, o entrá directamente a la consola de S3.
-
Buscá el bucket school-guide-chatbot que se creó y hacé clic.

b. Subí el archivo PDF
Acá vas a subir a la nube el material con el que la IA va a aprender. ¡Con estos archivos la IA va a responder las preguntas!
- Dentro del bucket, hacé clic en el botón Cargar (Upload).

- Hacé clic en el botón Agregar archivos.

-
Seleccioná el PDF de la guía que descargaste.
-
Hacé clic en el botón Cargar que está al final de la pantalla.
-
Verificá el mensaje "Carga exitosa".

Paso 3: Crear la Knowledge Base de Bedrock
Es el "cerebro" que le permite a la IA leer y entender los documentos. Si solo subís un PDF, la IA no puede leerlo: necesita un procesamiento especial.
Ahora vamos a crear una base de conocimiento (Knowledge Base) para que la IA pueda leer y entender el documento que subimos a S3.
a. Entrá a la consola de Bedrock
- En el buscador de la consola de AWS escribí Bedrock y hacé clic, o entrá directamente a la consola de Bedrock.

b. Creá la Knowledge Base
- En la barra lateral izquierda seleccioná Bases de conocimiento (Knowledge bases).

- Hacé clic en el botón Crear y elegí Base de conocimiento con almacén de vectores.
Es donde se guardan los documentos convertidos a números para que la IA pueda entenderlos. Es como traducir un libro al idioma de la IA.

- Hacé clic en el botón Siguiente.

c. Conectá el origen de datos de S3
Le indicás a la IA "dónde están los documentos que tiene que leer".
- Hacé clic en el botón Browse S3.

- Seleccioná el bucket de S3 donde subiste el PDF en el Paso 2 y hacé clic en Choose.

- En Estrategia de análisis (parsing) elegí Usar un modelo fundacional como parser y luego hacé clic en Seleccionar modelo.
Es la forma en que se va a leer el PDF.
- Parser básico: extrae solo texto simple (no lee tablas ni imágenes)
- Parser con modelo fundacional: la IA lee directamente y entiende tablas, imágenes y diseños complejos ⭐ (más inteligente)

-
En el menú desplegable elegí Amazon - Nova Premier.

-
Hacé clic en el botón Siguiente.
d. Configurá el modelo de embeddings
Es el proceso de convertir el contenido de un documento en números. La IA entiende mejor los datos numéricos.
Ejemplo: "Tecnicatura Universitaria en Programación" → [0.23, 0.45, 0.12, ...] (cientos de números)
-
Hacé clic en el botón Seleccionar modelo.

-
Elegí Titan Text Embeddings v2 y hacé clic en Aplicar.

-
En el paso Selección del almacén de vectores elegí Amazon OpenSearch Serverless y hacé clic en Siguiente.

-
Hacé clic en el botón Crear base de conocimiento.
-
Comienza la creación de la base de datos vectorial y de la base de conocimiento (tarda unos 5 minutos).
¡No cierres la ventana del navegador hasta que termine! Si la cerrás, la creación se cancela.

e. Sincronizá los datos
Es leer el PDF que está en S3 y convertirlo a un formato que la IA pueda entender.
¡Recién cuando termina este proceso la IA puede responder en base al contenido del documento!
- Cuando termine la creación de la Knowledge Base, hacé clic en el botón Sincronizar.

- Comienza la sincronización (tarda entre 3 y 5 minutos).
- Cuando el estado pase de Sincronizando a Disponible, ¡está listo!
¡No cierres la ventana del navegador hasta que termine la sincronización! Si la cerrás, se cancela.
Paso 4: Conectar la Knowledge Base al Agente
Ahora vamos a conectar el Agente con la Knowledge Base para completar un Agente de IA que responda con precisión.
a. Encontrá el Agente
-
En la barra lateral izquierda hacé clic en Agentes, o entrá directamente a la consola de Agentes.
-
Hacé clic en el Agente SchoolGuideAgent que ya está creado.

Este Agente ya tiene cargadas unas instrucciones preparadas de antemano.
¡Más adelante, en el proyecto en equipo, vas a escribir tus propias instrucciones!
📋 Ver todas las instrucciones cargadas en este Agente (clic)
Sos el asistente de IA que guía sobre la Tecnicatura Universitaria en Programación de la UTN – Facultad Regional Resistencia (FRRe).
Tu tarea es orientar de forma amable a estudiantes e ingresantes interesados sobre las carreras y tecnicaturas, el ingreso y el Seminario Universitario, las becas, el calendario académico y los servicios para estudiantes.
💬 Inicio de la conversación
Al saludar por primera vez, decí esto:
"¡Hola! Soy el asistente de la Tecnicatura Universitaria en Programación de la UTN FRRe 😊
¿Qué te gustaría saber sobre la facultad o la carrera?"
🎯 Rol
- Respondé las preguntas consultando siempre la base de conocimiento conectada (el documento PDF) para dar información precisa.
- No te limites a enumerar datos: explicá con frases fáciles de entender para un estudiante.
🗣️ Tono y estilo
- Usá un tono cálido y natural, como un compañero o docente cercano.
- Frases cortas y claras, sin ser demasiado formal ni acartonado.
📘 Guía de respuestas
1. Para la información de la facultad, basate siempre primero en el contenido de la base de conocimiento.
2. Si la pregunta no es clara, respondé "¿En qué te puedo ayudar?".
3. Evitá explicaciones innecesariamente largas; enfocate en lo esencial.
🎓 Ejemplos de tono
- "En la TUP aprendés a programar y a desarrollar software paso a paso."
- "La FRRe ofrece varias tecnicaturas, como Programación, Mecatrónica y Logística."
b. Agregá la Knowledge Base
- En la página de detalle del Agente, hacé clic en el botón Editar en el Agent Builder.

- Bajá en la pantalla y hacé clic en el botón Agregar base de conocimiento.

-
En Seleccionar base de conocimiento elegí la que acabás de crear.

-
Hacé clic en Add y luego en Guardar y salir.

c. Preparar el Agente
- Hacé clic en el botón Preparar (Prepare) para aplicar los cambios.

- Esperá a que termine la preparación (unos 30 segundos a 1 minuto).
- Cuando el estado pase de Preparando a Listo, ¡terminó!
Ahora el Agente está conectado con la Knowledge Base.
Paso 5: Desplegar el sitio del Agente de IA con Amplify
Último paso. ¡Vamos a publicar el Agente de IA en internet y a probarlo!
a. Creá la app en Amplify
-
En el buscador de la consola de AWS escribí Amplify y hacé clic, o entrá directamente a la consola de Amplify.
-
Hacé clic en el botón Desplegar app.

- Elegí Desplegar sin Git y hacé clic en Siguiente.

b. Subí el archivo y desplegá
-
Subí el archivo aws_learning_day_chatbot.zip que se entregó al inicio de la práctica.
-
Hacé clic en el botón Guardar y desplegar.

-
Comienza el despliegue.

-
Hacé clic en el botón Visitar la URL desplegada para entrar al sitio.

d. Configurá y probá el Agente de IA
-
Al entrar al sitio por primera vez vas a ver la pantalla principal.
- Acá necesitás cargar el API Endpoint y el Agent ID.

- Acá necesitás cargar el API Endpoint y el Agent ID.
-
Copiá los valores de API Endpoint y Agent ID que guardaste en el bloc de notas, o entrá a la consola de CloudFormation, seleccioná la pila y, en la pestaña Salidas, mirá los valores de API Endpoint y Agent ID.

-
Pegá esos valores tal cual en los campos del sitio y hacé clic en el botón Conectar.
-
¡Probá con preguntas como estas!
- "¿Qué tecnicaturas y carreras de grado puedo estudiar en la FRRe?"
- "¿Cómo es el ingreso y cuándo son los turnos del Seminario?"
¡Felicitaciones! ¡Tu Agente de IA Guía de la UTN FRRe está listo!
💬 Preguntas para probar tu Agente
Estas 10 preguntas se pueden responder con la guía oficial de la FRRe que cargaste como base de conocimiento. Son variadas a propósito, para que revises distintas partes del documento.
El Agente solo responde lo que está en el documento. Si preguntás algo que no figura en la guía (por ejemplo, salidas laborales o clubes), te va a sugerir contactar a la facultad. ¡Eso está bien, significa que no inventa! 😉
- ¿Qué tecnicaturas universitarias ofrece la FRRe?
- ¿Qué carreras de grado puedo estudiar?
- ¿Cómo es el ingreso y cuáles son los turnos del Seminario Universitario?
- ¿Qué documentación necesito para la preinscripción?
- ¿Qué becas hay para estudiantes?
- ¿Cuándo empiezan los cuatrimestres en 2026?
- ¿Cuáles son las fechas de los exámenes finales?
- ¿Cuál es el horario y el contacto de la biblioteca?
- ¿Quién es el decano de la FRRe?
- ¿Dónde queda la facultad y cómo me contacto?
