Sustain

← Volver a Aprende
Guía

5 de agosto de 2026

· 7 min de lectura

Agentes de IA anidados: por qué el chat de nuestros álbumes tiene su propio agente de búsqueda

Diagrama de un agente anidado: el agente del chat del álbum hace una única llamada a una herramienta —el agente de búsqueda—, que consume las descripciones en su propio contexto y devuelve solo la lista de fotos ya verificada

El editor de Sustain viene con el AI Album Designer: un asistente de chat que organiza páginas, escribe pies de foto y busca fotos cuando se lo pides. La mayoría de lo que hace es un solo paso: preguntas, actúa. Pero algunas peticiones esconden mucho trabajo. “Añade las fotos de Omri riéndose en la playa” no es una acción: es una búsqueda, una lectura de las descripciones de las fotos, un juicio sobre qué tomas encajan de verdad y, solo entonces, una colocación.

Hace poco reconstruimos la forma en que el asistente maneja esas peticiones, con un patrón llamado agentes anidados: un agente de IA que invoca a otro agente de IA completo como si fuera una simple herramienta. Este artículo explica el patrón, por qué su beneficio principal —ventanas de contexto más pequeñas— importa más de lo que parece, y repasa el sistema real que hemos puesto en marcha.

El problema: un asistente que lo recuerda todo lo paga todo

Un asistente de chat se apoya en una ventana de contexto: la transcripción viva de todo lo dicho y hecho en la conversación. Cada vez que el asistente toma otro turno, se le vuelve a enviar la ventana entera. Eso tiene una consecuencia traicionera: todo lo voluminoso que entra en la conversación se paga otra vez en cada mensaje posterior.

La búsqueda de fotos es exactamente ese tipo de volumen. Nuestro diseño anterior hacía que el chat volcase listados de fotos en bruto directamente en la conversación: para un álbum de 219 fotos, eso significaba 219 bloques de pies de foto, fechas, puntuaciones de calidad y etiquetas aterrizando en la transcripción. Medimos un solo turno de esa conversación en cientos de miles de tokens de entrada, en su mayoría metadatos de fotos que el usuario nunca vería, reenviados con cada petición siguiente.

Los contextos grandes no solo son caros. Los modelos se vuelven sensiblemente peores siguiendo instrucciones cuando la frase importante queda enterrada bajo una montaña de listados: el problema de “perderse en el medio”. Nuestro asistente no necesitaba más memoria. Necesitaba una manera de hacer trabajo voluminoso sin recordarlo.

El patrón: un agente como herramienta

Los asistentes de IA actúan mediante herramientas: pequeñas funciones como coloca esta foto o aplica este tema. Una herramienta recibe una entrada, devuelve un resultado y la conversación sigue. La idea de los agentes anidados es que una herramienta no tiene por qué ser una función sencilla. Una herramienta puede ser otro agente entero.

En Sustain, el chat del álbum tiene ahora una herramienta que llamamos dig_photos. Cuando tu petición exige escarbar de verdad, el chat le pasa tus palabras —tal cual, en el idioma en que las hayas escrito— a un segundo agente: el agente de búsqueda, el mismo cerebro que impulsa la búsqueda de fotos en nuestra app de iOS. Ese agente ejecuta su propio bucle privado:

  • Buscar — combinando lo que hay realmente dentro de cada foto (cada imagen se describe en detalle al analizarse, así que “playa” puede coincidir con una foto que nadie etiquetó nunca) con personas etiquetadas, fechas y filtros de calidad. Puede buscar varias veces, acotando a medida que descubre qué hay.
  • Verificar — leyendo las descripciones escritas por la IA de las fotos candidatas para descartar las que casi encajan: la foto de playa en la que nadie se ríe.
  • Afinar — acotando o reordenando, y quedándose con la mejor de las ráfagas duplicadas.
  • Terminar — devolviendo una lista ordenada y verificada con un resumen de una línea.

Toda esa lectura y esos reintentos ocurren en el contexto propio y desechable del agente de búsqueda. Cuando termina, su espacio de trabajo se descarta. Lo único que entra en la conversación del chat del álbum es la lista final: unos pocos cientos de tokens en lugar de decenas de miles.

La versión de una línea

Un agente anidado convierte “pega la biblioteca entera en la conversación y piensa mucho” en “pregunta a un especialista y archiva solo su conclusión”.

Beneficio 1: ventanas de contexto más pequeñas (el grande)

Este es el beneficio del que pende todo el patrón. La transcripción del chat se mantiene ligera: tus mensajes, sus respuestas y resultados compactos. La lectura pesada queda en cuarentena dentro del subagente y se tira cuando acaba.

De ahí se derivan tres cosas:

  • El coste deja de acumularse. El volumen que nunca entra en la transcripción nunca se reenvía. Por contradictorio que parezca, ejecutar un segundo agente de IA suele salir más barato que el diseño plano, porque el diseño plano seguía pagando esos listados de fotos en cada turno.
  • La calidad sube. Cada agente lee una instrucción corta y centrada sobre su propio trabajo, en vez de una megainstrucción sobre todo. El buscador busca mejor; el diseñador diseña mejor.
  • Las conversaciones largas siguen afiladas. Una sesión que busca cinco veces no se degrada, porque ninguna de esas búsquedas dejó residuo en la ventana.

Beneficio 2: un solo cerebro, muchas superficies

Como el agente de búsqueda es una unidad autónoma con un contrato limpio —entra una consulta, sale una lista verificada—, apuntamos hacia él más de una superficie del producto. La búsqueda de fotos de la pantalla de inicio de iOS y el chat del álbum en la web comparten ahora el mismo cerebro de búsqueda. Cuando le enseñamos un truco nuevo, todas las superficies lo aprenden a la vez.

Esto refleja un principio que aplicamos en todo Sustain: un motor por trabajo. La misma semana en que lanzamos la búsqueda anidada, también unificamos la colocación de fotos: el “reconstruye mi álbum” del chat ahora usa exactamente el mismo proceso que el botón de AI Mejorar, parámetros incluidos, en lugar de uno parecido. Dos motores que se separan acaban por contradecirse; uno solo no puede.

Beneficio 3: un comportamiento acotado y predecible

Un agente anidado es un radio de acción contenido. El nuestro ejecuta como mucho un puñado de rondas de razonamiento, sobre un modelo pequeño y rápido apto para buscar, y su salida se valida antes de darla por buena: cada id de foto que devuelve se contrasta con las fotos que realmente tienes y, si se sale del guion, el sistema recurre a una búsqueda filtrada normal en lugar de fallarte el mensaje.

Esa contención es también lo que hace que el patrón sea seguro de ampliar. El agente de búsqueda puede volverse más listo, más hablador o más minucioso por dentro sin ningún riesgo de inundar la conversación del álbum: la interfaz entre ambos agentes no cambia.

Cuándo no anidar

Anidar no es gratis: un subagente añade una ronda de razonamiento, y eso significa un instante de latencia. Por eso el chat del álbum usa una regla de escalado sencilla:

  • Las consultas deterministas se quedan planas. “Fotos de 2023”, “fotos de Omri”, “retratos sin colocar”: son filtros de base de datos instantáneos. Envolverlos en un agente solo los haría más lentos.
  • Las peticiones difusas y con varias condiciones escalan. “Omri riéndose en la playa”, “las 20 mejores del viaje a Roma”: todo lo que necesita búsqueda visual más criterio va al agente de búsqueda.

El nivel de orquestación debería estar a la altura de la complejidad de la pregunta. Una buena regla que nos ha dado la experiencia: si un asistente humano necesitaría abrir archivos y leer antes de responder, anídalo. Si solo tendría que lanzar una consulta, no.

La demostración: una petición real, de principio a fin

Aquí tienes un intercambio real de un álbum de viaje. La petición es deliberadamente incómoda: describe una escena, no una palabra clave:

“busca fotos con vistas a la montaña”

Un par de segundos después llegó la respuesta en forma de imágenes: una tira deslizable con las siete fotos que coincidían, cada una con su número. Al llegar al final, una aparece resaltada en dorado y etiquetada como nueva: la única de las siete que aún no está en ninguna página, que es justo lo único con lo que quizá quieras hacer algo. Nada que descifrar, nada que cotejar.

Bajo esa tira, el agente de búsqueda había ejecutado su propio bucle: buscar en el álbum y luego leer las descripciones de las candidatas para quedarse con las vistas de montaña de verdad y descartar las que casi encajaban. Toda esa lectura ocurrió en el contexto del subagente y se tiró. La transcripción del chat del álbum ganó una entrada corta.

Y luego, una segunda pregunta más concreta en el mismo aliento:

“¿y las fotos de gente en una playa al atardecer?”

Esta vez, tres coincidencias: las suficientemente pocas como para que cada una tenga su propia fila —la miniatura, lo que sale en ella y un botón Aplicar para colocarla—. Mismo agente, misma búsqueda, distinta presentación, porque tres resultados y treinta resultados no son el mismo tipo de respuesta.

La distinción que hace aquí el agente —una playa al atardecer con gente frente a un atardecer vacío sobre el mar— no existe en ninguna etiqueta ni en ningún filtro. Viene de que un segundo agente ha leído de verdad lo que hay en las imágenes, en un contexto por el que nunca tendrás que volver a pagar.

Qué significa esto para ti

Nada de esto cambia la forma en que usas Sustain, y esa es justamente la idea. El asistente simplemente resulta más rápido de conversar, mejor en las búsquedas difíciles e idéntico en todos los dispositivos, porque el trabajo ocurre en el sitio adecuado. La próxima vez que responda en un par de segundos a una petición de aguja en un pajar con una lista corta y limpia, ya lo sabrás: había un segundo agente en la sala, y ya se ha ido.

Preguntas frecuentes

¿Listo para probarlo?

Prueba el AI Album Designer

Usamos cookies para analizar el uso del sitio y mejorar tu experiencia. Más información