Agenten-Loop für autonome Aufgaben implementieren (Wahrnehmung, Planung, Aktion, Reflexion)
Strukturieren Sie Ihren KI-Agenten in einem kontinuierlichen Loop, der Screenshots aufnimmt, GPT-4o um einen Plan bittet, den Plan ausführt und das Ergebnis reflektiert, bis die Aufgabe abgeschlossen ist.
Originalvideo ansehen: Keine Erbschaftsteuer unter € 10 Mio. (12x Freibetrag & Güte...Haupt-Agenten-Loop definieren
Erstellen Sie eine `while`-Schleife, die läuft, bis der Agent die Aufgabe als 'DONE' meldet oder ein Timeout erreicht wird.
def run_agent(task_description):
max_iterations = 10 # Schutz vor Endlosschleifen
current_iteration = 0
while current_iteration < max_iterations:
print(f"\n--- Iteration {current_iteration + 1} ---")
# ... (Schritte 2-5 hier einfügen)
current_iteration += 1
print("Agent beendet oder Timeout erreicht.")Wahrnehmung: Screenshot erstellen und kodieren
Innerhalb des Loops, erstellen Sie einen aktuellen Screenshot und kodieren Sie ihn in Base64. Dies ist die 'Sehfähigkeit' des Agenten.
# ... (Code von Playbook 2, Schritt 2 und 4 hier einfügen)
image_base64 = encode_image('screenshot.png')Planung: GPT-4o um Code bitten
Senden Sie den Screenshot und die Aufgabenbeschreibung an GPT-4o und fordern Sie den nächsten Python-Code-Block an.
# ... (Code von Playbook 3, Schritt 2 und 3 hier einfügen)
response = client.chat.completions.create(model="gpt-4o", messages=prompt_messages, max_tokens=1000)
generated_code = response.choices[0].message.contentAktion: Generierten Code ausführen
Führen Sie den von GPT-4o erhaltenen Python-Code aus, um mit der GUI zu interagieren.
# ... (Code von Playbook 4, Schritt 2 hier einfügen)
if "DONE" in generated_code:
print("Aufgabe abgeschlossen!")
break
exec(generated_code)Reflexion/Statusprüfung
Nach der Aktion kehrt der Loop zu Schritt 2 zurück, um einen neuen Screenshot zu erstellen und den Zustand neu zu bewerten. Der Prompt sollte GPT-4o anweisen, den Fortschritt zu bewerten und den Plan bei Bedarf anzupassen.
# Die Reflexion ist implizit, da der Agent in der nächsten Iteration einen neuen Screenshot erhält und seinen Plan basierend darauf anpasst.