Skip to main content
Das Evaluator SDK führt Evaluierungen auf Ihrer eigenen Infrastruktur durch. Ihr Worker registriert seine Evaluierungen bei Failproof AI, beansprucht abgeschlossene Sessions, bewertet sie und übermittelt die Ergebnisse – alles über ausgehende HTTPS-Verbindungen: Es werden keine eingehenden Verbindungen benötigt. Verwenden Sie es für das, was gehostetes Python nicht kann – LLM-Richter, Modellaufrufe, Pakete, Geheimnisse und Netzwerkzugriff. Die Ergebnisse erscheinen neben den gehosteten Ergebnissen auf der Evaluierungsseite und sind mit customer gekennzeichnet. Es wird mit failproofai-sdk unter failproofai_sdk.evaluator ausgeliefert; der Import des Tracing-SDKs lädt es nicht.

Evaluierungen schreiben

  • @app.eval(key, version=...) registriert eine Evaluierung. Der Schlüssel bestimmt, unter welchem Namen die Ergebnisse aufgeführt werden. Ändern Sie die Version bei jeder Änderung der Logik – jedes Ergebnis behält die Version, mit der es erzeugt wurde. Ein Worker kann bis zu 100 Evaluierungen halten.
  • result_kind ist "score", sofern nichts anderes angegeben wird. Für eine "metric"- oder "assertion"-Evaluierung benennen Sie einen metrics- oder assertions-Eintrag nach dem Schlüssel: Dieser Eintrag ist ihr Ergebnis.
  • when entscheidet, ob eine Session anwendbar ist. Geben Sie ConditionResult(False, "<reason>") zurück, um eine Session zu überspringen – der Grund wird dabei gespeichert.
  • Eine Evaluierung kann eine normale Funktion oder async sein, und timeout_seconds begrenzt ihre Laufzeit.
  • Payload-Schlüssel – tool_name, response und content oben – sind das, was Ihre Agents senden; lesen Sie sie daher aus einer echten Session ab.

Den Worker starten

Legen Sie einen Schlüssel mit der Berechtigung evaluations:run, der unter Administration → Keys erstellt wurde, in FAILPROOFAI_EVALUATOR_TOKEN ab – setzen Sie ihn aus Ihrem Secret-Store, anstatt ihn direkt in einen Befehl einzutippen – und starten Sie den Worker:
Ohne den __main__-Block bewirkt python -m failproofai_sdk.evaluator evaluator:app dasselbe.
FAILPROOFAI_EVALUATOR_ALLOW_INSECURE_HTTP sendet alles im Klartext. Der Worker übermittelt FAILPROOFAI_EVALUATOR_TOKEN als Authorization: Bearer-Header bei jeder Anfrage, und die abgerufenen Transkripte sind die Sessions selbst – jeder auf dem Übertragungsweg kann beides lesen, und mit dem ausgelesenen Token können Evaluierungen ausgeführt werden, bis Sie ihn rotieren. Verwenden Sie diese Option nur in einem isolierten Entwicklungsnetzwerk. Überall sonst muss die URL HTTPS verwenden; Loopback-Adressen benötigen kein Flag.

Ergebnistypen

Ein EvalResult enthält mindestens einen Score, eine Metrik oder eine Assertion und höchstens 25, jeweils unter einem eindeutigen Schlüssel.

Die Session

Jedes Event enthält id, ts, event_type und payload.

Der Legacy-Evaluator

Das frühere Evaluator SDK – ein HTTP-Dienst, den Failproof AI unter EVALUATOR_ENDPOINT aufrief, der /evaluate beantwortete und über JobPending abgefragt wurde – wurde eingestellt. Erstellen Sie neue Evaluatoren mit diesem Worker; Betreiber einer selbst gehosteten Instanz, die einen Legacy-Dienst betreiben, können ihn während der Übergangszeit weiter verwenden.