Benchmark
Un benchmark è un insieme di scenari di valutazione riprodotti automaticamente su una pipeline. È lo strumento per misurare oggettivamente la qualità degli agent e catturare le regressioni prima che raggiungano la produzione.
Perché
Un agent che "sembrava funzionare" può regredire silenziosamente dopo:
- una modifica della missione;
- un cambio di modello LLM;
- l'aggiunta di un nuovo strumento.
Senza un benchmark, lo scopri in produzione. Con un benchmark, l'editor ti avvisa prima di pubblicare.
Anatomia di uno scenario
Uno scenario contiene:
- Uno stimolo — l'input che la pipeline riceve (messaggio, payload, chiamata telefonica simulata).
- Una sequenza attesa — i turni di conversazione, gli strumenti chiamati, gli output prodotti.
- Controlli — asserzioni esplicite: "l'agent deve chiamare
crm.search_customer", "la risposta deve contenere la parola 'rimborso'", "la pipeline deve completarsi in meno di 3 turni".
Catalogo dei controlli
| Controllo | Verifica |
|---|---|
tool_called | Uno strumento specifico è stato chiamato (facoltativamente con argomenti specifici) |
tool_not_called | Uno strumento non è stato chiamato (anti-falso-positivo) |
output_contains | L'output dell'agent contiene un dato testo / pattern |
output_matches_json | L'output JSON valida un dato schema |
turn_count_max | La pipeline si è completata in ≤ N turni |
cost_max | Il costo totale è ≤ N crediti |
latency_max | La durata è ≤ N secondi |
branch_taken | Una condizione ha instradato al ramo corretto |
I controlli sono estensibili: nel piano Enterprise, puoi aggiungere controlli personalizzati tramite un operator.
Creare un benchmark
- Progettista → Benchmark → Nuovo benchmark.
- Scegli la pipeline di destinazione.
- Aggiungi scenari. Puoi:
- Crearli manualmente (l'opzione più precisa).
- Catturarli dalla cronologia — convertire un'esecuzione reale in uno scenario (con anonimizzazione).
Un buon benchmark include un mix: caso nominale, casi limite, casi avversariali (tentativi di manipolazione, ambiguità, dati mancanti).
Eseguire un benchmark
Dall'interfaccia di amministrazione:
- Esecuzione singola — risultati immediati, drawer con dettaglio per scenario.
- Esecuzione pianificata — ogni notte, a ogni pubblicazione di una nuova versione, ecc.
Il report mostra:
- Tasso di successo per controllo
- Regressione rispetto alla versione precedente
- Elenco degli scenari falliti, con un diff rispetto al risultato atteso
Buone pratiche
- Inizia in piccolo — 5 scenari ben mirati valgono più di 50 approssimativi.
- Esegui il benchmark prima di ogni pubblicazione. L'editor può bloccare la pubblicazione se il benchmark regredisce.
- Versiona le tue missioni. Non solo le pipeline: anche le missioni evolvono.
- Mantieni i controlli leggibili. Un controllo che richiede 20 righe di spiegazione per essere compreso è un controllo che va scomposto.