← 返回列表

AI Serie Interview Fro 6: Sot eis dräi Kärmethodologien vun AI Agent: ReAct, Plan-and-Solve a Reflection

AI Agent dräi Kärmethodologien: ReAct, Plan-and-Solve a Reflection

AI Agent ass en intelligenten Agent, deen autonom seng Ëmwelt erfaasst, Entscheedungen trefft an Aktiounen ausféiert. Seng Kärmethodologien sinn haaptsächlech dräi: ReAct, Plan-and-Solve a Reflection. Hei ginn se virgestallt, ergänzt mat Flossdiagrammer a Code-Beispiller.

1. ReAct (Reasoning + Acting)

Kärgedank: Reasoning an Acting ginn ofwiesselnd gemaach. Den Agent denkt an all Schrëtt iwwer den aktuellen Zoustand an den nächste Plang (Reasoning), féiert dann eng Aktioun aus (z. B. en Tool benotzen, Informatioun sichen), a fuert dann op Basis vum Resultat weider mat Reasoning.

Flossdiagramm:

[Initialzoustand] → [Reasoning: nächste Schrëtt iwwerdenken] → [Acting: Aktioun ausféieren] → [Resultat observéieren] → [Reasoning: Plang aktualiséieren] → ... → [Final Äntwert]

Beispillcode (Pseudocode) :

def react_agent(question):
    context = []
    while not solved:
        # Reasoning: Gedankeschrëtt generéieren
        thought = llm.generate_thought(question, context)
        # Acting: op Basis vum Gedanken Aktioun wielen
        action = llm.choose_action(thought)
        # Aktioun ausféieren, Resultat kréien
        observation = execute_action(action)
        # Gedanken, Aktioun a Resultat an de Kontext bäifügen
        context.append((thought, action, observation))
    return final_answer

Beispill:
- Benotzer freet: "Wéi ass d'Wieder zu Peking haut?"
- Den Agent denkt: "Ech muss d'Wieder-API froen, ech brauch d'Stad an den Datum."
- Aktioun: Wieder-API opruffen (Parameter: Peking, haut)
- Resultat: "Sonn, 25°C"
- Denkt: "Informatioun kritt, kann äntweren."
- Ausgab: "Zu Peking ass et haut sonneg, 25°C."

2. Plan-and-Solve

Kärgedank: Als éischt e komplette Plang maachen (Plan), dann Schrëtt fir Schrëtt ausféieren (Solve). An der Planungsphase gëtt eng komplex Aufgab an Ënnerschrëtt opgedeelt, an der Ausféierungsphase ginn se der Rei no ofgeschloss, eventuell gëtt de Plang unhand vun Tëschenresultater ugepasst.

Flossdiagramm:

[Aufgab] → [Plang maachen: Ënnerschrëtt opdeelen] → [Schrëtt 1 ausféieren] → [Schrëtt 2 ausféieren] → ... → [Schrëtt N ausféieren] → [Final Äntwert]

Beispillcode:

def plan_and_solve(task):
    # Planungsphase
    plan = llm.generate_plan(task)  # z. B.: ["Informatioun sichen", "Informatioun ordnen", "Bericht schreiwen"]
    context = {}
    for step in plan:
        # All Schrëtt ausféieren
        result = execute_step(step, context)
        context[step] = result
    # Resultater zesummefaassen
    final = llm.synthesize(context)
    return final

Beispill:
- Aufgab: "E Blog iwwer AI Agent schreiwen"
- Plang:
1. Definitioun an aktuell Entwécklunge vun AI Agent sichen
2. Schlësselpunkte liesen an ordnen
3. Blog-Outline schreiwen
4. Inhalt ausfëllen
5. Korrektur liesen a verëffentlechen
- Ausféierung: All Schrëtt der Rei no maachen, um Enn de Blog erausginn.

3. Reflection

Kärgedank: Den Agent reflektéiert (Reflection) während oder no der Ausféierung iwwer säin eegent Verhalen, evaluéiert d'Resultater a verbessert spéider Aktiounen. Et enthält Selbstkritik, Feelerkorrektur oder Strategieoptiméierung.

Flossdiagramm:

[Aktioun] → [Resultat observéieren] → [Reflexioun: Erfolleg evaluéieren] → [Wann net erfollegräich: Strategie upassen] → [Nei Aktioun] → ... → [Erfolleg]

Beispillcode:

def reflection_agent(task):
    max_attempts = 3
    for attempt in range(max_attempts):
        action = llm.generate_action(task)
        result = execute(action)
        # Reflexioun
        reflection = llm.reflect(task, action, result)
        if reflection['success']:
            return result
        else:
            # Op Basis vun der Reflexioun d'Aufgabebeschreiwung oder d'Strategie upassen
            task = reflection['improved_task']
    return None

Beispill:
- Aufgab: "Berechent 1234 * 5678"
- Aktioun: Direkt rechnen, Resultat 7006652
- Reflexioun: Rechenprozess iwwerpréiwen, Iwwerdroungsfeeler entdecken
- Upassung: Nei rechnen, korrekt Resultat 7006652 (eigentlech richteg)
- Wann nach ëmmer falsch, weider reflektéieren bis richteg.

Zesummefaassung a Verglach

Methodologie Charakteristiken Asazberäicher
ReAct Reasoning an Acting ofwiesselnd, dynamesch Upassung Aufgaben déi Echtzäit-Informatiounsinteraktioun brauchen (wéi Fro-Antwert, Sich)
Plan-and-Solve Éischt plangen, dann ausféieren, strukturéiert Opdeelung Komplex multi-Schrëtt Aufgaben (wéi Schreiwen, Datenanalyse)
Reflection Selbstreflexioun a Korrektur, iterativ Optiméierung Aufgaben déi héich Genauegkeet brauchen (wéi Mathematik, Code-Generatioun)

An der Praxis ginn dës dacks kombinéiert, z. B. ReAct mat Reflexiounsmechanismus, oder Plan-and-Solve wou all Schrëtt no der Ausféierung reflektéiert gëtt.

评论

暂无已展示的评论。

发表评论(匿名)