← 返回列表

AI viðtalsröð 6: Segðu frá þremur kjarnaaðferðum AI Agent: ReAct, Plan-and-Solve og Reflection

Þrjár kjarnaaðferðir AI Agent: ReAct, Plan-and-Solve og Reflection

AI Agent er sjálfstæður vettvangur sem getur skynjað umhverfið, tekið ákvarðanir og framkvæmt aðgerðir. Helstu kjarnaaðferðirnar eru þrjár: ReAct, Plan-and-Solve og Reflection. Hér að neðan er kynning á hverri þeirra, ásamt flæðiritum og kóðadæmum.

1. ReAct (Reasoning + Acting)

Kjarnahugmynd: Að flétta saman rökhugsun (Reasoning) og aðgerð (Acting) til skiptis. Agent hugsar fyrst um núverandi ástand og næsta skref (rökhugsun), framkvæmir síðan aðgerð (eins og að kalla á tól, leita að upplýsingum) og heldur áfram að rökhugsa út frá niðurstöðunni.

Flæðirit:

[Upphafsástand] → [Rökhugsun: hugsa næsta skref] → [Aðgerð: framkvæma] → [Fylgjast með niðurstöðu] → [Rökhugsun: uppfæra áætlun] → ... → [Lokasvar]

Dæmi um kóða (gervikóði):

def react_agent(question):
    context = []
    while not solved:
        # Rökhugsun: búa til hugsunarskref
        thought = llm.generate_thought(question, context)
        # Aðgerð: velja aðgerð út frá hugsun
        action = llm.choose_action(thought)
        # Framkvæma aðgerð, fá athugun
        observation = execute_action(action)
        # Bæta hugsun, aðgerð og athugun við samhengi
        context.append((thought, action, observation))
    return final_answer

Dæmi:
- Notandi spyr: „Hvernig er veðrið í Peking í dag?“
- Agent rökhugsar: „Ég þarf að fletta upp veður API, þarf borgarnafn og dagsetningu.“
- Aðgerð: kalla á veður API (breytur: Peking, í dag)
- Athugun: skilar „Heiðskýrt, 25°C“
- Rökhugsun: „Ég hef upplýsingarnar, get svarað.“
- Úttak: „Í Peking í dag er heiðskýrt, 25°C.“

2. Plan-and-Solve

Kjarnahugmynd: Fyrst að gera heildaráætlun (Plan), síðan framkvæma hana skref fyrir skref (Solve). Í áætlunarfasanum er flóknu verkefni skipt niður í undirskref, og í framkvæmdafasanum er þeim fylgt í röð, hugsanlega með aðlögun á áætlun miðað við milliniðurstöður.

Flæðirit:

[Verkefni] → [Gera áætlun: skipta í undirskref] → [Framkvæma skref 1] → [Framkvæma skref 2] → ... → [Framkvæma skref N] → [Lokasvar]

Dæmi um kóða:

def plan_and_solve(task):
    # Áætlunarfasi
    plan = llm.generate_plan(task)  # t.d.: ["Leita að gögnum", "Skipuleggja upplýsingar", "Skrifa skýrslu"]
    context = {}
    for step in plan:
        # Framkvæma hvert skref
        result = execute_step(step, context)
        context[step] = result
    # Sameina niðurstöður
    final = llm.synthesize(context)
    return final

Dæmi:
- Verkefni: „Skrifa blogg um AI Agent“
- Áætlun:
1. Leita að skilgreiningu og nýjustu framförum AI Agent
2. Lesa og skipuleggja lykilatriði
3. Skrifa blogguppkast
4. Fylla út efni
5. Yfirfara og birta
- Framkvæmd: framkvæma hvert skref í röð, að lokum skila bloggi.

3. Reflection

Kjarnahugmynd: Agent íhugar (Reflection) eigin hegðun meðan á framkvæmd stendur eða eftir hana, metur niðurstöður og bætir síðari aðgerðir. Felur oft í sér sjálfsgagnrýni, villuleiðréttingu eða stefnuoptimeringu.

Flæðirit:

[Aðgerð] → [Fylgjast með niðurstöðu] → [Íhugun: meta hvort tókst] → [Ef mistókst: aðlaga stefnu] → [Aðgerð aftur] → ... → [Tókst]

Dæmi um kóða:

def reflection_agent(task):
    max_attempts = 3
    for attempt in range(max_attempts):
        action = llm.generate_action(task)
        result = execute(action)
        # Íhugun
        reflection = llm.reflect(task, action, result)
        if reflection['success']:
            return result
        else:
            # Aðlaga verkefnislýsingu eða stefnu út frá íhugun
            task = reflection['improved_task']
    return None

Dæmi:
- Verkefni: „Reikna 1234 * 5678“
- Aðgerð: reikna beint, fá niðurstöðu 7006652
- Íhugun: athuga reikniferli, finna villu í flutningi
- Aðlögun: reikna aftur, fá rétta niðurstöðu 7006652 (raunverulega rétt)
- Ef enn villa, halda áfram að íhuga þar til rétt.

Samantekt og samanburður

Aðferð Einkenni Hentar fyrir
ReAct Rökhugsun og aðgerð til skiptis, sveigjanleg aðlögun Verkefni sem þurfa rauntímaupplýsingar (eins og spurningar og leit)
Plan-and-Solve Fyrst áætlun, síðan framkvæmd, skipulögð niðurbrot Flókin mörg skref (eins og ritun, gagnagreining)
Reflection Sjálfsíhugun og leiðrétting, endurtekin bestun Verkefni sem krefjast mikillar nákvæmni (eins og stærðfræði, kóðun)

Í raunverulegum forritum er oft blandað saman, til dæmis að bæta við íhugun í ReAct, eða íhuga eftir hvert skref í Plan-and-Solve.

评论

暂无已展示的评论。

发表评论(匿名)