fairlane.systems

REGRESSION TESTING · AI-KONZEPT

Regression Testing für LLMs: CI/CD, Snapshot-Tests und Modell-Update-Drift erkennen

CI/CD-Integration von LLM-Tests, Snapshot-Testing für Prompts, Diff-Testing zwischen Modell-Versionen am Beispiel das aktuelle Claude-Modell zu 4.7 Treuhand-Pipeline.

Recherche & Faktencheck: · Stand: 2026-05

Was ist LLM-Regression-Testing?

Regression Testing für LLMs ist die automatische Prüfung, ob eine Änderung an Prompt, Modell, Retrieval-Logik oder Pipeline-Konfiguration die Antwort-Qualität im Vergleich zur vorigen Version verschlechtert hat. "Regression" heisst hier nicht nur "Fehler ist zurück" (klassische Software-Definition), sondern auch "Qualitäts-Metrik ist gesunken".

Klassisches Software-Regression-Testing prüft deterministisches Verhalten ("Funktion gibt 42 zurück"). LLM-Regression-Testing prüft semantische Äquivalenz und statistische Verteilung ("Faithfulness-Score liegt bei 92% ± 2%"). Die Prüfung ist nie pixelgenau, sondern toleranz-basiert.

Mai 2026 ist Regression-Testing für produktive LLM-Pipelines De-Facto-Standard in den fortgeschritteneren Treuhand- und Anwalts-Setups. Tools wie Promptfoo, DeepEval und Ragas haben native CI-Integration. GitHub Actions, GitLab CI und CircleCI sind direkt anbindbar.

Der Anwendungsfall ist klar: Anthropic veröffentlicht das aktuelle Claude-Spitzenmodell. Sie wollen migrieren, weil 4.7 schneller und etwas günstiger ist. Aber wird die Buchungs-Klassifizierungs-Genauigkeit auf Ihrem 200-Fall-Dataset weiterhin über 92% liegen? Ohne Regression-Test wechseln Sie und merken erst nach drei Wochen, dass die MWST-Zuordnung von 91% auf 86% gefallen ist – und produzieren zwischen drei Monaten falsche Buchungen.

Warum es wichtig ist

LLM-Pipelines sind fragiler als klassischer Code. Eine Prompt-Änderung um drei Worte kann die Halluzinations-Rate verdoppeln. Ein Modell-Update kann auf 80% der Fälle besser sein und auf 5% katastrophal schlechter. Ohne Regression-Test sehen Sie nur den Durchschnitt – und der ist taeuschend.

In der Treuhand-Praxis besonders gefährlich: stiller Drift. Ihre Pipeline läuft seit Monaten gut, dann ändert sich beim Cloud-Provider unter der Haube das Modell (typisches "model alias" wie `claude-sonnet-latest` zieht plötzlich `4.7` statt `4.6` ein), und Ihre Buchungs-Vorschläge werden schlechter – ohne Code-Änderung Ihrerseits. Regression-Tests, die täglich oder zumindest wöchentlich laufen, fangen das.

Die regulatorische Sicht: EU AI Act Art. 17 verlangt für Hochrisiko-Systeme ein "post-market monitoring", also Überwachung im Betrieb. Regression-Tests in CI sind die technische Umsetzung dieser Pflicht. Wer das nicht hat, ist nicht compliant.

Wirtschaftlich amortisieren sich Regression-Tests nach dem ersten erkannten Fehlschlag. Ein Treuhand-Büro hat Mai 2026 berichtet, dass ihr Regression-Test ein Sonnet-4.6-zu-4.7-Update als negativen Drift erkannt hat (Bilanz-Plausibilitäten-Genauigkeit fiel von 89% auf 81%). Sie sind nicht migriert, sondern haben gewartet, bis 4.7.1 mit gefixtem Problem kam. Geschätzter Schaden ohne Test: 30-50 Stunden Nacharbeit über drei Wochen.

Wie es funktioniert – Patterns und Tools

Snapshot Testing für Prompts. Ähnlich wie React-Component-Snapshots: Sie speichern bei jedem Test-Lauf die generierte Antwort zu jedem Test-Fall, und der CI-Lauf prüft, ob die neue Antwort "äquivalent" zur Snapshot-Antwort ist. Äquivalenz wird nicht durch String-Match, sondern durch semantische Ähnlichkeit (Embedding-Distanz < Schwelle) oder LLM-Judge-Score (>= 4 von 5) geprüft. Promptfoo und DeepEval unterstützen dieses Pattern nativ.

Diff-Testing zwischen Modell-Versionen. Beispiel das aktuelle Claude-Modell → 4.7. Sie laufen 200 Test-Fälle durch beide Modelle parallel. Für jeden Fall vergleicht ein dritter Modell-Judge (z.B. Das aktuelle GPT-Spitzenmodell) die Antworten: "4.7 besser", "4.6 besser", "gleichwertig". Resultat: ein Migrations-Report – auf welchen Fall-Typen ist 4.7 besser, auf welchen schlechter? Konkret bei einem Mai-2026-Treuhand-Projekt: 4.7 war auf 78% besser, auf 9% schlechter – und die 9% schlechteren Fälle waren alle MWST-Spezial-Fälle. Die Migration erfolgte mit zusätzlichem Custom-Prompt für den problematischen Sub-Use-Case.

Statistical Tolerance Testing. Statt jeden Einzelfall zu prüfen, prüft der Test die aggregierte Verteilung: "Faithfulness mean >= 0.85", "Hallucination rate <= 5%", "P95 latency <= 4s". Wenn die Aggregat-Metriken in der Toleranz liegen, ist der Test grün, auch wenn einzelne Fälle anders aussehen als vorher. Sinnvoll für Test-Sets über 500 Fälle.

CI/CD-Integration. GitHub Actions, GitLab CI, CircleCI: ein YAML-Workflow, der bei jedem Commit den Eval-Lauf triggert. Bei Pass: Merge erlaubt. Bei Fail: Block. Typischer Lauf bei 200 Test-Fällen + 3 Metriken: 5-15 Minuten, Kosten USD 3-10. Wird oft mit `if: changed-files` qualifiziert, sodass nur bei Prompt- oder Modell-Änderungen gelaufen wird.

Scheduled Drift Detection. Zusätzlich zum PR-Trigger: ein Cron-Lauf, der täglich oder wöchentlich gegen den Live-Modell-Endpoint testet. Erkennt Vendor-side-Model-Updates ("Modell-Alias hat sich geändert"), die ohne Ihren Commit passieren. Ergebnisse werden in einem Dashboard (Phoenix, TruLens, oder eigenes Grafana) über Zeit getrackt.

Tools Mai 2026. Promptfoo (CLI-orientiert, sehr schnell zu integrieren), DeepEval (Python-pytest-ähnlich), Ragas (RAG-spezifisch), Phoenix (Hosted-Dashboard). Anthropic hat im April 2026 ein eigenes Eval-API beta veröffentlicht – direkt im Claude-Workbench-Bereich, gut für Anthropic-only-Setups.

Regression Testing einführen in 6 Schritten

  1. 01Golden Dataset und Eval-Framework vorbereiten (DeepEval/Promptfoo/Ragas) – Mindest-Basis 100 Fälle, 2-4 Metriken.
  2. 02Baseline-Lauf mit aktueller Modell-Version durchführen und Ergebnisse einfrieren (Faithfulness 0.91, Hallucination 3%, Latency P95 3.2s).
  3. 03Toleranz-Schwellen definieren: typisch -3% absolute Verschlechterung als Fail-Schwelle.
  4. 04CI-Workflow (GitHub Actions) bauen: bei PR-Trigger Eval-Lauf, Block bei Fail.
  5. 05Scheduled Cron (täglich/wöchentlich) gegen Live-Endpoint für Vendor-Drift einrichten.
  6. 06Drift-Dashboard aufsetzen (Phoenix oder eigenes Grafana): Metriken über Zeit, Alarm bei Anomalien.

Wann Regression Testing Pflicht ist

Sie brauchen Regression-Tests, sobald eine LLM-Pipeline produktiv ist und Outputs an Mandanten, Behörden oder direkte Buchungssysteme gehen. Konkret:

Bei jedem Modell-Update. Switch von dem aktuellen Claude-Modell auf 4.7, das aktuelle GPT-Spitzenmodell auf 5.2, Mistral-Large 2.0 auf 2.1 – Pflicht. Auch dann, wenn das Update nur "minor" heisst. Modell-Provider sind beim Beschreiben von Änderungen oft optimistisch.

Bei jedem Prompt-Change. Eine scheinbar harmlose Reformulierung kann die Antwort-Qualität verschieben. Regression-Test gegen das vorige Prompt-Verhalten zeigt es.

Bei jedem Retrieval-Parameter-Update. Änderung von top-k, Chunking-Size, Embedding-Modell, Reranker – alles muss durch den Eval-Lauf.

Bei jedem Library-Upgrade. Wechsel von LangChain 0.3 auf 0.4, Update der OpenAI-SDK – oft verändert sich Verhalten subtil.

Scheduled für Vendor-Drift. Mindestens wöchentlich, idealerweise täglich, gegen den Live-Modell-Endpoint laufen, um vendor-side Updates zu erkennen.

Für KMU-Treuhand-Setups (1-2 Pipelines, < 5 Mitarbeitende): einmal pro Woche Cron + Eval-Lauf bei jedem PR ist die untere Schwelle. Für Anwaltskanzleien mit haftungsrelevanten Pipelines: täglicher Cron + PR-Trigger.

Wann minimaler Aufwand reicht

Für Pilot-Projekte unter 4 Wochen Laufzeit ist eine voll integrierte CI/CD-Regression nicht nötig. Ein wuechentlicher manueller Lauf des Test-Skripts und kurze Notiz im Team-Kanal reichen.

Für interne Tools mit niedrigem Risiko (Brainstorming-Helfer, interne Stichwort-Suche, Wissens-Lookup) gilt: keine Regression-Test-Pipeline nötig, dafür aber ein Mechanismus, über den Mitarbeitende Probleme melden können ("Daumen runter"-Button).

Vorsicht vor "wir testen, wenn wir Zeit haben". Das passiert nicht. Wer einmal ohne Regression-Test deployt hat, deployt nie wieder mit Test, bis ein Vorfall passiert. Bauen Sie die Pipeline ein, bevor Sie productiv gehen.

Noch ein Punkt: nicht jeder Test-Lauf ist Regression-Test. Eine 5-Fälle-Schnellprüfung ist Smoke-Test, kein Regression-Test. Echte Regression braucht ein stabiles, statistisch belastbares Golden Dataset (mindestens 100 Fälle) und reproduzierbare Metriken. Sonst messen Sie Rauschen.

Vor- und Nachteile

STÄRKEN

  • Erkennt Modell-Update-Regression vor Production – Schaden in Stunden statt Wochen sichtbar
  • Erfüllt EU-AI-Act Art. 17 (Post-Market-Monitoring) technisch
  • Schafft Migration-Vertrauen: Modell-Wechsel werden zur Engineering-Aufgabe, nicht Wette
  • Fängt Vendor-side Aliase-Drift, der ohne Ihren Commit passiert
  • CI-Integration möglich mit Tools, die ohnehin im Stack sind (GitHub Actions, GitLab CI)

SCHWÄCHEN

  • Setup-Aufwand initial 5-15 Tage je nach Pipeline-Komplexität
  • Laufende Token-Kosten USD 500-1500/Monat für typische KMU-Pipeline
  • Stochastische Outputs brauchen Multi-Sample-Runs – Tests sind nie 100% reproduzierbar
  • Test-Set-Pflege ist Daueraufgabe (Quartal-Refresh)
  • False-Positive-Rate: bei zu engen Toleranzen blockieren legitime Updates faelschlicherweise

Häufige Fragen

Wie unterscheidet sich LLM-Regression von Unit-Tests?

Unit-Tests sind binär (Pass/Fail) und deterministisch (gleicher Input = gleiches Output). LLM-Regression-Tests sind statistisch (Toleranz-basiert, z.B. "Faithfulness >= 0.85 ± 0.03") und stochastisch (Temperature über 0 erzeugt Variation, deshalb laufen Sie 3-5 mal und mitteln). Beides ergänzt sich: Unit-Tests für Code-Logik (Pipeline-Glue), LLM-Regression für Modell-Verhalten.

Was kostet eine Regression-Test-Pipeline laufend?

Bei 200 Test-Fällen und 3 Metriken pro Lauf: USD 3-10 pro CI-Lauf. Bei 30 PRs pro Monat plus wöchentlichem Cron: USD 120-400 pro Monat Token-Kosten. Engineer-Zeit für Pflege: 4-8 Stunden pro Monat. Mainboard-Hosting Phoenix/TruLens (falls genutzt): USD 200-800 pro Monat. Summe für eine durchschnittliche Treuhand-Pipeline: USD 500-1500 pro Monat – Peanuts gegen das Risiko einer unbemerkten Regression.

Wie gehe ich mit nicht-deterministischen Antworten um?

Drei Strategien. Erstens: Temperature 0 im Test (deterministisch, aber künstlich – Production läuft oft mit 0.3-0.7). Zweitens: Multi-Sample-Run (3-5 Wiederholungen, Median nehmen). Drittens: statistische Toleranz (akzeptiere Varianz über zb 5 Läufe als Bandbreite). Wir empfehlen Kombination: Temperature 0 für Sanity-Checks, Multi-Sample für kritische Metriken.

Wie reagiere ich auf einen Drift-Alarm?

Drei Schritte. (1) Verifizieren: ist der Drift echt oder Rauschen? Re-Run starten. Wenn Drift bleibt: (2) Ursache lokalisieren – Modell-Alias geändert? Prompt-Change im PR? Library-Upgrade? Vergleichen Sie Pipeline-Konfiguration mit letzter grüner Version. (3) Reagieren: Rollback (wenn möglich, Modell-Version pinnen) oder Fix (Prompt anpassen, neuen Modell-Stand validieren). Dokumentation des Vorfalls für Compliance-Akte.

Verwandte Themen

EVAL-FRAMEWORKS · AI-KONZEPTEval-Frameworks für LLMs: DeepEval, OpenAI Evals, Promptfoo, Ragas, TruLens im VergleichGOLDEN DATASET · AI-KONZEPTGolden Dataset aufbauen: 50-500 Test-Beispiele für KMU richtig erstellenLLM-AS-A-JUDGE · AI-KONZEPTLLM-as-a-Judge: KI bewertet KI – Methoden, Bias-Fallen, GrenzenHALLUZINATIONS-MESSUNG · AI-KONZEPTHalluzinationen erkennen und messen: Metriken, Benchmarks und Self-ConsistencyKI-KPIS · AI-KONZEPTKI-Qualität messen: KPIs für RAG, Latenz, Kosten und User-SatisfactionANTHROPIC · LLM-ANBIETERAnthropic Claude aus CH-Treuhand-Sicht: Residency, Pricing, ComplianceROUTING · AI-KONZEPTMulti-LLM-Routing: Welches Modell wann, für wieviel

Quellen

  1. Promptfoo – Regression Testing for LLMs (docs) · 2026-05
  2. DeepEval – CI/CD Integration Guide · 2026-04
  3. EU AI Act, Article 17 – Post-Market Monitoring · 2024-07
  4. Anthropic – Claude Workbench Eval API (beta) · 2026-04
  5. Arize Phoenix – Drift Detection for LLM Apps · 2026-03

PASSEND ZU IHREM STACK?

Wie das in Ihrem Betrieb konkret aussieht – 30 Minuten Erstgespräch.

Erstgespräch buchen