failproofai-sdk, sotto failproofai_sdk.evaluator; importare l’SDK di tracciamento non lo carica.
Scrivi valutazioni
@app.eval(key, version=...)registra una valutazione. La chiave è ciò su cui viene tracciato il suo risultato; cambia la versione ogni volta che la logica cambia, e ogni risultato mantiene la versione che l’ha prodotto. Un worker contiene fino a 100 valutazioni.result_kindè"score"a meno che tu non dica diversamente. Per una valutazione"metric"o"assertion", assegna a una vocemetricsoassertionsil nome della chiave: quella voce è il suo risultato.whendecide se una sessione si applica. RestituisciConditionResult(False, "<reason>")per saltarne una, e il motivo viene registrato.- Una valutazione può essere una funzione semplice o
async, etimeout_secondsla delimita. - Le chiavi di payload —
tool_name,responseecontentsopra — sono ciò che i tuoi agenti inviano, quindi leggile da una sessione reale.
Esegui il worker
Metti una chiave con l’autorizzazioneevaluations:run, creata sotto Administration → Keys, in FAILPROOFAI_EVALUATOR_TOKEN — impostala dal tuo archivio segreti piuttosto che digiarla in un comando — e avvia il worker:
__main__, python -m failproofai_sdk.evaluator evaluator:app fa lo stesso.
Tipi di risultato
Un
EvalResult contiene almeno un punteggio, una metrica o un’asserzione, e al massimo 25, ciascuno sotto una chiave univoca.
La sessione
Ogni evento contiene
id, ts, event_type e payload.
L’evaluator legacy
Il precedente Evaluator SDK — un servizio HTTP che Failproof AI chiamava aEVALUATOR_ENDPOINT, rispondendo a /evaluate e sottoposto a polling tramite JobPending — è ritirato. Costruisci nuovi evaluator su questo worker; gli operatori di un’istanza self-hosted che eseguono un servizio legacy possono mantenerlo durante la transizione.
