¿Te resulta más fácil leer con fondo crema, un tono de color, más contraste o un texto más grande? Elige tus colores y tu texto una sola vez, para todas las páginas.

Lección gratuita

Proyecto final: un agente con límites seguros

Después de esta lección: Puedo planificar un agente con una lista de permitidos, un presupuesto y una aprobación humana.

Lección de 60 minSin comandos

Un agente que desbloquea cuentas

Un agente de IA es un programa en el que un modelo elige acciones, paso a paso. El equipo de informática de una cadena de clínicas dentales quiere uno que lea una incidencia, encuentre al usuario y desbloquee su cuenta.

Un agente actúa, así que un error hace daño de verdad. Podría desbloquear a la persona equivocada o dar vueltas durante una hora. En este proyecto final planificas sus límites y revisas una ejecución grabada.

Al final de esta lección

Nota

Puedo planificar un agente con una lista de permitidos, un presupuesto y una aprobación humana.

Palabras clave

PalabraQué significaEjemplo
Agenteun programa en el que un modelo elige acciones por pasos
Herramientauna acción que el agente puede pedirunlock_account
Lista de permitidoslas únicas herramientas que el agente puede usar
Presupuestoun límite de pasos o de coste
Aprobación humanauna persona aprueba antes una acción de riesgo
Registro de ejecuciónla lista de todos los pasos que dio un agente

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Para profundizar

Nota

Este proyecto planifica límites y revisa una ejecución. Las lecciones de IA de la página Recursos enseñan el resto. Construir agentes. Evaluar agentes. Proteger agentes. Seguridad de agentes a fondo.

La lista de permitidos dice qué herramientas existen

El modelo puede pedir cualquier acción. Tu código decide lo que de verdad se ejecuta.

La lista de permitidos es la lista corta de herramientas que el agente puede usar. Tu programa compara cada petición con ella antes de ejecutar nada. Lo que no está en la lista se bloquea, por razonable que suene. El programa de abajo revisa una muestra grabada de peticiones.

Pruébalo: bloquea lo no permitido

Código: node
// El agente solo puede usar estas herramientas.
const allowed = ["read_ticket", "look_up_user", "unlock_account", "reply"];

// Una muestra grabada: las herramientas que pidió el modelo, en orden.
const asked = ["read_ticket", "look_up_user", "delete_user", "unlock_account", "reply"];

for (const tool of asked) {
  if (allowed.includes(tool)) {
    console.log("ejecuta  ", tool);
  } else {
    console.log("BLOQUEA  ", tool);
  }
}

// Añade "reset_password" a la lista asked y pulsa Ejecutar.
// ¿Se ejecuta o se bloquea? ¿Debería estar en la lista de permitidos?

Un presupuesto y una persona ponen límites

Un presupuesto detiene al agente que da vueltas. Cinco pasos sobran para desbloquear una cuenta. Si se pasa, el agente para y deja la incidencia a una persona.

La aprobación humana es para acciones difíciles de deshacer. Desbloquear una cuenta cambia quién puede entrar, así que antes lo aprueba una persona. Leer una incidencia no tiene riesgo, así que se ejecuta enseguida.

Revisa una ejecución por su registro

Cada paso va al registro de ejecución: la herramienta, su entrada y su resultado. Después de una ejecución de prueba, lees el registro línea a línea.

Busca tres cosas. Una herramienta que no debería estar. Pasos fuera de presupuesto. Un paso de riesgo sin aprobación. El programa muestra una ejecución grabada con notas junto a cada paso.

Pruébalo: revisa una ejecución grabada

Código: python
# Una ejecución grabada del agente de soporte. Presupuesto: 5 pasos.
run = ["read_ticket", "look_up_user", "unlock_account",
       "look_up_user", "unlock_account", "reply"]
BUDGET = 5
RISKY = ["unlock_account"]

step = 1
for tool in run:
    note = ""
    if tool in RISKY:
        note = "necesita que una persona lo apruebe"
    if step > BUDGET:
        note = "fuera de presupuesto"
    print(step, tool, note)
    step = step + 1

# Cambia BUDGET a 6 y vuelve a ejecutar.

Un error frecuente

Advertencia

Mucha gente cree que una frase clara en el prompt, como "nunca borres cuentas", mantiene seguro al agente. Un prompt es una petición, y un modelo puede ignorarla. Pon cada límite en el código, donde se comprueba antes de ejecutar cada herramienta.

¿Enseñas a una clase? Asigna este módulo a tus alumnos con guía del profesor, tareas con corrección automática y un laboratorio para cada alumno.