Skip to main content
El SDK de Evaluación ejecuta evaluaciones en tu propia infraestructura. Tu worker registra sus evaluaciones en Failproof AI, reclama sesiones a medida que finalizan, las puntúa y envía los resultados, todo mediante HTTPS saliente: nada se conecta hacia él. Úsalo para lo que Python alojado no puede hacer: jueces LLM, llamadas a modelos, paquetes, secretos y acceso a red. Sus resultados aparecen junto a los alojados en la página de evaluaciones, etiquetados como customer. Se incluye en failproofai-sdk, bajo failproofai_sdk.evaluator; importar el SDK de trazado no lo carga.

Escribe evaluaciones

  • @app.eval(key, version=...) registra una evaluación. La clave es el nombre bajo el que aparecen sus resultados; cambia la versión cada vez que cambie la lógica, y cada resultado conserva la versión que lo generó. Un worker puede contener hasta 100 evaluaciones.
  • result_kind es "score" salvo que se indique lo contrario. Para una evaluación de tipo "metric" o "assertion", nombra una entrada de metrics o assertions con la misma clave: esa entrada es su resultado.
  • when determina si una sesión aplica. Devuelve ConditionResult(False, "<reason>") para omitirla, y el motivo queda registrado.
  • Una evaluación puede ser una función normal o async, y timeout_seconds la acota en el tiempo.
  • Las claves de payload — tool_name, response y content en el ejemplo — son las que envíen tus agentes, así que léelas de una sesión real.

Ejecuta el worker

Coloca una clave con el permiso evaluations:run, creada en Administration → Keys, en FAILPROOFAI_EVALUATOR_TOKEN — establécela desde tu almacén de secretos en lugar de escribirla directamente en un comando — y arranca el worker:
Sin el bloque __main__, python -m failproofai_sdk.evaluator evaluator:app hace lo mismo.
FAILPROOFAI_EVALUATOR_ALLOW_INSECURE_HTTP envía todo en texto claro. El worker transmite FAILPROOFAI_EVALUATOR_TOKEN como cabecera Authorization: Bearer en cada solicitud, y las transcripciones que obtiene son las sesiones en sí — por lo que cualquiera en la ruta puede leer ambas cosas, y el token que lean permitirá ejecutar evaluaciones hasta que lo rotes. Úsalo únicamente en una red de desarrollo aislada. En cualquier otro entorno, la URL debe ser HTTPS; loopback no requiere ningún indicador.

Tipos de resultado

Un EvalResult contiene al menos una puntuación, métrica o aserción, y como máximo 25, cada una bajo una clave única.

La sesión

Cada evento contiene id, ts, event_type y payload.

El evaluador heredado

El SDK de Evaluación anterior — un servicio HTTP al que Failproof AI llamaba en EVALUATOR_ENDPOINT, que respondía en /evaluate y se sondeaba mediante JobPending — ha sido retirado. Crea nuevos evaluadores con este worker; los operadores de una instancia autohospedada que ejecute un servicio heredado pueden mantenerlo durante la transición.