Saltar al contenido
Explorar conocimiento

patrón · intermedio · 8 min de lectura

Agentes IA

Un agente IA usa un modelo de lenguaje para decidir pasos, llamar herramientas y mantener estado hasta completar una tarea bajo límites definidos.

No requiere conocimientos previos.

Alcance en breve

Cubre

  • AI agents as LLM-driven systems that plan, use tools, and keep task state
  • tool design, orchestration, guardrails, and human handoff at a conceptual level
  • practical boundaries between agents, fixed workflows, chatbots, and simple tool calls

No cubre

  • multi-agent research taxonomies
  • reinforcement learning agent theory
  • vendor-specific SDK implementation details

Supone

  • The reader understands basic LLM prompts, API calls, tools, and application workflows.

Resumen

Un agente IA es un sistema donde un modelo de lenguaje no solo responde texto, sino que participa en ejecutar una tarea: interpreta un objetivo, decide próximos pasos, llama herramientas, observa resultados y continúa hasta cumplir una condición de término.

Importa porque muchas automatizaciones reales no caben en un único prompt ni en un flujo rígido. Investigar un ticket, comparar documentos, actualizar un CRM o coordinar varias APIs puede requerir decisiones intermedias. Un agente agrega flexibilidad, pero también exige límites: herramientas bien diseñadas, permisos, estado, evaluación y criterios de parada.

Alcance y supuestos

Este paquete cubre agentes IA como patrón de aplicación: objetivo, modelo, herramientas, estado, planificación, observación, guardrails y handoff humano. Distingue agentes de chatbots simples, pipelines fijos y llamadas únicas a herramientas.

No cubre teoría de agentes de reinforcement learning, taxonomías académicas multi-agente, implementación específica de SDKs, seguridad completa ni evaluación avanzada de sistemas agénticos. Asume que entiendes prompts, llamadas API, herramientas y flujos básicos de aplicación.

Modelo mental

Piensa en un asistente operativo con una bandeja de tareas y acceso limitado a sistemas internos. No solo responde "qué haría"; puede buscar un pedido, revisar una política, redactar una respuesta y pedir aprobación si encuentra un caso riesgoso. Su valor está en coordinar pasos, no en una frase aislada.

El modelo de lenguaje es el criterio que decide el siguiente paso. Las herramientas son las acciones disponibles. El estado es la memoria de lo que ya intentó y observó. Los guardrails son las reglas que dicen qué puede hacer solo, cuándo debe detenerse y cuándo necesita escalar.

Un agente bueno no es un LLM con libertad total. Es un sistema con un objetivo acotado, herramientas estrechas y feedback verificable. Mientras más amplia sea la autonomía, más importantes son los límites y la observabilidad.

Uso práctico

Usa un agente IA cuando la tarea requiere varios pasos con decisiones intermedias y no sabes de antemano cuál será la ruta exacta:

  • ✅ Investigar un incidente puede requerir revisar logs, buscar despliegues recientes, correlacionar errores y proponer una causa.
  • ✅ Preparar una respuesta de soporte puede requerir consultar pedido, política, historial y luego redactar con evidencia.
  • ❌ Si siempre ejecutas los mismos tres pasos en el mismo orden, un workflow fijo es más simple y controlable.
  • ❌ Si el modelo solo necesita responder una pregunta con documentos recuperados, RAG sin agente puede ser suficiente.

Ejemplo trabajado: triage de un ticket de soporte con herramientas

Supón que llega un ticket: "mi pedido aparece entregado, pero nunca llegó". Un chatbot simple podría responder con una política genérica. Un agente necesita mirar datos reales, decidir si falta información y proponer el siguiente paso.

Primero defines herramientas pequeñas y seguras:

type ToolResult = {
  ok: boolean;
  data: unknown;
};

type Tool = {
  name: string;
  run(input: Record<string, unknown>): Promise<ToolResult>;
};

const tools: Tool[] = [
  {
    name: "getOrderStatus",
    async run(input) {
      return {
        ok: true,
        data: { orderId: input.orderId, status: "delivered", carrier: "BlueExpress" },
      };
    },
  },
  {
    name: "getRefundPolicy",
    async run() {
      return {
        ok: true,
        data: "Si el pedido figura entregado y el cliente lo disputa, abrir investigación con courier antes de reembolsar.",
      };
    },
  },
];

Cada herramienta hace una cosa y devuelve datos observables. No existe una herramienta peligrosa como doAnythingWithCustomerAccount; el agente solo puede operar dentro de capacidades específicas.

Luego el loop del agente mantiene estado y corta por una condición explícita:

type AgentState = {
  goal: string;
  observations: string[];
  nextAction?: string;
};

async function supportTriageAgent(state: AgentState) {
  state.observations.push("Ticket: pedido entregado no recibido");

  const order = await tools[0].run({ orderId: "ord_123" });
  state.observations.push(`Estado pedido: ${JSON.stringify(order.data)}`);

  const policy = await tools[1].run({});
  state.observations.push(`Política: ${policy.data}`);

  state.nextAction = "Abrir investigación con courier y responder al cliente con plazo estimado";
  return state;
}

El ejemplo es deliberadamente simple: muestra las piezas sin esconderlas dentro de un framework. En producción, el modelo decidiría qué herramienta llamar y con qué argumentos, pero el sistema debería registrar cada observación, validar permisos y detenerse si falta evidencia.

La salida esperada del agente no debería ser solo una respuesta bonita. Debería incluir trazabilidad suficiente para revisar por qué propuso una acción:

Objetivo: resolver ticket de pedido no recibido
Observaciones:
- Ticket: pedido entregado no recibido
- Estado pedido: {"orderId":"ord_123","status":"delivered","carrier":"BlueExpress"}
- Política: abrir investigación con courier antes de reembolsar
Siguiente acción: Abrir investigación con courier y responder al cliente con plazo estimado

Antes de diseñar un agente, revisa cinco preguntas:

  1. ¿La tarea requiere decisiones intermedias o basta un workflow fijo?
  2. ¿Qué herramientas necesita y qué permisos exactos tendrá cada una?
  3. ¿Qué estado debe recordar entre pasos?
  4. ¿Cuál es la condición de término o de handoff humano?
  5. ¿Cómo auditarás acciones, errores y fuentes usadas?

Si esas respuestas son claras, un agente puede coordinar trabajo complejo. Si no lo son, agregar autonomía solo hará el sistema menos predecible.

Evidencia

Conexiones

Relacionados y alternativas

Ver grafo local

Siguiente paso

Relacionado: RAG

Fuentes citadas