Harness engineering: che cos'è e come funziona
Una guida in parole semplici su cosa sono gli harness per l'IA e su come l'harness engineering definisce ciò che gli agenti di IA possono fare.

Cosa si intende per harness engineering
L'harness engineering è il lavoro di costruzione dell'harness di uno strumento di IA, ovvero di ogni parte dello strumento tranne il modello di IA.
Il modello è il sistema di IA, addestrato su grandi volumi di testo per essere in grado di leggere e scrivere testi. Tra gli esempi di modelli di IA figurano GPT di OpenAI, Claude di Anthropic e Gemini di Google.
Da solo, un modello può soltanto ricevere testo (e talvolta immagini o audio) e restituire testo. Non ricorda le conversazioni passate, non può cercare informazioni aggiornate né eseguire codice. Ha quindi bisogno di un harness che gestisca quali informazioni riceve il modello, quali app può usare, cosa gli è consentito fare e come viene verificato il suo lavoro.
Anche un semplice assistente di chat ha bisogno di un harness. Il modello dimentica ogni scambio non appena risponde, quindi l'harness tiene traccia della conversazione. Se qualcuno chiede informazioni su Parigi e poi aggiunge "quanti abitanti ha?", l'harness invia entrambe le domande al modello insieme. È così che il modello capisce che la seconda domanda si riferisce a Parigi.
L'harness engineering è uno dei motivi per cui due strumenti basati sullo stesso modello possono avere prestazioni così diverse. Ad esempio, in un test indipendente, i ricercatori hanno mantenuto invariato il modello (GPT5) e hanno cambiato solo l'harness: il punteggio del modello in un test di programmazione è variato fino all'11%.
Gli sviluppatori di modelli di IA come Anthropic e OpenAI realizzano harness per i propri prodotti di IA, come Claude Code e Codex. Le aziende che sviluppano prodotti di IA, a loro volta, progettano harness per i modelli sottostanti che scelgono. Anche chi usa gli strumenti di IA contribuisce a definire una parte dell'harness. Molti strumenti consentono infatti di aggiungere istruzioni permanenti, collegare app e scegliere quali azioni richiedono la propria approvazione prima che lo strumento proceda.
Harness engineering per gli agenti di IA
Ogni strumento di IA ha un harness, ma l'harness engineering diventa particolarmente importante quando si lavora con gli agenti di IA. Gli agenti gestiscono in autonomia attività in più passaggi, come analizzare i concorrenti e inserire i risultati in un foglio di calcolo, e l'harness esegue ogni passaggio. Quindi, se l'harness commette un errore, ad esempio recuperando i prezzi dell'anno scorso, questo si ripercuote anche su tutti i passaggi successivi.
La maggior parte degli harness per agenti è composta da sei parti principali:
1. Il ciclo dell'agente
Il ciclo dell'agente è il codice all'interno dell'harness che fa avanzare un'attività, un passaggio alla volta.
Il modello di IA decide il passaggio successivo necessario per completare l'attività e scrive una chiamata a uno strumento: una breve richiesta che indica uno strumento dell'harness, come la ricerca web, e cosa deve fare quello strumento.
L'harness individua la richiesta, esegue la ricerca e aggiunge i risultati a ciò che il modello può vedere. Il modello li legge e decide cosa fare dopo.
2. Gestione del contesto
Durante l'addestramento un modello acquisisce conoscenze generali, che però si fermano alla data in cui l'addestramento è terminato. Queste conoscenze non includono nulla di specifico per l'attività in corso, come i file di un'azienda, le notizie del giorno o ciò che è stato detto in precedenza nella conversazione.
Per tutto questo, il modello dipende dalla sua finestra di contesto: il testo che l'harness gli fornisce prima di ogni risposta, come le istruzioni, la query, la conversazione fino a quel momento e i risultati di ricerca.
La finestra può contenere solo una quantità limitata di testo. E anche prima che si riempia, a volte i modelli non colgono le informazioni che si trovano a metà di input lunghi.
Per questo l'harness si occupa della gestione del contesto e seleziona solo le informazioni necessarie a ciascun passaggio. Ad esempio, se l'attività consiste nel confrontare i prezzi di cinque concorrenti, l'harness potrebbe includere la pagina dei prezzi di ciascuna azienda anziché l'intero sito web. Nelle attività lunghe, l'harness può anche sostituire il resoconto dettagliato dei passaggi precedenti con un breve riepilogo, in modo che il modello tenga traccia di ciò che ha fatto senza che quella cronologia riempia la finestra.
3. Strumenti
Gli strumenti sono porzioni di codice che eseguono le azioni richieste dal modello. Ogni strumento gestisce un tipo di azione, come cercare sul web, aprire e leggere una pagina web, eseguire codice o modificare un file. Quando il modello scrive una chiamata a uno strumento, l'harness la passa allo strumento giusto e restituisce il risultato.
Molti harness includono anche i connettori, ovvero strumenti che collegano l'agente a un'app specifica, come l'email, un calendario o un drive condiviso, utilizzando l'accesso concesso da una persona. Con un connettore per il calendario, ad esempio, un agente può verificare la disponibilità di qualcuno prima di proporre un orario per una riunione.
4. Memoria
La memoria è costituita da informazioni archiviate che vengono mantenute da una sessione all'altra. Durante una sessione, l'harness salva brevi note, come le preferenze di una persona o lo stato di avanzamento di un progetto. All'inizio della sessione successiva, l'harness aggiunge quelle note alla finestra di contesto, così il modello le legge prima della nuova query. È così che un agente può, ad esempio, riprendere un report settimanale da dove l'aveva lasciato invece di ricominciare da capo.
5. Autorizzazioni
Le autorizzazioni sono regole che stabiliscono a cosa può accedere un agente e cosa può fare. Le regole di accesso definiscono quali file, app o siti web può aprire. Le regole di approvazione definiscono quali azioni devono attendere il via libera di una persona, come inviare un messaggio o effettuare un acquisto.
L'azienda che crea l'agente imposta alcune di queste regole nel codice dell'harness. Gli amministratori di un'organizzazione possono poi aggiungerne di proprie e i singoli utenti possono scegliere, ad esempio, quali account collegare.
6. Verifica
La verifica è il codice che controlla il lavoro dell'agente prima che arrivi a una persona. Si basa su due tipi di controlli:
- Regole fisse, ovvero test specifici che danno sempre lo stesso esito, positivo o negativo, come confermare che ogni dato di un report compaia in un documento effettivamente letto dall'agente.
- Una revisione da parte di un altro modello di IA, che legge il lavoro e lo valuta. Può individuare problemi difficili da tradurre in una regola, come un riepilogo che tralascia un punto importante.
Nessun controllo da solo rileva tutto, quindi gli harness di solito combinano entrambi i tipi. Quando un controllo trova un problema, l'harness ne aggiunge una descrizione alla finestra di contesto del modello e rimanda l'attività nel ciclo dell'agente. Il modello corregge il problema e riprova, così molti errori vengono corretti prima che l'utente veda il risultato.
Esempi di harness engineering
Prepararsi a una riunione con un cliente
Attività: un account manager chiede a un agente di preparare un briefing per la riunione di domani con un cliente, che includa le questioni aperte e una bozza di ordine del giorno.
Cosa fa l'harness:
- Tramite un connettore email, l'agente cerca nella casella di posta del manager i messaggi scambiati con il cliente.
- Le autorizzazioni gli consentono di leggere le email, ma non di inviarle.
- La gestione del contesto passa al modello solo i messaggi degli ultimi tre mesi scambiati con quel cliente, non l'intera casella di posta.
- Il ciclo dell'agente esegue diverse tornate di ricerca e lettura, e il modello raggruppa ciò che trova in questioni aperte.
- La verifica controlla poi che ogni questione presente nel briefing rimandi a un'email reale.
Risultato possibile: il manager riceve un briefing di una pagina in cui ogni punto è riconducibile all'email di origine.
Aggiornare un report mensile sulle vendite
Attività: un responsabile delle operazioni chiede a un agente di aggiornare il report mensile sulle vendite con i dati di questo mese.
Cosa fa l'harness:
- La memoria carica le note della sessione del mese scorso, tra cui il formato del report e la richiesta del responsabile di arrotondare i valori al migliaio più vicino.
- Uno strumento per i file apre il foglio di calcolo delle vendite sul drive condiviso del team.
- Le autorizzazioni consentono all'agente di modificare la bozza del report, ma non il foglio di calcolo di origine, così i dati originali non possono essere modificati per errore.
- La verifica controlla che i totali del report corrispondano a quelli del foglio di calcolo.
Risultato possibile: il report arriva nello stesso formato di quello del mese scorso, senza che l'utente debba spiegarlo di nuovo.
Smistare una casella di posta condivisa
Attività: un team di assistenza chiede a un agente di smistare per argomento le richieste arrivate in mattinata e di preparare bozze di risposta per quelle più comuni.
Cosa fa l'harness:
- Il ciclo dell'agente esamina la casella di posta un messaggio alla volta.
- Per ciascun messaggio, il modello sceglie un'etichetta di argomento e l'harness la applica tramite il connettore email.
- All'inizio dell'attività, l'harness aggiunge alla finestra di contesto i template di risposta approvati dal team come guida, così il modello basa ogni bozza su un template.
- Una regola di approvazione mantiene ogni risposta come bozza finché qualcuno del team non la rivede e la invia.
Risultato possibile: il team inizia la giornata con le richieste già smistate e le risposte pronte per la revisione.
Correggere un bug in un sito web
Attività: uno sviluppatore chiede a un agente di programmazione di correggere un bug che impedisce il funzionamento di un pulsante di pagamento.
Cosa fa l'harness:
- L'agente lavora in una sandbox, una copia isolata del codice in cui le sue modifiche non possono influire sul sito web in produzione.
- Uno strumento per il codice consente al modello di leggere e modificare i file.
- Dopo ogni modifica, la verifica esegue i test automatici del progetto.
- Eventuali errori vengono rimandati al modello come nuove informazioni.
Risultato possibile: l'agente continua a perfezionare la correzione finché i test non vengono superati. Lo sviluppatore esamina poi la modifica prima che venga pubblicata.
Harness engineering, prompt engineering e context engineering a confronto
Il prompt engineering consiste nel costruire e ottimizzare una singola query. Il context engineering consiste nel gestire tutto ciò che il modello vede. L'harness engineering è il processo di progettazione e miglioramento dell'intero sistema all'interno del quale opera il modello.
Termine | Chi se ne occupa di solito | Esempio da un'attività di analisi dei concorrenti |
Prompt engineering | Chiunque scriva una query | Chiedere "una riga per ogni concorrente, una colonna per ogni fascia di prezzo" |
Context engineering | Le persone che costruiscono l'harness, oltre agli utenti che allegano file o template | Fornire al modello la pagina dei prezzi di ciascun concorrente e il template del foglio di calcolo del team |
Harness engineering | Le aziende che realizzano prodotti di IA, oltre ai team e agli utenti che scelgono impostazioni e preferenze e caricano informazioni | Decidere quali strumenti può usare l'agente, quali azioni richiedono l'approvazione e come viene verificato il suo lavoro |
Come gli utenti possono influire sull'harness di un'IA
Gran parte dell'harness di un agente proviene dall'azienda che crea l'agente, ma molti prodotti di IA consentono agli utenti di modificarne una parte tramite impostazioni come istruzioni personalizzate, app collegate e approvazioni.
Gli utenti possono plasmare l'harness di un agente, e migliorare così i risultati dell'agente, in quattro modi:
1. Istruzioni permanenti
Le istruzioni permanenti sono note che una persona scrive una sola volta, in modo che l'harness possa aggiungerle alla finestra di contesto all'inizio di ogni attività. Vale la pena impostarle per tutto ciò che altrimenti si dovrebbe ripetere in una query dopo l'altra: chi si è e di cosa ci si occupa, come si preferisce che vengano scritti i testi o le regole per un'attività ricorrente, come il report mensile di un cliente.
Molti prodotti di IA offrono istruzioni permanenti su due livelli. Le istruzioni a livello di account sono adatte a ciò che vale per tutto il lavoro, come le preferenze ortografiche. Le istruzioni di progetto sono adatte a un singolo cliente o flusso di lavoro, così le indicazioni pensate per uno non si estendono agli altri.
Le istruzioni permanenti funzionano allo stesso modo negli assistenti di chat e negli agenti, ma gli agenti ne dipendono di più. In una chat, una persona può correggere l'IA dopo ogni risposta. Un agente può invece compiere molti passaggi prima che qualcuno veda il suo lavoro, quindi le istruzioni fornite in anticipo sono uno dei pochi modi per guidarlo lungo il percorso.
Come scrivere istruzioni permanenti efficaci
- Inizia con un'istruzione breve, ad esempio: "Sono un marketing manager in un'azienda di software. Scrivi in un inglese semplice, mantieni i riepiloghi sotto le 200 parole e usa l'ortografia statunitense."
- Aggiungi altre istruzioni quando l'IA commette un errore. Se l'IA continua ad arrotondare valori che al team servono esatti, aggiungi una riga per specificarlo.
- Rendi le istruzioni specifiche: "Fornisci valori esatti, mai arrotondati" funziona meglio di "Sii preciso".
- Mantieni l'elenco breve ed elimina le righe quando non sono più utili, perché ogni riga occupa spazio nella finestra di contesto.
2. App collegate
Le app collegate connettono un prodotto di IA agli strumenti che una persona usa già, come l'email, un calendario o un drive condiviso. Una volta collegata un'app, l'IA può lavorare con le informazioni della persona anziché solo con ciò che viene incollato nella chat.
Vale la pena configurare i collegamenti quando un'attività dipende da informazioni che si trovano in quelle app, come preparare il briefing di una riunione a partire da thread di email o riassumere documenti su un drive condiviso.
Come collegare le app in sicurezza
- Collega solo le app necessarie per un'attività, perché ogni collegamento aggiunge un'ulteriore possibilità di errore.
- Scegli l'accesso in sola lettura quando è disponibile. Ad esempio, un agente che prepara i briefing delle riunioni deve leggere le email, non inviarle.
- Imposta i collegamenti per progetto, se il prodotto lo consente. In Perplexity, ad esempio, è possibile scegliere quali connettori usa ciascun progetto.
- Ricorda di scollegare le app che non usi più.
3. Impostazioni di approvazione
Le impostazioni di approvazione stabiliscono quali azioni devono attendere il via libera di una persona prima che l'IA proceda. Alcune approvazioni sono integrate nel prodotto e alcuni prodotti consentono di scegliere per quali altre azioni sia necessaria.
Come impostare le regole di approvazione
- Richiedi l'approvazione per le azioni irreversibili, come inviare un messaggio, effettuare un acquisto o eliminare un file.
- Mantieni breve l'elenco delle azioni che richiedono approvazione. Se un agente chiede il via libera per ogni piccolo passaggio, le persone iniziano ad approvare senza leggere.
4. Standard e verifiche
La maggior parte dei prodotti di IA include già alcuni standard. Perplexity, ad esempio, accompagna le sue risposte con le citazioni, così ogni affermazione può essere verificata. Gli standard impostati dall'utente aggiungono ciò che un prodotto non può sapere da solo, come il formato di report preferito da un team.
Come impostare gli standard per il lavoro dell'IA
- Fornisci un template per le attività ricorrenti, in modo che l'IA abbia una struttura fissa da compilare.
- Condividi un esempio di lavoro passato che il team ha apprezzato, così l'IA potrà riprenderne il tono e il livello di dettaglio.
- Chiedi un link alla fonte accanto a ogni dato.
- Esamina con attenzione i primi risultati e trasforma le lacune ricorrenti in una nuova istruzione permanente.
L'approccio di Perplexity agli harness per agenti
Perplexity Computer funziona su un harness indipendente dal modello, che riunisce oltre 20 modelli avanzati in un unico sistema. Suddivide ogni attività in sottoattività, le affida a subagenti (agenti separati, ciascuno dei quali si occupa di una parte) e indirizza ogni porzione di lavoro al modello più adatto.
Scopri come configurare istruzioni, file e connettori nella guida ai progetti di Perplexity.
Domande frequenti
Che cos'è un harness engineer?
Un harness engineer progetta e gestisce il sistema che consente a un modello di IA di svolgere un lavoro affidabile. Ciò può significare aggiungere un nuovo strumento che l'agente può usare, individuare il motivo per cui un agente continua a commettere lo stesso errore o rendere più rigorosi i controlli che esegue prima di completare un'attività. Non è una qualifica professionale standard, anche se la situazione potrebbe cambiare. Di solito questo lavoro viene svolto da ingegneri del software presso aziende di IA o in team che sviluppano agenti. Nel settore manifatturiero, la stessa qualifica indica chi progetta cablaggi (wire harness), i fasci di cavi presenti all'interno di automobili e macchinari.
Che cos'è un harness per agenti?
Con harness per agenti si intende di solito tutto ciò che compone un agente di IA, a eccezione del modello stesso. Comprende il codice che esegue il ciclo dell'agente, gestisce il contesto, effettua le chiamate agli strumenti, archivia la memoria, applica le autorizzazioni e verifica il lavoro dell'agente prima che arrivi a una persona.
Ogni strumento di IA ha un harness?
Sì. Anche un semplice assistente di chat si affida a un harness per tenere traccia della conversazione, perché il modello da solo non ricorda i messaggi precedenti.
Gli sviluppatori possono anche usare un modello inviandogli richieste dal proprio software tramite un'API (una connessione che consente a un programma di inviare richieste a un altro). In questo caso, è il codice dello sviluppatore a svolgere il ruolo dell'harness.
Modelli migliori renderanno superflui gli harness?
I modelli migliori potrebbero aver bisogno di meno indicazioni passo passo, quindi parte di ciò che gli harness fanno oggi potrebbe ridursi. Ma un modello, da solo, si limita a trasformare testo in testo. Non ha una connessione a Internet né accesso ad altre app. L'accesso ai file, l'esecuzione di azioni e l'applicazione delle regole di approvazione avvengono tutti nel software che circonda il modello, quindi è probabile che questo lavoro resti compito dell'harness, per quanto capaci diventino i modelli.