Zielstapel und Backtracking
Legen Sie Teilziele auf einen Stack, entfernen Sie sie nach Abschluss und führen Sie bei Sackgassen ein Backtracking durch — klassische KI-Planung.
Zielstapel und Backtracking ist eine kostenlose AI Agents-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des AI Agents-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der AI Agents-Kurs umfasst insgesamt 4 Lektionen.
Teile dieser Lektion wurden noch nicht übersetzt und werden auf Englisch angezeigt.
Ein Stapel von Zielen
Klassische KI-Planung verwendet einen Zielstapel: Legen Sie Teilziele darauf, sobald sie auftreten, und entfernen Sie sie nach Abschluss. Agenten können dieselbe Datenstruktur verwenden:
goal_stack = []
def push(goal):
goal_stack.append(goal)
def pop():
return goal_stack.pop() if goal_stack else None
def current():
return goal_stack[-1] if goal_stack else None
# --- demo ---
push('write the report')
push('collect the data')
print(f'Current goal: {current()}')
print(f'Popped: {pop()}')
print(f'Current goal after pop: {current()}')
Example: Refactoring Workflow
push('Refactor auth')
while current():
g = current()
if g == 'Refactor auth':
if not done('add_oauth_dep'):
push('Add OAuth dependency')
elif not done('replace_login'):
push('Replace login endpoint')
else:
pop() # done
elif g == 'Add OAuth dependency':
# ...actually do the work...
mark_done('add_oauth_dep')
pop()Backtracking
Wenn ein Ziel fehlschlägt:
- Markieren Sie es als fehlgeschlagen
- Gehen Sie zum übergeordneten Ziel zurück
- Versuchen Sie einen anderen Ansatz (andere Teilziele)
Backtracking Example
def attempt(goal):
for approach in [oauth, saml, custom_token]:
try:
return run_with(goal, approach)
except FailedException:
continue
raise NoApproachWorked(goal)Ausprobierte Ansätze erfassen
Vermeiden Sie, denselben fehlgeschlagenen Ansatz erneut zu versuchen. Erfassen Sie pro Ziel, was bereits ausprobiert wurde:
{
'goal_id': 'refactor-auth',
'tried': ['oauth', 'saml'],
'remaining_options': ['custom_token']
}Das LLM als Zielauswähler
Verwenden Sie das LLM, um zu entscheiden, welches Ziel als Nächstes auf den Stapel gelegt wird:
next_goal = llm.invoke(f'Current goal: {current()}. Done so far: {done_list}. What sub-goal next?').content
push(next_goal)Vorbedingungen und Effekte
Übernehmen Sie das Konzept aus der STRIPS-Planung: Jede Aktion hat Vorbedingungen (was wahr sein muss) und Effekte (was wahr wird):
action = {
'name': 'replace_login',
'preconditions': ['oauth_dep_installed'],
'effects': ['login_endpoint_replaced']
}Schleife aus Planung und Ausführung
Zweistufiger Ansatz:
- Planen — ein symbolischer Planer erstellt den Zielstapel
- Handeln — der Agent führt das oberste Ziel des Stapels aus, aktualisiert den Weltzustand und plant bei Bedarf neu
Symbolisch und LLM kombiniert
Verwenden Sie für Aufgaben mit klaren Vorbedingungen (Dateioperationen, Deployments) einen symbolischen Planer. Für unscharfe Teile verwenden Sie das LLM. Kombinieren Sie beides für mehr Robustheit.
Sackgassen
Manchmal erreicht der Agent einen Zustand, in dem keine Aktion weiterhilft. Erkennen Sie solche Sackgassen und führen Sie ein weiteres Backtracking durch:
if no_progress_in_n_steps(5):
pop_to_parent()
try_different_approach()Backtracking-Tiefe begrenzen
Unbegrenztes Backtracking kann zu einer Endlosschleife führen. Begrenzen Sie die Tiefe und die Gesamtzahl der Iterationen:
MAX_BACKTRACKS = 10
if backtrack_count >= MAX_BACKTRACKS:
escalate_to_human()Backtracking für Benutzer sichtbar machen
Wenn der Agent ein Backtracking durchführt, teilen Sie dem Benutzer mit: „OAuth hat nicht funktioniert, SAML wird versucht.“ So bleibt das Vertrauen erhalten und Sie können früh eingreifen.
Backtracking-Auslöser
Wann sollte der Agent von einem Teilziel zurückgehen?
Zusammenfassung
Der Zielstapel zeigt, „wo“ sich der Agent gerade befindet. Legen Sie Teilziele darauf, entfernen Sie abgeschlossene Ziele und führen Sie bei Sackgassen ein Backtracking durch. Kombinieren Sie symbolische Planung mit der Einschätzung des LLM.
Häufig gestellte Fragen
Ist die Lektion „Zielstapel und Backtracking“ kostenlos?
Ja — der vollständige Text von „Zielstapel und Backtracking“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des AI Agents-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der AI Agents-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Zielstapel und Backtracking“?
Legen Sie Teilziele auf einen Stack, entfernen Sie sie nach Abschluss und führen Sie bei Sackgassen ein Backtracking durch — klassische KI-Planung. Du übst AI Agents mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um AI Agents zu starten?
Keine Vorkenntnisse erforderlich. AI Agents auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.
Wie lange dauert die Lektion „Zielstapel und Backtracking“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser AI Agents-Lektion Code schreiben und ausführen?
Ja. Jede AI Agents-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Hierarchische Aufgabenzerlegung
- Zielstapel und Backtracking
- Weltmodelle und Vorausplanung
- Reflexions- und Selbstkritikschleifen