← 返回列表

AI serieko elkarrizketa-galdera 6: AI Agent-en hiru metodologia nagusiak: ReAct, Plan-and-Solve eta Reflection

AI Agent-en hiru metodologia nagusiak: ReAct, Plan-and-Solve eta Reflection

AI Agent ingurunea modu autonomoan hautematen, erabakiak hartzen eta ekintzak exekutatzen dituen adimen artifizialeko agentea da. Bere hiru metodologia nagusiak ReAct, Plan-and-Solve eta Reflection dira. Jarraian, bakoitza azalduko da, fluxu-diagrama eta kode adibideekin.

1. ReAct (Reasoning + Acting)

Ideia nagusia: Arrazoitzea (Reasoning) eta ekintza (Acting) txandakatzea. Agenteak pauso bakoitzean uneko egoera eta hurrengo plana pentsatzen du (arrazoitzea), gero ekintza bat exekutatzen du (adibidez, tresna bat deitu, informazioa bilatu), eta emaitzaren arabera arrazoitzen jarraitzen du.

Fluxu-diagrama:

[Hasierako egoera] → [Arrazoitzea: hurrengo pausoa pentsatu] → [Ekintza: ekintza exekutatu] → [Emaitza behatu] → [Arrazoitzea: plana eguneratu] → ... → [Azken erantzuna]

Adibide kodea (pseudokodea):

def react_agent(question):
    context = []
    while not solved:
        # Arrazoitzea: pentsamendu-pausoa sortu
        thought = llm.generate_thought(question, context)
        # Ekintza: pentsamenduaren arabera ekintza aukeratu
        action = llm.choose_action(thought)
        # Ekintza exekutatu, behaketa lortu
        observation = execute_action(action)
        # Pentsamendua, ekintza eta behaketa testuinguruan gehitu
        context.append((thought, action, observation))
    return final_answer

Adibidea:
- Erabiltzaileak galdetzen du: "Gaur eguraldia nola dago Bilbon?"
- Agenteak arrazoitzen du: "Eguraldiaren APIa kontsultatu behar dut, hiriaren izena eta data behar ditut."
- Ekintza: eguraldiaren APIa deitu (parametroak: Bilbo, gaur)
- Behaketa: "Eguzkitsua, 25°C" itzultzen du
- Arrazoitzea: "Informazioa lortu dut, erantzun dezaket."
- Irteera: "Bilbon gaur eguzkitsua, 25°C."

2. Plan-and-Solve

Ideia nagusia: Lehenengo plan oso bat egin (Plan), gero pausoz pauso exekutatu (Solve). Planaren fasean, zeregin konplexua azpi-pausoetan deskonposatzen da; exekuzio fasean, ordenan burutzen dira, eta tarteko emaitzen arabera plana doi daiteke.

Fluxu-diagrama:

[Zeregina] → [Plana egin: azpi-pausoak deskonposatu] → [1. pausoa exekutatu] → [2. pausoa exekutatu] → ... → [N. pausoa exekutatu] → [Azken erantzuna]

Adibide kodea:

def plan_and_solve(task):
    # Planaren fasea
    plan = llm.generate_plan(task)  # Adibidez: ["Bilatu informazioa", "Antolatu datuak", "Idatzi txostena"]
    context = {}
    for step in plan:
        # Pauso bakoitza exekutatu
        result = execute_step(step, context)
        context[step] = result
    # Emaitzak batu
    final = llm.synthesize(context)
    return final

Adibidea:
- Zeregina: "AI Agent-ei buruzko blog bat idatzi"
- Plana:
1. AI Agent-en definizioa eta azken aurrerapenak bilatu
2. Irakurri eta puntu gakoak antolatu
3. Blogaren eskema idatzi
4. Edukia bete
5. Zuzendu eta argitaratu
- Exekuzioa: pauso bakoitza hurrenez hurren bete, azkenean bloga lortuz.

3. Reflection

Ideia nagusia: Agenteak bere ekintzen inguruan hausnartzen du (Reflection) exekuzioan edo exekuzioaren ondoren, emaitzak ebaluatu eta hurrengo ekintzak hobetzeko. Normalean autokritika, akatsen zuzenketa edo estrategia optimizazioa barne hartzen ditu.

Fluxu-diagrama:

[Ekintza] → [Emaitza behatu] → [Hausnarketa: arrakasta ebaluatu] → [Huts eginez gero: estrategia egokitu] → [Berriz ekintza] → ... → [Arrakasta]

Adibide kodea:

def reflection_agent(task):
    max_attempts = 3
    for attempt in range(max_attempts):
        action = llm.generate_action(task)
        result = execute(action)
        # Hausnarketa
        reflection = llm.reflect(task, action, result)
        if reflection['success']:
            return result
        else:
            # Hausnarketaren arabera zeregina edo estrategia egokitu
            task = reflection['improved_task']
    return None

Adibidea:
- Zeregina: "Kalkulatu 1234 * 5678"
- Ekintza: zuzenean kalkulatu, 7006652 emaitza lortu
- Hausnarketa: kalkulu-prozesua egiaztatu, garraiatze-akats bat aurkitu
- Egokitzapena: berriz kalkulatu, emaitza zuzena lortu 7006652 (benetan zuzena)
- Oraindik oker badago, hausnarketa jarraitu zuzena izan arte.

Laburpena eta konparazioa

Metodologia Ezaugarriak Aplikazio-eszenatokiak
ReAct Arrazoitzea eta ekintza txandakatzen dira, dinamikoki doitzen Denbora errealeko informazio-interakzioa behar duten zereginak (galdera-erantzuna, bilaketa)
Plan-and-Solve Lehen plana, gero exekuzioa, egituratutako deskonposizioa Zeregin konplexu eta pauso anitzekoak (idazketa, datu-analisia)
Reflection Autohausnarketa eta zuzenketa, iterazio bidezko optimizazioa Zehaztasun handia behar duten zereginak (kalkulu matematikoak, kode-sorkuntza)

Praktikan, hirurak konbinatu ohi dira, adibidez, ReAct-i hausnarketa mekanismoa gehitu, edo Plan-and-Solve-n pauso bakoitzaren ondoren hausnarketa egin.

评论

暂无已展示的评论。

发表评论(匿名)