Il budget di esecuzione di un agente IA è un limite imposto dall'orchestratore sulla quantità di tempo, iterazioni, utilizzo degli strumenti e risorse di calcolo locali che una singola esecuzione può consumare.
Su un home server, un agente condivide CPU, RAM, spazio di archiviazione, larghezza di banda della rete e talvolta una GPU con backup, contenuti multimediali, servizi per la casa intelligente, indici di ricerca e altri carichi di lavoro domestici. Un prompt che chiede al modello di «essere efficiente» è solo un'indicazione comportamentale; non impedisce a un flusso di lavoro confuso di effettuare un'altra chiamata a uno strumento, avviare un'altra iterazione del ciclo o mantenere indefinitamente un acceleratore in uso. Un budget di esecuzione trasforma queste aspettative sulle risorse in contatori e scadenze che il runtime può applicare anche quando il modello preferirebbe continuare.
Un budget di esecuzione è un involucro del runtime, non un singolo campo standard di protocollo
«Budget di esecuzione» è da intendere soprattutto come un termine operativo ombrello per diversi limiti applicabili, non come un'unica impostazione universale condivisa da ogni framework per agenti. Un sistema può contare le chiamate agli strumenti e i passaggi del grafo, un altro può imporre scadenze basate sul tempo effettivo, mentre il runtime del container può limitare separatamente CPU o memoria.
Il middleware di LangChain può imporre un limite alle chiamate agli strumenti per esecuzione o thread, dimostrando l'importante differenza tra un vincolo del runtime conteggiato e una richiesta in linguaggio naturale di interrompersi dopo «alcune» azioni. Il confine rigido è responsabilità dell'orchestratore, non della memoria che il modello ha dell'istruzione.
Un budget utile è quindi multidimensionale. Può includere turni del modello, passaggi del grafo, chiamate agli strumenti, token, tempo trascorso, attività simultanee, tempo di CPU, memoria o occupazione dell'acceleratore, in base a ciò che può mettere a rischio la macchina locale.
Le diverse dimensioni non si sostituiscono a vicenda: un'esecuzione può effettuare solo due chiamate agli strumenti e tuttavia trascorrere dieci minuti in attesa di una di esse, oppure completare molte chiamate economiche in sola lettura senza sottoporre la GPU ad alcuno stress.
I budget per passaggi e chiamate agli strumenti interrompono i cicli prima che diventino esecuzioni senza fine
I grafi degli agenti spesso contengono cicli legittimi perché il modello può recuperare informazioni, esaminare un risultato, scegliere uno strumento, valutare l'esito e ripetere il processo. La stessa flessibilità diventa una modalità di errore quando lo stato non raggiunge mai una condizione terminale e l'agente continua a ripetere un'azione che non produce nuove informazioni.
LangGraph espone un limite dei passaggi del grafo che limita il numero di super-passaggi in una singola esecuzione. Un contatore rigido fornisce un punto di arresto anche quando un modello locale interpreta erroneamente un errore, riformula ripetutamente la stessa query o non riconosce che il proprio piano non sta più progredendo.
L'analisi di ZimaSpace sui cicli ripetuti di chiamate agli strumenti spiega perché la ripetizione a livello del modello può persistere in un flusso di lavoro autogestito. Un budget di esecuzione non diagnostica la causa principale del ciclo; limita la durata consentita a quel malfunzionamento prima che il sistema riprenda il controllo.
I budget basati sul tempo effettivo limitano le dipendenze lente che i soli contatori non rilevano
Un flusso di lavoro può rimanere al di sotto del proprio limite di passaggi e tuttavia occupare il server troppo a lungo quando una query al NAS si blocca, un'API remota va in timeout lentamente o diversi tentativi attendono in sequenza. Il tempo trascorso misura l'attesa complessiva dell'utente e la durata per cui le risorse locali rimangono riservate, aspetti diversi dal conteggio delle azioni logiche.
I sistemi di gestione dei flussi di lavoro possono imporre una durata massima dell'esecuzione indipendentemente dal numero delle singole attività. Per un agente, la scadenza esterna dovrebbe essere coordinata con i timeout degli strumenti interni e le politiche di nuovo tentativo, in modo che una singola dipendenza non consumi l'intera disponibilità prima che l'orchestratore abbia il tempo di restituire un risultato parziale utile.
I budget temporali creano anche un confine di pianificazione tra il lavoro interattivo e quello in background. Un comando vocale può richiedere una scadenza breve, mentre un agente notturno per l'indicizzazione delle foto può ricevere una finestra molto più ampia senza bloccare i servizi interattivi della casa.
Una scadenza non è automaticamente la risposta corretta per ogni flusso di lavoro di lunga durata; i processi persistenti in background possono essere progettati per mettersi in pausa e riprendere dopo giorni. Il budget dovrebbe riflettere il livello di servizio previsto per l'attività, invece di applicare un timeout arbitrario a ogni agente.
I limiti di CPU e memoria proteggono gli altri carichi di lavoro dell'home server
I contatori logici non possono impedire a una singola chiamata consentita al modello di consumare quasi tutta la RAM o la CPU disponibile, quindi i limiti delle risorse fisiche appartengono a un livello separato dell'involucro di esecuzione. Questo è importante su un home server consolidato, dove l'agente è solo uno dei servizi che condividono la macchina, insieme ad archiviazione, contenuti multimediali, automazione e backup.
Docker può imporre vincoli di CPU e memoria su un container, consentendo all'host di mantenere l'agente entro una quota definita anche se il processo non dispone di una nozione affidabile delle priorità domestiche. Controlli analoghi sui dispositivi o sullo scheduler possono limitare l'accesso agli acceleratori quando la piattaforma li supporta.
I limiti fisici e i budget logici risolvono problemi diversi. Un limite di memoria può impedire a un singolo processo di esaurire le risorse dell'host, mentre un budget per le chiamate agli strumenti può impedire a un agente con un consumo ridotto di memoria di effettuare centinaia di azioni esterne; una solida progettazione locale può aver bisogno di entrambi.
L'esaurimento del budget richiede un esito esplicito, non un'interruzione silenziosa
Un limite diventa parte della semantica del flusso di lavoro quando il sistema definisce cosa accade al raggiungimento del confine. Interrompere bruscamente un'esecuzione può lasciare l'utente senza spiegazioni e può essere rischioso se l'agente ha già completato alcuni effetti collaterali prima che venisse impedito il passaggio finale.
Alcuni runtime per agenti espongono lo stato dei passaggi rimanenti, così un flusso di lavoro può rilevare che si sta avvicinando al proprio limite e scegliere un percorso di completamento più breve. L'orchestratore può quindi interrompere l'esecuzione restituendo un risultato parziale, richiedere l'autorizzazione per un budget maggiore, rimandare il lavoro in background o restituire l'elenco esatto degli obblighi non completati, invece di superare silenziosamente il limite.
Gli strumenti che producono effetti collaterali richiedono una regola ancora più chiara. L'esaurimento del budget non dovrebbe causare un nuovo tentativo non verificato di un'azione che potrebbe essere già riuscita, e l'estensione del budget non dovrebbe eliminare gli ID delle operazioni, le approvazioni o altri dati di stato necessari per riprendere l'esecuzione in sicurezza.
Il budget migliore, quindi, non è semplicemente il numero più basso che impedisce il lavoro senza controllo. È un involucro di risorse abbinato a una politica di esaurimento che preserva i progressi visibili all'utente, protegge i servizi che condividono l'host e mantiene esplicita l'azione successiva.
Domande frequenti
Il budget di esecuzione di un agente IA è semplicemente un limite di token?
No. I token riguardano il contesto e la generazione dal lato del modello, mentre un budget di esecuzione può anche limitare passaggi del grafo, chiamate agli strumenti, tempo trascorso, concorrenza, CPU, memoria o altre risorse importanti per il flusso di lavoro e l'host.
Ogni attività IA domestica dovrebbe usare lo stesso budget di esecuzione?
No. I comandi interattivi, la ricerca nei documenti, l'indicizzazione in background e la manutenzione di lunga durata hanno profili diversi in termini di latenza, effetti collaterali e risorse; i relativi involcri dovrebbero riflettere la classe dell'attività e i servizi che condividono la macchina.
Cosa dovrebbe accadere quando il budget è esaurito?
Il runtime dovrebbe seguire una politica esplicita, ad esempio restituire un risultato parziale, preservare uno stato riprendibile, richiedere l'autorizzazione per un budget maggiore o interrompere l'esecuzione in sicurezza. Non dovrebbe ignorare silenziosamente il limite né perdere traccia degli effetti collaterali già completati.
Hub Tecnologico e AI
Altro da leggere

Che cos’è lo stato di Plex e quali parti devono essere persistenti?
Lo stato persistente di Plex è l’insieme di informazioni che conserva l’esperienza del server tra un riavvio e una ricostruzione; i contenuti multimediali e...

In che modo Plex gestisce l’autenticazione nelle sessioni locali e remote?
L’autenticazione Plex inizia con l’identità del server e dell’account; quindi i percorsi di rete locali o remoti determinano la raggiungibilità e il comportamento della...

Perché la ricerca in Plex può rallentare man mano che aumentano i dati della libreria?
La crescita della libreria, da sola, non è la diagnosi. Verifica la struttura delle query, gli indici, lo stato della cache, la latenza dello...

