← 返回列表

Pyetje interviste AI Seria 6: Tre metodologjitë kryesore të AI Agent: ReAct, Plan-and-Solve dhe Reflection

Tre metodologjitë kryesore të AI Agent: ReAct, Plan-and-Solve dhe Reflection

AI Agent është një agjent inteligjent që mund të perceptojë në mënyrë autonome mjedisin, të marrë vendime dhe të ekzekutojë veprime. Metodologjitë e tij kryesore janë tre: ReAct, Plan-and-Solve dhe Reflection. Më poshtë do t'i shqyrtojmë secilën, të shoqëruara me diagrame rrjedhëse dhe shembuj kodi.

1. ReAct (Reasoning + Acting)

Ideja kryesore: Ndërthurja e arsyetimit (Reasoning) dhe veprimit (Acting) në mënyrë të ndërthurur. Agjenti në çdo hap fillimisht mendon për gjendjen aktuale dhe planin e ardhshëm (arsyetim), më pas ekzekuton një veprim (si thirrja e një mjeti, kërkimi i informacionit), dhe më pas vazhdon arsyetimin bazuar në rezultat.

Diagrami i rrjedhës:

[Gjendja fillestare] → [Arsyetim: mendo hapin tjetër] → [Veprim: ekzekuto veprimin] → [Vëzhgo rezultatin] → [Arsyetim: përditëso planin] → ... → [Përgjigja përfundimtare]

Shembull kodi (pseudokod):

def react_agent(question):
    context = []
    while not solved:
        # Arsyetim: gjenero hapin e mendimit
        thought = llm.generate_thought(question, context)
        # Veprim: zgjidh veprimin bazuar në mendim
        action = llm.choose_action(thought)
        # Ekzekuto veprimin, merr vëzhgimin
        observation = execute_action(action)
        # Shto mendimin, veprimin dhe vëzhgimin në kontekst
        context.append((thought, action, observation))
    return final_answer

Shembull:
- Përdoruesi pyet: "Si është moti sot në Pekin?"
- Agjenti arsyeton: "Më duhet të kërkoj API-në e motit, kam nevojë për emrin e qytetit dhe datën."
- Veprim: Thirr API-në e motit (parametra: Pekin, sot)
- Vëzhgim: Kthen "Diell, 25°C"
- Arsyetim: "Kam marrë informacionin, mund të përgjigjem."
- Dalje: "Sot në Pekin është diell, 25°C."

2. Plan-and-Solve

Ideja kryesore: Fillimisht hartohet një plan i plotë (Plan), më pas ekzekutohet hap pas hapi (Solve). Gjatë fazës së planifikimit, detyra komplekse ndahet në nënhapa, ndërsa gjatë fazës së ekzekutimit, hapat kryhen në rend, me mundësi përshtatjeje të planit bazuar në rezultatet e ndërmjetme.

Diagrami i rrjedhës:

[Detyra] → [Hartimi i planit: ndarja në nënhapa] → [Ekzekuto hapin 1] → [Ekzekuto hapin 2] → ... → [Ekzekuto hapin N] → [Përgjigja përfundimtare]

Shembull kodi:

def plan_and_solve(task):
    # Faza e planifikimit
    plan = llm.generate_plan(task)  # p.sh.: ["Kërko materiale", "Organizo informacionin", "Shkruaj raportin"]
    context = {}
    for step in plan:
        # Ekzekuto çdo hap
        result = execute_step(step, context)
        context[step] = result
    # Sintetizo rezultatet
    final = llm.synthesize(context)
    return final

Shembull:
- Detyra: "Shkruaj një blog për AI Agent"
- Plani:
1. Kërko përkufizimin dhe përparimet më të fundit të AI Agent
2. Lexo dhe organizo pikat kryesore
3. Harto skicën e blogut
4. Plotëso përmbajtjen
5. Korrigjo dhe publiko
- Ekzekutimi: Kryej secilin hap me radhë, në fund dalja është blogu.

3. Reflection

Ideja kryesore: Agjenti gjatë ose pas ekzekutimit reflekton mbi veprimet e veta (Reflection), vlerëson rezultatet dhe përmirëson veprimet e ardhshme. Zakonisht përfshin vetëkritikë, korrigjim gabimesh ose optimizim strategjie.

Diagrami i rrjedhës:

[Veprim] → [Vëzhgo rezultatin] → [Reflektim: vlerëso nëse ishte i suksesshëm] → [Nëse dështoi: rregullo strategjinë] → [Vepro përsëri] → ... → [Sukses]

Shembull kodi:

def reflection_agent(task):
    max_attempts = 3
    for attempt in range(max_attempts):
        action = llm.generate_action(task)
        result = execute(action)
        # Reflektim
        reflection = llm.reflect(task, action, result)
        if reflection['success']:
            return result
        else:
            # Rregullo përshkrimin e detyrës ose strategjinë bazuar në reflektim
            task = reflection['improved_task']
    return None

Shembull:
- Detyra: "Llogarit 1234 * 5678"
- Veprim: Llogarit direkt, merr rezultatin 7006652
- Reflektim: Kontrollon procesin e llogaritjes, gjen gabim në bartje
- Rregullim: Rillogarit, merr rezultatin e saktë 7006652 (në fakt i saktë)
- Nëse ende gabim, vazhdon reflektimin deri në saktësi.

Përmbledhje krahasuese

Metodologjia Karakteristikat Skenarët e përshtatshëm
ReAct Arsyetim dhe veprim i ndërthurur, përshtatje dinamike Detyra që kërkojnë ndërveprim në kohë reale me informacion (si pyetje-përgjigje, kërkime)
Plan-and-Solve Fillimisht plan, pastaj ekzekutim, ndarje strukturore Detyra komplekse me shumë hapa (si shkrim, analizë të dhënash)
Reflection Vetëreflektim dhe korrigjim, përmirësim përsëritës Detyra që kërkojnë saktësi të lartë (si llogaritje matematikore, gjenerim kodi)

Në aplikime praktike, shpesh kombinohen të tria, p.sh. ReAct me mekanizëm reflektimi, ose Plan-and-Solve me reflektim pas çdo hapi.

评论

暂无已展示的评论。

发表评论(匿名)