AgentInspect consente agli sviluppatori di catturare le azioni passo dopo passo di un agente AI sotto forma di log JSONL, rendendo possibile verificare che gli strumenti richiesti siano stati eseguiti – il tutto senza dover integrare OpenTelemetry nello stack.
In un rapido test con un esempio di controllo meteo basato su Vercel AI SDK, AgentInspect ha segnalato un "silent failure" (fallimento silenzioso): la risposta finale era corretta, ma la chiamata al weather-tool non era mai avvenuta. Il controllo a livello di processo della libreria ha colto il problema che un semplice test dell'output avrebbe ignorato.
Perché il percorso di esecuzione è importante
La risposta di un agente AI è il prodotto finale di una catena che può includere molteplici invocazioni del modello e chiamate a strumenti esterni. Se un prompt dovrebbe recuperare dati in tempo reale, l'assenza di tale recupero cambia il profilo di rischio, anche quando il testo sembra corretto. I test a livello di risposta permettono a un bug che salta un passaggio cruciale di passare in produzione inosservato.
Cosa fa AgentInspect
- Registrazione leggera – Un adattatore TypeScript si aggancia al codice dell'agente e scrive ogni chiamata al modello, ogni invocazione di tool e il loro ordine in un file JSON delimitato da righe (JSONL).
- Motore di regole – Gli sviluppatori dichiarano predicati semplici come "il weather tool deve essere chiamato" o "la finance API non deve essere utilizzata". La libreria valuta queste regole dopo ogni esecuzione.
- Ispezione CLI – Le esecuzioni fallite vengono salvate come file che lo strumento a riga di comando integrato può aprire per una riproduzione leggibile dall'uomo della traccia di esecuzione.
Poiché i log sono file locali, non è necessario un backend di tracing, una configurazione di rete o un servizio di osservabilità separato.
Come è stato configurato il test
- Controlli di processo – Una regola ha verificato che l'endpoint del weather-tool fosse stato invocato.
- Controlli della risposta – Un'asserzione separata ha confrontato il testo generato con la raccomandazione di visite turistiche indoor prevista.
Sono stati eseguiti due scenari:
| Scenario | Controllo risposta | Controllo processo |
|---|---|---|
| Happy path (meteo recuperato) | Pass | Pass |
| Meteo saltato (tool mai chiamato) | Pass | Fail |
La seconda esecuzione dimostra il valore dei controlli di processo: la risposta sembrava corretta, ma la mancanza della chiamata al tool ha segnalato un difetto nascosto.
AgentInspect vs. Promptfoo
Promptfoo, un framework di testing più consolidato, cattura le tracce tramite OpenTelemetry. Questo approccio funziona bene per i team che inviano già dati di telemetria a un collector, ma aggiunge un carico di configurazione e una dipendenza da un'infrastruttura di tracing.
AgentInspect sembra più adatto alle fasi iniziali dello sviluppo, ma è molto semplice da configurare.
A chi interessa
- Pipeline CI – Aggiungere un singolo passaggio che esegue AgentInspect e interrompe la build in caso di violazione delle regole trasforma i bug silenziosi in blocchi definitivi.
- Debugging – I log JSONL possono essere aperti localmente per riprodurre l'esatta sequenza di chiamate, risparmiando tempo rispetto alla ricerca tra le dashboard di tracing remote.
- Team di prodotto – Sapere che un recupero di dati critici è effettivamente avvenuto prima di rilasciare una funzionalità riduce il rischio di lamentele da parte degli utenti a valle.
In sintesi: quando la correttezza di un agente AI dipende dalle azioni che compie e non solo dal testo finale, un registratore leggero come AgentInspect può trasformare bug di processo nascosti in fallimenti visibili e testabili, senza il sovraccarico di un intero stack di tracing.
