Hallo zusammen, hier ist Alex von agntai.net. Es ist Freitag, der 21. März 2026, und ich habe mich in letzter Zeit mit einem bestimmten Problem in der Entwicklung von KI-Agenten beschäftigt, das viele von euch wahrscheinlich auch haben. Wir haben alle die unglaublichen Demos von Agenten gesehen, die das Web durchsuchen, Code schreiben und sogar komplexe Projekte managen können. Aber wenn man versucht, etwas wirklich Zuverlässiges zu bauen, das nicht nur in einer Sandbox funktioniert, sondern auch mit der Unbestimmtheit und unerwarteten Zuständen in der realen Welt umgehen kann, da wird es ernst. Ehrlich gesagt, der Weg ist oft ziemlich holprig.
Heute möchte ich über etwas sprechen, das immer wichtiger wird, um wirklich effektive KI-Agenten zu bauen: Adaptive Fehlerwiederherstellung und Selbstkorrektur-Mechanismen. Vergesst das bloße Abfangen von Ausnahmen; ich spreche von Agenten, die introspektiv sein können, verstehen *warum* sie gescheitert sind und einen neuen Weg nach vorne finden, oft ohne menschliches Eingreifen. Es geht hierbei nicht nur darum, Agenten widerstandsfähiger zu machen; es geht darum, sie näher an die allgemeine Intelligenz zu bringen, selbst in einem engen Bereich.
Meine eigene Reise begann vor einigen Monaten, als ich an einem internen Agenten für unsere Content-Pipeline arbeitete. Seine Aufgabe war es, eine rohe Idee zu nehmen, sie zu recherchieren, einen Entwurf zu erstellen und diesen dann an einen menschlichen Redakteur weiterzuleiten. Klingt einfach, oder? Die erste Version war für etwa 80 % der Fälle großartig. Aber die anderen 20 %? Purer Chaos. Er blieb in Schleifen stecken, erzeugte unsinnige Entwürfe, weil eine Websuche unerwartet fehlschlug, oder gab einfach mit einer generischen „Aufgabe fehlgeschlagen“-Meldung auf. Es war frustrierender als hilfreich, und ich stellte fest, dass ich mehr Zeit damit verbrachte, den Agenten zu debuggen, als die Aufgabe selbst zu erledigen.
Diese Erfahrung machte eine eklatante Lücke deutlich: Unsere Agenten sind oft brillant in der Ausführung, wenn alles nach Plan läuft, aber unglaublich zerbrechlich, wenn das nicht der Fall ist. Und in der realen Welt läuft selten alles perfekt nach Plan.
Über einfache Wiederholungen hinaus: Die Notwendigkeit zur Introspektion
Die grundlegende Fehlerbehandlung in Agenten beschränkt sich meist auf Wiederholungen oder festgelegte Fallback-Strategien. Wenn ein API-Aufruf fehlschlägt, versuchen wir es erneut. Wenn das fehlschlägt, verwenden wir ein zwischengespeichertes Ergebnis. Diese Methoden sind in Ordnung für vorübergehende Probleme, beheben aber keine grundlegenden Missverständnisse oder logischen Sackgassen. Ein Agent, der versucht, Dokumentation zu einem bestimmten Framework zu finden, könnte einen „Seite nicht gefunden“-Fehler erhalten. Eine einfache Wiederholung wird es nicht beheben, wenn die URL selbst falsch ist oder das Framework umbenannt wurde. Der Agent muss den Fehler im Kontext *verstehen*.
Hier kommt die Introspektion ins Spiel. Wir müssen Agenten die Fähigkeit geben, ihre eigenen vergangenen Handlungen, die beobachtete Umgebung und den aktuellen Fehler zu betrachten und dann eine Hypothese darüber aufzustellen, was schiefgelaufen ist. Es ist wie ein menschlicher Programmierer, der seinen eigenen Code debuggt – man drückt nicht einfach wieder auf „Ausführen“; man liest die Fehlermeldung, verfolgt die Ausführung und ermittelt die Wurzelursache.
Die „Warum bin ich gescheitert?“-Eingabeaufforderung
Eine der einfachsten, aber wirkungsvollsten Techniken, die ich begonnen habe zu verwenden, ist das, was ich die „Warum bin ich gescheitert?“-Eingabeaufforderung nenne. Nach einem Toolaufruf oder einem internen Denkprozess, der fehlschlägt, anstatt einfach den Fehler zu protokollieren, gebe ich den gesamten Kontext des Fehlers zurück in die Denkeinheit des Agenten. Das umfasst:
- Das ursprüngliche Ziel/Teilziel
- Die versuchte Aktion
- Die genaue Fehlermeldung oder Beobachtung des Fehlers
- Relevante Teile des internen Zustands des Agenten (z. B. frühere Beobachtungen, aktueller Plan)
Dann fordere ich das LLM auf, zu erklären, *warum* es denkt, dass der Fehler aufgetreten ist und korrigierende Maßnahmen vorzuschlagen. Dies ist ein Meta-Denkschritt, der effektiv den Agenten bittet, sich selbst zu debuggen.
# Beispiel: Python-Pseudocode für einen "Warum bin ich gescheitert?"-Schritt
def execute_action(agent_state, action_plan):
try:
# Versuch, die geplante Aktion auszuführen (z. B. einen Websuch-Tool aufrufen)
result = agent_state.tools.execute(action_plan.tool_name, action_plan.args)
return result, "success"
except Exception as e:
# Bei einem Fehler den Kontext erfassen
failure_context = {
"original_goal": agent_state.current_goal,
"attempted_action": action_plan,
"error_message": str(e),
"current_plan_step": agent_state.current_plan_step,
"recent_observations": agent_state.recent_observations[-3:] # Letzte 3 Beobachtungen
}
return failure_context, "failure"
def self_correct(agent_state, failure_context):
prompt = f"""
Ich wollte folgendes Ziel erreichen: {failure_context['original_goal']}
Ich habe diese Aktion versucht: {failure_context['attempted_action']}
Aber es ist mit folgendem Fehler fehlgeschlagen: {failure_context['error_message']}
Mein aktueller Plan-Schritt war: {failure_context['current_plan_step']}
Meine letzten Beobachtungen waren: {failure_context['recent_observations']}
Bitte erkläre mir anhand dieser Informationen:
1. Was denkst du, ist schiefgelaufen?
2. Schlage 2-3 alternative Strategien oder korrigierende Maßnahmen vor, die ich ausprobieren kann.
3. Falls zutreffend, schlage eine Modifikation meines internen Plans oder Zustands vor.
"""
# Diese Eingabeaufforderung an das LLM senden
llm_response = agent_state.llm.generate(prompt)
# LLM-Antwort analysieren, um vorgeschlagene Korrekturen zu erhalten
# Diese Analyse muss solide sein!
suggested_corrections = parse_llm_suggestions(llm_response)
return suggested_corrections
# Agent-Loop-Ausschnitt
# ...
action_result, status = execute_action(agent_state, current_action)
if status == "failure":
corrections = self_correct(agent_state, action_result)
# Der Agent wählt dann aus den Korrekturen oder plant basierend darauf neu
# Zum Beispiel könnte es sein internes Wissen aktualisieren oder ein anderes Tool ausprobieren
# ...
Dieser Ansatz ist nicht narrensicher, erhöht jedoch die Fähigkeit des Agenten, sich von unerwarteten Fehlern zu erholen, drastisch. Ich habe gesehen, wie Agenten mithilfe dieses Mechanismus richtig identifiziert haben, dass ein bestimmter API-Endpunkt nicht mehr unterstützt wird oder dass eine Suchanfrage zu vage war, was sie dazu brachte, ihren Ansatz neu zu formulieren.
Dynamische Planmodifikation und Neuplanung
Sobald ein Agent versteht (oder spekuliert), warum er gescheitert ist, besteht der nächste Schritt darin, seinen Plan anzupassen. Dabei geht es nicht nur darum, ein anderes vordefiniertes Fallback auszuwählen. Es geht darum, den bestehenden Plan dynamisch zu ändern oder in schwerwiegenden Fällen einen vollständigen Neuplanungszyklus auf der Grundlage des neuen Verständnisses einzuleiten.
Stellt euch das so vor: Wenn ihr versucht, einen Kuchen zu backen und merkt, dass ihr keinen Zucker mehr habt, versucht ihr nicht einfach, ihn ohne Zucker zu backen (einfache Wiederholung) oder gebt auf (fester Fehler). Ihr könntet erkennen, dass ihr zum Laden gehen müsst, oder ein Rezept finden, das stattdessen Honig verwendet, oder entscheiden, stattdessen Kekse zu machen. Dies sind alles dynamische Planmodifikationen oder Neuplanungsversuche auf der Grundlage neuer Informationen.
Hierarchische Planung und Rückschritte
Für komplexere Agenten habe ich festgestellt, dass hierarchische Planung unglaublich nützlich ist. Wenn eine niedrigstufige Aktion fehlschlägt, kann der Agent versuchen, dies auf dieser Ebene zu korrigieren. Wenn das fehlschlägt, kann er den Fehler auf ein höheres Teilziel „hochanzeigen“. Dies ermöglicht einen strukturierten Rückschritt. Stellt euch vor, unser Content-Agent kann keine guten Quellen für ein bestimmtes Unterthema finden.
- Level 1 (Aktionsfehler): Eine bestimmte Websuchanfrage liefert keine relevanten Ergebnisse. Der Agent könnte versuchen, eine andere Suchmaschine zu verwenden oder die Anfrage umzuformulieren (lokale Korrektur).
- Level 2 (Teilziel-Fehler): Wenn mehrere Versuche, Quellen für dieses Unterthema zu finden, fehlschlagen, könnte der Agent entscheiden, dass dieses Unterthema nicht machbar oder zu obskur ist. Er könnte dann die Gliederung neu formulieren und dieses Unterthema mit einem anderen zusammenfassen oder einen anderen Ansatz für den Artikel vorschlagen (Änderung des Teilziels).
- Level 3 (Ziel-Fehler): In extremen Fällen, wenn sich die gesamte Prämisse des Artikels als nicht recherchierbar herausstellt, könnte der Agent dem Benutzer zurückmelden, dass die ursprüngliche Idee angepasst werden muss oder nicht machbar ist (Neuplanung/Feedback auf oberster Ebene).
Die Implementierung erfordert nicht nur ein gutes Planungsmodul, sondern auch einen klaren Weg für den Agenten, seinen Plan hierarchisch darzustellen und die Abhängigkeiten zwischen den verschiedenen Schritten zu verstehen. Werkzeuge wie Funktionsaufrufe oder benutzerdefinierte Tool-Definitionen werden entscheidend, bei denen jeder Toolaufruf mit einem bestimmten Teilziel verknüpft werden kann.
# Beispiel: Darstellen eines hierarchischen Plans (vereinfacht)
class AgentPlan:
def __init__(self, goal, steps=None):
self.goal = goal
self.steps = steps if steps is not None else []
self.current_step_index = 0
def add_step(self, step):
self.steps.append(step)
def get_current_step(self):
if self.current_step_index < len(self.steps):
return self.steps[self.current_step_index]
return None
def advance_step(self):
self.current_step_index += 1
def rollback_to_step(self, index):
self.current_step_index = index
# Möglicherweise nachfolgende Schritte verwerfen, wenn sie jetzt ungültig sind
def modify_step(self, index, new_step_details):
if index < len(self.steps):
self.steps[index].update(new_step_details) # Angenommen, der Schritt ist ein dict oder ähnlich
# Ein Schritt könnte enthalten:
# {
# "type": "tool_call",
# "tool_name": "web_search",
# "args": {"query": "neueste Techniken zur Fehlerwiederherstellung bei KI-Agenten"},
# "sub_goal": "Erste Recherche für den Artikel sammeln"
# }
# Wenn ein Toolaufruf fehlschlägt, kann der Agent auf das "sub_goal" schauen und über die Neuplanung auf dieser Teilziel-Ebene nachdenken, möglicherweise den aktuellen Schritt und nachfolgende Schritte im Zusammenhang mit diesem Teilziel modifizieren oder ersetzen.
Überwachung und Anomalieerkennung
Selbstkorrektur bedeutet nicht nur, auf explizite Fehler zu reagieren; es geht auch darum, zu erkennen, wann etwas *schiefgeht*, selbst wenn keine Fehlermeldung angezeigt wird. Hier kommen Monitoring und Anomalieerkennung ins Spiel. War der Agent zu lange im gleichen Zustand? Produziert er sich wiederholende Ausgaben? Weichen seine Aktionen erheblich vom erwarteten Pfad ab?
Bei meinem Inhalt-Agent fiel mir auf, dass er manchmal in einer Schleife steckenblieb, in der er nach einem Begriff suchte, keine guten Ergebnisse erhielt, den Begriff leicht umformulierte, erneut suchte und das Ganze wiederholte. Es trat kein „Fehler“ auf, aber es machte offensichtlich keine Fortschritte. Ich implementierte eine einfache Heuristik: Wenn der Agent ähnliche Aktionen (z. B. Web-Suchen mit geringfügigen Variationen) mehr als 'N' Mal ausführt, ohne dass sich sein interner Zustand oder die Beobachtungen (d.h. nützliche Informationen finden) signifikant ändern, wird ein Zustand „Anomalie erkannt“ ausgelöst.
Wenn eine Anomalie erkannt wird, wird der Agent mit einer ähnlichen Frage wie „Warum stecke ich fest?“ konfrontiert. Das zwingt ihn dazu, über seinen Fortschritt (oder das Fehlen desselben) nachzudenken und einen anderen Ansatz zu erwägen. Dies könnte alles sein, von einer Erweiterung des Suchbereichs bis hin zur Empfehlung einer menschlichen Intervention, wenn er wirklich keinen Ausweg findet.
Beispiele für Anomalieerkennungsmetriken:
- Aktion-Wiederholung: Dasselbe Werkzeug, ähnliche Argumente, mehrfach.
- Zustands-Stagnation: Der interne Zustand (z. B. angesammeltes Wissen, Fortschritt des Plans) hat sich über mehrere Züge hinweg nicht sinnvoll verändert.
- Ausgabe-Entropie: Agent produziert sehr ähnliche oder identische Ausgaben wiederholt, wenn vielfältige Ausgaben erwartet werden.
- Timeouts: Eine Aktion dauert erheblich länger als erwartet (selbst wenn sie letztendlich erfolgreich ist, könnte das auf ein Problem hinweisen).
Diese Metriken müssen nicht übermäßig komplex sein. Einfache Zähler und Vergleichslogik können einen langen Weg gehen, um zu erkennen, wann ein Agent vom Kurs abkommt, ohne abzustürzen.
Der Mensch in der Schleife (sanfte Eskalation)
Selbst mit fortschrittlicher Selbstkorrektur wird es Situationen geben, in denen der Agent ein Problem nicht eigenständig lösen kann. In diesen Fällen ist eine sanfte Eskalation zu einem Menschen von größter Bedeutung. Ein gut gestalteter Agent sollte nicht einfach abstürzen oder eine kryptische Fehlermeldung ausgeben; er sollte Kontext bereitstellen, erklären, was er versucht hat, warum er glaubt, gescheitert zu sein, und was er vom Menschen benötigt.
Mein Inhalt-Agent wird, nachdem er seine Selbstkorrekturstrategien für ein bestimmtes Unterthema erschöpft hat, eine prägnante Zusammenfassung erzeugen wie:
"Agent kann die Recherche zu 'Emerging Trends in Quantum AI Ethics' nicht abschließen.
Versucht:
1. Web-Suchen nach 'quantum AI ethics trends 2026', 'ethical implications quantum computing', 'future of AI ethics quantum'.
2. Semantic Search in akademischen Arbeiten mit den Schlüsselwörtern 'quantum AI ethics'.
3. Suche in spezifischen Fachzeitschriften: Nature AI, IEEE Spectrum.
Hypothese: Eingeschränkte öffentliche Informationen oder extrem nischiges Thema.
Empfehlung: Bitte spezifische Schlüsselwörter, relevante Experten angeben oder mitteilen, ob dieses Unterthema weggelassen/ersetzt werden kann."
Das ist von unschätzbarem Wert. Es spart mir Zeit beim Debuggen und gibt mir umsetzbare Informationen, um dem Agenten zu helfen, wieder auf Kurs zu kommen. Es verwandelt eine frustrierende „Agent fehlgeschlagen“-Nachricht in eine kooperative Problemlösungsinteraktion.
Handlungsfähige Erkenntnisse für Ihr nächstes Agentenprojekt
Agenten zu entwickeln, die sich wirklich anpassen und selbst korrigieren können, ist eine Reise, kein Ziel. Aber durch die Integration dieser Konzepte können Sie deren Widerstandsfähigkeit und Nützlichkeit erheblich verbessern. Hier ist, was ich empfehle:
- Implementieren Sie einen Mechanismus „Warum bin ich gescheitert?“: Füttern Sie nach jedem fehlgeschlagenen Toolaufruf oder Schrittreasoning den Kontext zurück in Ihr LLM, um eine Erklärung und Vorschläge zur Wiederherstellung zu erhalten. Das ist unkompliziert und hat hohe Auswirkungen.
- Gestalten Sie eine dynamische Planmodifikation: Haben Sie nicht nur feste Rückfalle. Geben Sie Ihrem Agenten die Fähigkeit, seinen internen Plan basierend auf neuen Informationen oder Fehlern zu aktualisieren. Berücksichtigen Sie hierarchische Planung für strukturierte Rückfälle.
- Anomalieerkennung hinzufügen: Überwachen Sie den Fortschritt des Agenten auf Stagnation, Wiederholung oder ungewöhnliches Verhalten, selbst ohne explizite Fehler. Stimmen Sie Selbstreflexionsaufforderungen ab, wenn Anomalien erkannt werden.
- Sanfte Eskalation annehmen: Wenn ein Agent wirklich stecken bleibt, lassen Sie ihn eine klare, prägnante Zusammenfassung des Problems, was er versucht hat, und was er von einem Menschen benötigt, generieren. Dies verwandelt Misserfolge in eine kooperative Gelegenheit.
- Iterieren und Beobachten: Setzen Sie Ihre Agenten mit solidem Logging ein. Achten Sie genau darauf, *wie* sie scheitern und *wie* sie versuchen, sich zu erholen. Dieses Feedback aus der Praxis ist entscheidend, um Ihre Selbstkorrekturstrategien zu verfeinern.
Die Zukunft der KI-Agenten besteht nicht nur darin, sie in ihren Kernaufgaben intelligenter zu machen, sondern auch darin, sie robuster und widerstandsfähiger in einer unvorhersehbaren Welt zu gestalten. Durch den Fokus auf adaptive Fehlerbehebung und Selbstkorrektur können wir Agenten aufbauen, die nicht nur in Demos beeindruckend sind, sondern echte zuverlässige Partner in unserer Arbeit. Gehen Sie raus und machen Sie Ihre Agenten smarter in Bezug auf ihre eigenen Fehler!
Bis zum nächsten Mal, weiterhin bauen und lernen!
Alex Petrov
agntai.net
Verwandte Artikel
- Beste Praktiken für die Infrastruktur von KI-Agenten
- Top KI-Agenteninfrastruktur-Tools
- Modelloptimierung: Echte Gespräche über das Beheben schlechter Gewohnheiten
🕒 Published: