Skip to content

AI Agent Workflows

Graph Engineering beginnt dort, wo Routing zum Produktverhalten wird

Ein neues LangGraph-Paper zeigt drei belastbare Muster für stateful AI-Workflows: explizite Zustände, Recovery-Routen und Human Gates statt Graph-Hype.

26. Juli 2026 · Dominic Hückmann

Kurzantwort

Graph Engineering ist nicht das Zeichnen komplexer Agentendiagramme. Es beginnt dann, wenn Retry, Eskalation, Evidenzprüfung oder menschliche Freigabe sichtbares und testbares Produktverhalten werden.

Ein Agent generiert SQL.

Die Query ist kaputt.

Was passiert jetzt?

Wenn die Antwort in einem Prompt versteckt ist – „prüfe deine Query und versuche es bei einem Fehler erneut“ – hast du eine Hoffnung formuliert.

Wenn der Fehler im State landet, ein Retry-Zähler steigt und eine Route zurück zur SQL-Generierung führt, hast du Produktverhalten gebaut.

Genau dort beginnt Graph Engineering.

Nicht beim Diagramm. Nicht beim zweiten Agenten. Nicht bei einer möglichst beeindruckenden Anzahl von Nodes.

Sondern dann, wenn eine Route wichtig genug ist, dass sie sichtbar, begrenzt, testbar und später erklärbar sein muss.

Die kurze Version

Das neue Paper Graph-Based Agentic AI with LangGraph liefert drei ausführbare Rezepte:

  1. SQL-Analytics mit Validierung und Repair-Loop
  2. Agentic RAG mit Evidenz-Gate und Citation-Check
  3. Policy Review mit Human Interrupt und Checkpoint

Die Autoren machen dabei etwas richtig, das im aktuellen Graph-Hype schnell verloren geht:

Sie behaupten nicht, dass ein Graph das Modell intelligenter macht.

Der Graph macht andere Dinge besser. Er gibt dir explizite Orte, an denen der Workflow State speichert, Fehler routet, auf Menschen wartet, nach einer Unterbrechung weiterläuft und erklärt, warum ein bestimmter Pfad genommen wurde.

3
ausführbare Workflow-Rezepte
15
mitgelieferte Fixture-Fälle lokal ausgeführt
0
Produktions-Benchmarks im Paper

Der letzte Wert ist wichtig.

Das Paper ist ein Practitioner Guide, kein Beweis dafür, dass LangGraph Accuracy, Latenz oder Kosten verbessert.

Ein Graph ist eine ausgelagerte Entscheidung

Ein einfacher Agent-Loop sieht ungefähr so aus:

Der einfache Agent-Loop

solange der nächste Schritt lokal und kurzlebig bleibt

  1. 01
    Kontext
  2. 02
    Modell
  3. 03
    Tool
  4. 04
    Beobachtung
  5. 05
    Modell
  6. 06
    Stop

Das ist für viele Aufgaben völlig ausreichend.

Der Agent ruft ein Tool auf, liest das Ergebnis und entscheidet über den nächsten Schritt. Ein ReAct-artiger Loop kann erstaunlich viel leisten, ohne dass du einen Workflow-Graphen einführst.

Das Problem beginnt, wenn die nächste Entscheidung nicht mehr nur Denkverhalten des Modells ist, sondern ein Vertrag mit dem Nutzer oder dem Betriebssystem:

  • Schwache Evidenz darf nicht zu einer gestützten Antwort führen.
  • Nach drei SQL-Fehlern muss der Run stoppen.
  • Eine Kündigungsempfehlung darf nicht ohne Freigabe finalisiert werden.
  • Ein pausierter Vorgang muss nach einem Neustart weiterlaufen.
  • Ein Operator muss später erkennen können, warum der Agent eskaliert hat.

Dann reicht „das Modell wird sich hoffentlich erinnern“ nicht mehr.

Prompt-Logik vs. explizite Route

Im Prompt versteckt

  • „Versuche es bei Fehlern noch einmal.“
  • „Antworte nur mit guten Quellen.“
  • „Frage bei hohem Risiko einen Menschen.“
  • „Erkläre, was du getan hast.“

Im Workflow sichtbar

  • error + attempts < limit → repair
  • weak evidence → retrieve again oder fail closed
  • risk=high → interrupt + persistierter Checkpoint
  • Route und State ergeben einen rekonstruierbaren Trace.

Der Graph macht die Entscheidung nicht automatisch korrekt.

Er macht sie adressierbar.

Du kannst sie testen. Du kannst sie beobachten. Du kannst sie einer Policy zuordnen. Du kannst sie ändern, ohne den gesamten Prompt umzuschreiben.

Die drei Rezepte aus dem Paper

1. SQL: Fehler werden zu einer Route

Der SQL-Workflow läuft nicht einfach von Frage zu Antwort.

schema
  → sql_generation
  → validation
      ├─ valid → execution → summary
      ├─ error + budget → sql_generation
      └─ error + exhausted → fail

Das Entscheidende ist nicht die SQL-Generierung. Das kann auch ein einfacher Agent.

Das Entscheidende ist, dass error und attempts Teil des typisierten States sind. Die Anwendung – nicht ein optimistischer Satz im Prompt – entscheidet, ob noch ein Versuch erlaubt ist.

Damit wird der Retry zu testbarem Produktverhalten.

2. RAG: Schwache Evidenz wird zu einem Zustand

Beim RAG-Rezept entscheidet die Qualität der gefundenen Dokumente über den nächsten Pfad:

retrieve
  → grade evidence
      ├─ strong → generate → verify citations → finalize
      ├─ weak + budget → retrieve again
      └─ weak + exhausted → unsupported / failed

Das ist eine kleine, aber wichtige Verschiebung.

Viele RAG-Systeme behandeln Evidenzqualität als Prompt-Tipp: „Nutze nur die bereitgestellten Quellen.“ Das Paper behandelt sie als Routing-Signal.

Schlechte Evidenz produziert dann nicht nur vorsichtigere Prosa. Sie verändert die Ausführung.

3. Human-in-the-Loop: Ein Mensch wird zur Autoritätsgrenze

Das Policy-Review-Rezept ist der stärkste Use Case:

draft
  → risk score
      ├─ low → finalize
      └─ high → interrupt → human review → resume → finalize

Der Workflow pausiert, speichert seinen State und wartet auf eine externe Entscheidung. Danach wird derselbe Thread mit Reviewer-Feedback fortgesetzt.

Ein Callback allein reicht dafür nicht. Ein Ticket allein reicht nur dann, wenn der Workflow außerhalb des Graphen endet. Wenn die Ausführung später mit demselben State weitergehen soll, brauchst du eine haltbare Resume-Grenze.

Was der Graph hier wirklich kontrolliert

  • State: Welche Fakten, Fehler, Budgets und Zwischenartefakte müssen den nächsten Schritt bestimmen?
  • Routing: Welche Zustände führen zu Retry, Eskalation, Abbruch oder Finalisierung?
  • Authority: Welche Entscheidung darf das Modell treffen – und welche nicht?
  • Recovery: Wo kann der Run nach Fehler, Pause oder Neustart wieder einsteigen?
  • Trace: Welche Felder müssen erklären, warum dieser Pfad genommen wurde?

Ich habe den mitgelieferten Code ausgeführt

Das Paper liefert ein Ancillary Package mit Mock-Modell, Fixtures und drei Workflows.

Ich habe das Paket in einer isolierten Python-Umgebung installiert und die veröffentlichte Testsuite ausgeführt:

3 passed

Danach habe ich alle 15 mitgelieferten Fixture-Fälle gestartet:

  • 5 SQL-Fälle
  • 5 RAG-Fälle
  • 5 Human-Review-Fälle

Alle erreichten den erwarteten terminalen Status.

Der SQL-Tool-Fehler brauchte zwei Versuche. Die Fälle mit schwacher oder mehrdeutiger RAG-Evidenz verbrauchten ihr Retry-Budget und endeten korrekt als failed. Eine abgelehnte Human-Freigabe endete als escalated.

Das ist ein gutes Zeichen: Die Rezepte sind nicht nur Pseudocode.

Aber die Reproduzierbarkeit hat eine Grenze. Die committed Pytest-Datei enthält nur drei Testfunktionen. Viele Fehler- und Recovery-Fälle liegen als Fixtures vor, werden von der Testsuite aber nicht mit eigenen Assertions abgedeckt.

Mein Urteil:

Ausführbarer Architektur-Guide: ja. Vollständige Regression-Suite: nein. Produktionsnachweis: ausdrücklich nein.

Wann du keinen Graphen brauchst

Graph Engineering kann sehr schnell zu Diagramm-Engineering werden.

Du zerlegst eine lineare Aufgabe in zwölf Nodes, führst drei State-Schemas ein und baust Routing-Code für einen Prozess, den ein if und ein Retry-Wrapper verständlicher gelöst hätten.

Das Paper warnt selbst davor.

Graph oder einfacher Loop?

Graph erwägen

  • ✓ State muss Pause oder Neustart überleben.
  • ✓ Fehler brauchen unterschiedliche Recovery-Pfade.
  • ✓ Eine Route verändert sichtbares oder reguliertes Produktverhalten.
  • ✓ Ein Mensch oder anderes System muss freigeben, ändern oder vetoen.
  • ✓ Der Pfad muss später rekonstruiert und separat getestet werden.

Einfach halten

  • × Ein Prompt, ein Tool, eine Antwort.
  • × Ein normaler Retry-Wrapper löst den Fehlerfall.
  • × Das eigentliche Problem ist nur strukturiertes JSON.
  • × Das eigentliche Problem ist Prompt- oder Program-Optimierung.
  • × Der Graph existiert nur, weil mehrere Agenten moderner wirken.

Für strukturierte Extraktion ist ein Schema-first Stack oft passender.

Für Prompt- und Program-Optimierung ist DSPy näher am Problem.

Für einen kurzen Tool-Loop reicht häufig ein SDK oder ReAct-Muster.

Und selbst LangGraph hat eine Functional API, mit der du Persistence und Interrupts in normalem Python-Control-Flow nutzen kannst. Du musst nicht jede Workflow-Idee zuerst als sichtbaren StateGraph modellieren.

Die eigentliche Schwelle

Ich würde einen Schritt dann zu einem eigenen Node machen, wenn mindestens eine dieser Fragen mit Ja beantwortet wird:

  1. Muss ich diesen Schritt unabhängig testen?
  2. Braucht er eine eigene Retry-, Timeout- oder Abbruchregel?
  3. Soll er im Trace als Produkt- oder Betriebsereignis sichtbar sein?
  4. Darf vor oder nach ihm eine andere Instanz eingreifen?
  5. Muss sein Ergebnis einen Prozessneustart überleben?

Wenn alle Antworten Nein sind, gehört der Schritt wahrscheinlich in eine normale Funktion.

Wenn mehrere Antworten Ja sind, hast du keine Prompt-Frage mehr.

Du hast eine Workflow-Grenze.

Was das Paper für Produktion offenlässt

Die drei Rezepte zeigen die Form. Sie zeigen nicht den Produktionsbetrieb.

Nicht gemessen werden:

  • Modellqualität
  • Latenz
  • Token- und Infrastrukturkosten
  • Streaming UX
  • Observability-Backends
  • Deployment-Topologie
  • Lastverhalten
  • Cross-Session Memory
  • Multi-Agent-Supervisor-Worker-Graphs

Auch der Human-in-the-Loop-Demo-Flow nutzt einen In-Memory-Checkpointer. Für lokale Tests ist das okay. In Produktion braucht der State einen dauerhaften Store.

Und es gibt eine wichtige Runtime-Falle: Laut offizieller LangGraph-Dokumentation startet ein unterbrochener Node beim Resume wieder von vorne. Side Effects vor dem Interrupt müssen deshalb idempotent sein.

Das ist genau die Art Detail, an der ein schönes Diagramm zu einem schlechten System wird.

Ein produktionsfähiger Graph braucht zusätzlich:

authorization
idempotency
timeouts + cancellation
retry budgets
tenant isolation
trace retention
checkpoint lifecycle
route contract tests
output quality evals

Der Graph ersetzt diese Arbeit nicht.

Er gibt ihr nur explizite Stellen.

Das bessere mentale Modell

Graph Engineering ist nicht „mehrere intelligente Nodes miteinander verbinden“.

Es ist die Arbeit, aus impliziten Agentenentscheidungen einen kontrollierbaren Zustandsautomaten zu machen:

Vom Agenten-Loop zum Produktvertrag

nur die folgenreichen Übergänge verdienen eigene Grenzen

  1. 01
    Model proposal
  2. 02
    Typed state
  3. 03
    Deterministic gate
  4. 04
    Explicit route
  5. 05
    Checkpoint or action
  6. 06
    Trace + eval

Das Modell darf Inhalt erzeugen.

Das Modell darf Kandidaten vorschlagen.

Das Modell darf innerhalb eines Nodes explorieren.

Aber Retry-Budgets, Autoritätsgrenzen, Abbruchbedingungen und persistente Zustandswechsel sollten nicht als lose Hoffnung im Prompt leben.

Sobald eine Route Teil des Produktvertrags wird, gehört sie aus dem Prompt heraus.

Dann beginnt Graph Engineering.

Quellen

FAQ

Was ist Graph Engineering bei AI Agents?

Graph Engineering macht die Zustände, Arbeitsschritte und Übergänge eines Agenten-Workflows explizit. Es ist besonders nützlich, wenn Fehler eine Recovery-Route brauchen, Arbeit pausieren und fortgesetzt werden muss oder menschliche Freigaben Teil des Prozesses sind.

Wann sollte ich LangGraph statt eines einfachen Agent-Loops nutzen?

Wenn State einen Neustart überleben muss, Verzweigungen sichtbares Produktverhalten ändern, Retries begrenzt und testbar sein sollen, ein Human Gate benötigt wird oder der Ausführungspfad später rekonstruiert werden muss.

Macht ein Workflow-Graph den Agenten intelligenter?

Nein. Das Paper behauptet keinen Intelligenzgewinn. Ein Graph macht den Workflow kontrollierbarer, beobachtbarer und besser testbar; die Modellqualität muss separat evaluiert werden.

Ist Graph Engineering dasselbe wie ein Multi-Agent-System?

Nein. Ein Graph kann einen einzigen Agenten, deterministische Tools und menschliche Freigaben orchestrieren. Mehrere Agenten sind nur eine mögliche Form von Nodes und nicht der Grund, einen Graphen einzuführen.

Brauchen Sie AI-first Architekturunterstützung?

Schreiben Sie mir eine kurze Nachricht zu Ihrem Projekt oder technischen Engpass.

Kontakt aufnehmen