title: “Evaluator SDK” description: “Costruisci un servizio che assegna punteggi alle sessioni di Failproof AI in modo sincrono o asincrono.” icon: “gauge”
Un evaluator riceve una sessione agente completata e restituisce i segnali di qualità che ti interessano: punteggi numerici, una spiegazione per ogni punteggio e un riepilogo facoltativo. Failproof AI memorizza questi risultati accanto alla traccia e li traccia su agenti e ambienti.Configura un evaluator
1
Installa l'Evaluator SDK
Installa l’SDK e il server utilizzato per eseguirlo.
2
Definisci cosa valutare
Crea
evaluator.py. Questo esempio verifica se una sessione contiene chiamate a strumenti fallite.3
Esegui e testalo localmente
Imposta un token condiviso, avvia l’evaluator e conferma che il suo endpoint di salute risponde.In un altro terminale:
Connetti l’evaluator a Failproof AI
- Distribuisci l’evaluator a un URL HTTPS raggiungibile da Failproof AI Cloud.
- Configura
EVALUATOR_ENDPOINTcon quell’URL e impostaEVALUATOR_TOKENsullo stesso token utilizzato dall’evaluator. Per Cloud gestito, contatta support@befailproof.ai per configurare la connessione. - Esegui una valutazione e conferma che i suoi punteggi appaiono in Failproof AI.
- Dashboard
- CLI
Apri una sessione completata in Observe → Sessions e seleziona Run evaluation se non è stata valutata automaticamente. Rivedi lo stato, i punteggi, le motivazioni e il riepilogo nel pannello Evaluation della sessione.Utilizza Observe → Evaluations per confrontare i punteggi tra agenti o ambienti. Utilizza Observe → Metrics per latenza, costo, token e altre misurazioni numeriche.Inizia con una sessione per confermare che l’evaluator ha restituito le chiavi di punteggio previste e motivazioni utili per quella specifica esecuzione.
Una volta che i risultati individuali appaiono corretti, utilizza il dashboard di valutazione per confrontare quei punteggi nel tempo e tra agenti o ambienti.
Un grafico integro dovrebbe utilizzare nomi di punteggio stabili; modificare una chiave crea una serie separata.


EVALUATOR_ENDPOINT non viene impostato nel processo del server. Riavvia il server dopo aver modificato le variabili di ambiente dell’evaluator.
Il servizio espone GET /health, GET /config, POST /evaluate e facoltativamente GET /evaluate/{job_id}. Restituisci JobPending per il lavoro asincrono e registra @app.job_lookup in modo che Failproof AI possa eseguire il polling.
Quando un token è configurato, tutte le rotte ad eccezione di health richiedono lo stesso bearer token che Failproof AI invia come EVALUATOR_TOKEN.
Tipi SDK
Decoratori e rotte
L’SDK limita i corpi delle richieste di valutazione a 25 MiB. I campi di richiesta sconosciuti vengono ignorati in modo che i servizi rimangono compatibili con la crescita del contratto degli eventi.
Restituisci lavoro asincrono
UtilizzaJobPending quando la valutazione non può completarsi all’interno di una richiesta. L’ID del lavoro è opaco per Failproof AI e deve rimanere risolvibile dal tuo servizio fino a quando il risultato non viene raccolto o il timeout del server non scade.
JobPending.next_poll_secs, EvaluatorConfig.default_poll_interval_secs, poi EVALUATOR_POLLING_INTERVAL_SECS del server. I valori sono limitati tra 1 secondo e 1 ora. Il limite di polling a orologio da parete predefinito del server è un’ora.
Campi di richiesta e risposta
Impostazioni dell’operatore del server
La valutazione automatica è valida a livello di distribuzione e rimane disabilitata quandoEVALUATOR_ENDPOINT è assente.
Il server può anche vincolare quali organizzazioni utilizzano l’evaluator globale a livello di distribuzione. Considerare le modifiche all’endpoint, token, retry e organizzazione come configurazione dell’operatore e riavviare o ridistribuire il server dopo aver modificarle.
Sicurezza e operazioni
- Metti l’evaluator dietro HTTPS quando il traffico attraversa un confine di rete attendibile.
- Configura un bearer token non vuoto e mantienilo identico su entrambi i servizi.
- Non registrare il token o i prompt sensibili completi dai payload delle richieste.
- Rendi gli handler sincroni idempotenti; i tentativi possono ripetere una richiesta.
- Persisti lo stato del lavoro asincrono al di fuori della memoria del processo in produzione.
- Restituisci chiavi di punteggio stabili. Rinominare una chiave crea una nuova serie di grafici piuttosto che modificare quella vecchia.
eval received, eval responded, job lookup, config returned, auth rejected e eccezioni del gestore. Non configura gestori di logging; utilizza la configurazione di logging dell’applicazione host.
