Sustain

← Torna a Impara
Guida

5 agosto 2026

· 7 min di lettura

Agenti IA annidati: perché la chat del nostro album ha un agente di ricerca tutto suo

Schema di un agente annidato: l’agente della chat dell’album fa una sola chiamata a uno strumento verso un agente di scavo, che consuma le didascalie nel proprio contesto e restituisce solo l’elenco di foto verificato

L’editor di Sustain include il Designer di album IA — un assistente in chat che dispone le pagine, scrive le didascalie e trova le foto su richiesta. La maggior parte di ciò che fa è un unico passaggio: tu chiedi, lui agisce. Ma alcune richieste nascondono molto lavoro. “Aggiungi le foto di Omri che ride in spiaggia” non è una sola azione — è una ricerca, una lettura delle descrizioni delle foto, un giudizio su quali scatti corrispondano davvero e solo dopo un posizionamento.

Di recente abbiamo ricostruito il modo in cui l’assistente gestisce queste richieste, usando un pattern chiamato agenti annidati: un agente IA che ne invoca un altro, completo, come se fosse un semplice strumento. Questo articolo spiega il pattern, perché il suo vantaggio principale — finestre di contesto più piccole — conta più di quanto sembri, e ripercorre il sistema reale che abbiamo messo in produzione.

Il problema: un assistente che ricorda tutto paga per tutto

Un assistente in chat si regge su una finestra di contesto — la trascrizione continua di tutto ciò che è stato detto e fatto nella conversazione. Ogni volta che l’assistente prende un altro turno, l’intera finestra viene rispedita al modello. Ne deriva una conseguenza insidiosa: qualunque cosa ingombrante entri nella conversazione viene pagata di nuovo a ogni messaggio successivo.

La ricerca fotografica è esattamente questo tipo di ingombro. Il nostro design precedente faceva tirare alla chat gli elenchi grezzi delle foto direttamente dentro la conversazione: per un album di 219 foto, significava 219 blocchi di didascalie, date, punteggi di qualità e tag che finivano nella trascrizione. Abbiamo misurato un singolo turno di quella conversazione a centinaia di migliaia di token in ingresso — per lo più metadati di foto che l’utente non avrebbe mai visto, rispediti a ogni richiesta successiva.

I contesti enormi non sono solo costosi. I modelli diventano misurabilmente peggiori nel seguire le istruzioni quando la frase importante è sepolta sotto una montagna di elenchi — il problema del “perdersi nel mezzo”. Al nostro assistente non serviva una memoria più grande. Gli serviva un modo per fare lavoro ingombrante senza ricordarlo.

Il pattern: un agente come strumento

Gli assistenti IA agiscono attraverso gli strumenti — piccole funzioni come posiziona questa foto o applica questo tema. Uno strumento riceve un input, restituisce un risultato e la conversazione prosegue. L’intuizione degli agenti annidati è che uno strumento non deve per forza essere una semplice funzione. Uno strumento può essere un intero altro agente.

In Sustain, la chat dell’album ha ora uno strumento che chiamiamo dig_photos. Quando la tua richiesta richiede uno scavo vero, la chat passa le tue parole — testuali, nella lingua in cui le hai scritte — a un secondo agente: l’agente di scavo, lo stesso cervello di ricerca che alimenta la ricerca foto nella nostra app iOS. L’agente di scavo esegue il suo ciclo privato:

  • Cerca — combinando ciò che c’è davvero dentro ogni foto (ogni immagine viene descritta in dettaglio quando viene analizzata, così “spiaggia” può corrispondere a una foto che nessuno ha mai etichettato) con persone taggate, date e filtri di qualità. Può cercare più volte, restringendo man mano che scopre cosa c’è.
  • Verifica — leggendo le descrizioni scritte dall’IA delle foto candidate per scartare quelle che ci vanno vicino: la foto in spiaggia in cui però non ride nessuno.
  • Affina — restringendo o riordinando, tenendo il meglio delle raffiche di scatti duplicati.
  • Conclude — restituendo un elenco ordinato e verificato con un riepilogo di una riga.

Tutta quella lettura e tutti quei tentativi avvengono nel contesto usa e getta dell’agente di scavo. Quando finisce, il suo spazio di lavoro viene buttato. L’unica cosa che entra nella conversazione della chat dell’album è l’elenco finale — qualche centinaio di token invece di decine di migliaia.

La versione in una riga

Un agente annidato trasforma “incolla la libreria nella conversazione e pensaci su” in “chiedi a uno specialista e archivia solo la sua conclusione”.

Vantaggio 1: finestre di contesto più piccole (quello grosso)

È il vantaggio su cui si regge l’intero pattern. La trascrizione della chat resta snella — i tuoi messaggi, le sue risposte e risultati compatti. La lettura pesante è messa in quarantena dentro il sotto-agente e buttata via quando ha finito.

Ne discendono direttamente tre cose:

  • I costi smettono di sommarsi. Ciò che non entra mai nella trascrizione non viene mai rispedito. Contro ogni intuizione, far girare un secondo agente IA è spesso più economico del design piatto, perché quello piatto continuava a ripagare quegli elenchi di foto a ogni turno.
  • La qualità sale. Ogni agente legge un prompt breve e mirato sul proprio compito, invece di un mega-prompt su tutto. Chi cerca cerca meglio; chi progetta progetta meglio.
  • Le conversazioni lunghe restano lucide. Una sessione che cerca cinque volte non si degrada, perché nessuna di quelle ricerche ha lasciato residui nella finestra.

Vantaggio 2: un solo cervello, tante interfacce

Poiché l’agente di scavo è un’unità autonoma con un contratto pulito — query in ingresso, elenco verificato in uscita — lo colleghiamo a più di una superficie del prodotto. La ricerca foto nella schermata principale della nostra app iOS e la chat dell’album sul web condividono ora lo stesso cervello di ricerca. Quando gli insegniamo un trucco nuovo, ogni superficie lo impara nello stesso momento.

Questo rispecchia un principio che applichiamo in tutta Sustain: un solo motore per ogni compito. La stessa settimana in cui abbiamo rilasciato la ricerca annidata, abbiamo anche unificato il posizionamento delle foto — il “ricostruisci il mio album” della chat ora usa esattamente la stessa pipeline del pulsante Miglioramento IA, parametri compresi, invece di una copia somigliante. Due motori che si allontanano finiranno prima o poi per non essere d’accordo; un motore solo non può.

Vantaggio 3: comportamento circoscritto e prevedibile

Un agente annidato ha un raggio d’azione contenuto. Il nostro esegue al massimo una manciata di giri di ragionamento, su un modello piccolo e veloce adatto alla ricerca, e il suo risultato viene validato prima di essere ritenuto affidabile — ogni id di foto che restituisce viene confrontato con le foto che possiedi davvero, e se esce dal seminato il sistema ripiega su una semplice ricerca filtrata invece di far fallire il tuo messaggio.

È proprio questa delimitazione a rendere il pattern sicuro da estendere. L’agente di scavo può diventare internamente più intelligente, più loquace o più minuzioso senza alcun rischio di inondare la conversazione dell’album — l’interfaccia tra i due agenti non cambia.

Quando non annidare

Annidare non è gratis — un sotto-agente aggiunge un giro di ragionamento, e quindi un momento di latenza. Perciò la chat dell’album usa una semplice regola di escalation:

  • Le ricerche deterministiche restano piatte. “Foto del 2023”, “foto di Omri”, “ritratti non posizionati” — sono filtri di database istantanei. Avvolgerli in un agente li renderebbe solo più lenti.
  • Le richieste vaghe e con più vincoli salgono di livello. “Omri che ride in spiaggia”, “le 20 migliori del viaggio a Roma” — tutto ciò che richiede ricerca visiva più capacità di giudizio va all’agente di scavo.

Il livello di orchestrazione dovrebbe essere all’altezza della complessità della domanda. Una buona regola pratica dalla nostra esperienza: se un assistente umano dovesse aprire dei file e leggere prima di rispondere, annidalo. Se invece gli basterebbe lanciare una query, no.

La dimostrazione: una richiesta reale, dall’inizio alla fine

Ecco uno scambio vero preso da un album di viaggio. La richiesta è volutamente scomoda — descrive una scena, non una parola chiave:

“trova le foto con vista sulle montagne”

Un paio di secondi dopo la risposta è arrivata sotto forma di immagini: una striscia scorrevole delle sette foto corrispondenti, ciascuna con il suo numero. Scorri fino in fondo e una è contornata d’oro e contrassegnata nuova — l’unica delle sette non ancora su una pagina, cioè l’unica cosa su cui potresti davvero voler intervenire. Niente da decodificare, niente da incrociare.

Sotto quella striscia, l’agente di scavo aveva eseguito il suo ciclo: cercare nell’album, poi leggere le descrizioni delle candidate per tenere le vere vedute di montagna e scartare quelle che ci andavano vicino. Tutta quella lettura è avvenuta nel contesto del sotto-agente ed è stata buttata via. La trascrizione della chat dell’album ha guadagnato una sola breve voce.

Poi una seconda domanda, più mirata, di seguito:

“e le foto di persone su una spiaggia al tramonto?”

Questa volta tre corrispondenze — abbastanza poche perché ciascuna abbia una riga intera: la miniatura, cosa contiene e un pulsante Applica per posizionarla. Stesso agente, stessa ricerca, presentazione diversa, perché tre risultati e trenta risultati non sono lo stesso tipo di risposta.

La distinzione che l’agente sta facendo qui — una spiaggia al tramonto con delle persone contro un tramonto vuoto sull’oceano — non esiste in nessun tag né in nessun filtro. Nasce dal fatto che un secondo agente ha davvero letto cosa c’è nelle immagini, in un contesto che non dovrai mai più pagare.

Cosa significa per te

Niente di tutto questo cambia il modo in cui usi Sustain — ed è proprio il punto. L’assistente diventa semplicemente più veloce con cui parlare, più bravo nelle ricerche difficili e identico su ogni dispositivo, perché il lavoro avviene nel posto giusto. La prossima volta che risponde in un paio di secondi a una richiesta da ago nel pagliaio con una rosa di scatti pulita, saprai: c’era un secondo agente nella stanza, e se n’è già andato.

Domande frequenti

Usiamo i cookie per analizzare l'utilizzo del sito e migliorare la tua esperienza. Scopri di più