Inferenz: Endpunkte, KI-Gateway, Tracing und Evaluierung

Nur ausliefern, was freigegeben ist.

Modell-Endpunkte auf Ihren eigenen GPUs oder bei europäischen Anbietern, hinter einem Gateway, das jede Anfrage an das Release leitet, das seine Evaluierung und seine Freigaben bestanden hat. Jeder Aufruf wird protokolliert, bepreist und auf das Budget des aufrufenden Schlüssels angerechnet.

Die Gateway-Seite: die Basis-URL, ein Python-Beispiel und welches Release und welcher Endpunkt den Verkehr jedes KI-Systems bedient.

Endpunkte auf Ihrer Hardware

Ein Endpunkt ist ein laufender Modellserver. Verwaltete Endpunkte laufen über denselben Agenten wie die Trainingsjobs auf Ihren Compute-Zielen. Sie brauchen also kein zweites Deployment-Werkzeug, und die Steuerungsebene von EUVYRA braucht keinen eingehenden Zugriff auf den Cluster.

Engines für Endpunkte
EngineWas läuftWas Sie angeben
vLLMDer OpenAI-kompatible Server von vLLMEin Hugging-Face-Repository wie Qwen/Qwen2.5-7B-Instruct oder einen Pfad im Image
llama.cppDer llama.cpp-Server, für GGUF-Modelle auf CPUs oder kleinen GPUsEin GGUF-Repository oder eine Datei
ContainerJedes Image mit HTTP-SchnittstelleDas Image, optional Befehl, Port und Health-Pfad
AnbieterNichts: eine externe, OpenAI-kompatible APIURL, Modellname und den Schlüssel des Anbieters; der Host muss auf Ihrer Allowlist stehen

Der Server hält den Sollzustand, der Agent stellt ihn her. Auf Kubernetes wird ein Endpunkt zu Deployment, Service und einem Secret mit Token, sodass der Modellserver alle Anfragen ablehnt, die nicht über das Gateway kommen. Auf einem Docker-Host bekommt der Endpunkt ganze GPUs, die kein Job belegt.

Autoskalierung

Die Zahl der Replikas kann dem Verkehr am Gateway folgen, gemessen als gleichzeitige Anfragen oder Anfragen pro Minute und Replika, innerhalb von Grenzen, die Sie festlegen. Mit einem Minimum von null fährt ein ungenutzter Endpunkt auf null herunter, und die nächste Anfrage weckt ihn: Ein anderer Endpunkt des Releases antwortet so lange, oder die Anfrage wartet eine einstellbare Zeit auf den Kaltstart. Jede Änderung wird mit Grund festgehalten. Ein Endpunkt kann auch in einem Pool von Cloud-Maschinen laufen, die bei Bedarf bestellt werden.

Ein Gateway, gesteuert durch Ihren Freigabeprozess.

Anwendungen richten einen OpenAI-Client auf EUVYRA und geben ein KI-System als Modell an. Das Gateway sieht bei jeder Anfrage nach, welche Releases dieses Systems ausgerollt sind. Der Freigabeprozess ist damit die einzige Steuerung:

  • Das direkte Release bekommt den Verkehr, ein Canary seinen Anteil, und ein Shadow-Release eine Kopie, deren Antwort protokolliert und verworfen wird.
  • Wird ein Canary übernommen, ist es primär; ein Rollback nimmt es heraus; ein neues Release ersetzt das alte.
  • radiology-triage@staging erreicht das Staging-Release desselben Systems.
  • endpoint/name erreicht einen noch nicht freigegebenen Endpunkt zum Testen, nur mit einem Schlüssel für dessen Projekt. Anwendungen können die Freigabe so nicht umgehen.
  • Ein als verboten eingestuftes System wird nie bedient.
from openai import OpenAI

client = OpenAI(
    base_url="https://euvyra.example.eu/v1",
    api_key="euv_...",
)
reply = client.chat.completions.create(
    model="radiology-triage",
    messages=[{"role": "user", "content": "Hallo"}],
)

Was jeder Aufruf mitbekommt

  • Schwärzung

    Bei Endpunkten mit Schwärzung werden E-Mail-Adressen, IBANs, Karten- und Telefonnummern, IP-Adressen und Ähnliches maskiert, bevor die Anfrage hinausgeht. Der Trace zählt, wie viele Fundstellen welcher Art.

  • Ein Trace

    Eingabe, Antwort, Tokens, Kosten, Latenz und Zeit bis zum ersten Token, im Projekt des Endpunkts und mit dessen Datenschutzeinstellungen. Auch Shadow-Kopien werden protokolliert.

  • Ein Preis

    Aus den Token-Preisen des Endpunkts oder der Preisliste der Organisation, mit den Token-Zahlen aus der Antwort des Modells, auch bei gestreamten Aufrufen.

  • Budgets und Limits

    Jeder API-Schlüssel hat ein Monatsbudget in Euro und ein Ratenlimit. Beides zu erhöhen ist eine Ausgabenentscheidung für Menschen, nicht für KI-Assistenten.

  • Bekannte Fehler

    Fehler folgen dem Format und den Statuscodes von OpenAI, Clients werfen also ihre gewohnten Ausnahmen. Antworten, während ein Endpunkt aufwacht, tragen Retry-After.

  • Mehr als ein Client-Format

    OpenAI-kompatible Chat-, Completion- und Embedding-Aufrufe sowie das Messages-Format von Anthropic für Clients, die darauf aufbauen.

Tracing, Evaluierung und Prompts.

Agenten und Retrieval-Pipelines verfolgen Sie mit dem Python-SDK oder per OpenTelemetry: EUVYRA versteht die GenAI-Konventionen und OpenInference über OTLP/HTTP. Spans tragen Arten wie llm, retrieval, tool, agent und guardrail, mit Tokens, Kosten und Fehlern.

Evaluierungen lassen versionierte Testsuiten gegen genau die Modell- oder Prompt-Version laufen, die Sie ausliefern wollen. Der Server bewertet jede Ausgabe mit eingebauten Evaluatoren für Korrektheit, Quellentreue, Abfluss personenbezogener Daten, Verweigerung, Verzerrung und Robustheit oder mit einem LLM als Richter auf einem freigegebenen EU-Endpunkt. Ein Gate entscheidet, ob das Release zur Freigabe darf, und euvyra eval run lässt einen CI-Job scheitern, wenn die Qualität sinkt.

Menschen bleiben beteiligt: verblindete Paarvergleiche, Annotations-Warteschlangen mit Bewertungsschema und laufende Bewertung von Stichproben aus dem Produktionsverkehr. Ein Playground schickt einen Prompt nebeneinander an bis zu vier Modelle, über dasselbe Gateway, und jeder Trace kann zum Testfall werden. Prompts sind versioniert und tragen Labels; das Label production wandert erst, wenn ein freigegebenes Release ausgerollt wird.

Ein Trace eines Kundenservice-Agenten: ein Wasserfall aus Retrieval-, Modell- und Tool-Spans mit Token-Zahlen und Kosten.

Fragen zur Inferenz

Können wir ein noch nicht freigegebenes Modell bereitstellen?

Zum Testen ja: endpoint/name erreicht einen Endpunkt direkt, mit einem Schlüssel für dessen Projekt, und diese Aufrufe tragen im Trace das Tag unreleased. Produktionsverkehr unter dem Namen eines KI-Systems erreicht nur ausgerollte Releases.

Welche europäischen Modellanbieter können wir nutzen?

Jeden Anbieter mit OpenAI-kompatibler API. Sein Host muss auf Ihrer Allowlist stehen, sonst lehnt das Gateway den Aufruf mit provider_blocked ab.

Was braucht das Gateway vom Netzwerk?

Der EUVYRA-Server ruft Endpunkte direkt auf, ihre Adresse muss also von dort erreichbar sein, etwa weil EUVYRA im selben Cluster läuft. Maschinen in Cloud-Pools nutzen dafür das private Netz des Kontos.

Speichert das Gateway Prompts und Antworten?

Jeder Aufruf wird ein Trace, und es gelten die Datenschutzeinstellungen des Projekts: Schwärzung, pseudonymisierte Nutzerkennungen oder nur Metadaten ohne Inhalte. Die Aufbewahrungsdauer legen Sie pro Projekt fest.