Den Agent-Loop verstehen
Wissen
Dein Agent ist jetzt konfiguriert: System Prompt, Modell, Tools und MCP-Anbindung stehen. Aber wie arbeitet er tatsächlich? In diesem Abschnitt beobachtest du den Agent-Loop in Aktion -- den Kreislauf aus Denken, Handeln und Beobachten, den du aus Modul 04 als ReAct-Pattern kennst.
ReAct in der Praxis
Erinnere dich: Ein Agent arbeitet nicht linear wie ein Chatbot. Er durchläuft einen Loop:
- Think (Denken): Der Agent analysiert die Aufgabe und plant den nächsten Schritt
- Act (Handeln): Der Agent ruft ein Tool auf -- z.B. eine Datei lesen oder eine Suche starten
- Observe (Beobachten): Der Agent wertet das Ergebnis des Tool-Aufrufs aus
- Repeat: Zurück zu Think -- bis die Aufgabe erledigt ist
Der Loop im Code
So sieht der Agent-Loop als Python-Implementation aus:
import anthropic
client = anthropic.Anthropic()
def agent_loop(task: str, tools: list, system_prompt: str):
messages = [{"role": "user", "content": task}]
while True:
# THINK: Agent analysiert und entscheidet
response = client.messages.create(
model="claude-sonnet-5",
max_tokens=4096,
system=system_prompt,
tools=tools,
messages=messages
)
# Prüfen ob der Agent fertig ist
if response.stop_reason == "end_turn":
# Agent hat seine finale Antwort gegeben
return extract_text(response)
# ACT: Agent will ein Tool aufrufen
if response.stop_reason == "tool_use":
tool_calls = [
block for block in response.content
if block.type == "tool_use"
]
# Tool-Ergebnisse sammeln
tool_results = []
for call in tool_calls:
# OBSERVE: Tool ausführen und Ergebnis erhalten
result = execute_tool(call.name, call.input)
tool_results.append({
"type": "tool_result",
"tool_use_id": call.id,
"content": result
})
# Konversation fortfuehren
messages.append({"role": "assistant", "content": response.content})
messages.append({"role": "user", "content": tool_results})
# Sicherheitsabbruch nach 20 Iterationen
if len(messages) > 40:
return "Agent-Loop abgebrochen: Zu viele Iterationen."
Warum der Sicherheitsabbruch wichtig ist
Ohne Limit kann ein Agent in eine Endlosschleife geraten -- zum Beispiel, wenn er ein Tool immer wieder aufruft, ohne das Ergebnis richtig zu interpretieren. Das kostet nicht nur Zeit, sondern auch Geld (jede Iteration verbraucht Tokens). Ein Limit von 10-20 Iterationen ist ein guter Startwert.
Verstehen
Probiere es aus: Der Agent-Playground
Im folgenden Playground kannst du vordefinierte Szenarien durchspielen und beobachten, wie ein Agent denkt, handelt und beobachtet. Klicke dich Schritt für Schritt durch und achte darauf, wie jede Phase auf der vorherigen aufbaut.
Aufgabe
Finde den aktuellen Bitcoin-Preis
Drücke Starten oder Space um den Agent-Loop zu starten.
Was du beobachten solltest
Achte beim Durchspielen auf drei Dinge:
- Planung vor Aktion: Der Agent denkt immer erst nach, bevor er ein Tool aufruft. Er springt nicht blind los.
- Kontextuelles Beobachten: Nach jedem Tool-Aufruf interpretiert der Agent das Ergebnis im Kontext der Aufgabe -- er liest nicht nur, er versteht.
- Konvergenz: Mit jedem Schritt kommt der Agent der Lösung näher. Gute Agents brauchen wenige Iterationen.
Anwenden
Ein Agent ruft dasselbe Tool fünfmal hintereinander auf, ohne Fortschritt zu machen. Was ist die wahrscheinlichste Ursache?
Reflektieren
Der Agent-Loop ist das Herzstück jedes Agents. Je besser du verstehst, wie Think, Act und Observe zusammenspielen, desto besser kannst du Agents debuggen und optimieren. Das häufigste Problem in der Praxis sind nicht schlechte Modelle -- es sind unklare Tool-Beschreibungen und fehlende Guardrails.