← 返回列表

AI Series Interview Question 6: I-explore ang Tulo ka Pangunang mga Pamaagi sa AI Agent: ReAct, Plan-and-Solve, ug Reflection

Tulo ka Pangunang mga Pamaagi sa AI Agent: ReAct, Plan-and-Solve, ug Reflection

Ang AI Agent usa ka intelihenteng ahente nga makahimo sa pag-ila sa palibot, paghimog desisyon, ug pagpatuman sa mga aksyon. Adunay tulo ka pangunang mga pamaagi: ReAct, Plan-and-Solve, ug Reflection. Sa ubos, ipaila kini uban ang mga flowchart ug mga pananglitan sa code.

1. ReAct (Reasoning + Acting)

Pangunang Ideya: Ang pagpangatarongan (Reasoning) ug paglihok (Acting) gihimo nga magkadugtong. Sa matag lakang, ang Agent maghunahuna una sa kahimtang karon ug sa sunod nga plano (pangatarongan), dayon magpatuman og aksyon (sama sa pagtawag sa himan, pagpangita og impormasyon), ug dayon magpadayon sa pagpangatarongan base sa resulta.

Flowchart:

[Inisyal nga estado] → [Pangatarongan: hunahunaa ang sunod nga lakang] → [Aksyon: ipatuman ang aksyon] → [Obserbasyon sa resulta] → [Pangatarongan: i-update ang plano] → ... → [Katapusang tubag]

Pananglitan nga code (pseudo-code):

def react_agent(question):
    context = []
    while not solved:
        # Pangatarongan: paghimo og lakang sa panghunahuna
        thought = llm.generate_thought(question, context)
        # Aksyon: pagpili og aksyon base sa panghunahuna
        action = llm.choose_action(thought)
        # Ipatuman ang aksyon, makuha ang obserbasyon
        observation = execute_action(action)
        # Idugang ang panghunahuna, aksyon, ug obserbasyon sa konteksto
        context.append((thought, action, observation))
    return final_answer

Pananglitan:
- Pangutana sa tiggamit: "Unsa ang panahon sa Beijing karon?"
- Agent nagpangatarongan: "Kinahanglan nako pangitaon ang weather API, kinahanglan ang ngalan sa siyudad ug petsa."
- Aksyon: Tawag sa weather API (parametro: Beijing, karon)
- Obserbasyon: Mibalik og "Sunny, 25°C"
- Pangatarongan: "Nakuha na ang impormasyon, makatubag na."
- Output: "Ang Beijing karon sunny, 25°C."

2. Plan-and-Solve

Pangunang Ideya: Una, paghimo og kompleto nga plano (Plan), dayon ipatuman kini sa hinay-hinay (Solve). Sa yugto sa pagplano, ang komplikadong buluhaton gibahin ngadto sa mga sub-lakang; sa yugto sa pagpatuman, ang mga lakang gisunod-sunod, ug ang plano mahimong i-adjust base sa tunga-tunga nga mga resulta.

Flowchart:

[Buluhaton] → [Paghimo og plano: bahina ang mga sub-lakang] → [Ipatuman ang lakang 1] → [Ipatuman ang lakang 2] → ... → [Ipatuman ang lakang N] → [Katapusang tubag]

Pananglitan nga code:

def plan_and_solve(task):
    # Yugto sa pagplano
    plan = llm.generate_plan(task)  # Pananglitan: ["Pangita og materyales", "Pag-organisar og impormasyon", "Pagsulat og report"]
    context = {}
    for step in plan:
        # Ipatuman ang matag lakang
        result = execute_step(step, context)
        context[step] = result
    # Paghiusa sa mga resulta
    final = llm.synthesize(context)
    return final

Pananglitan:
- Buluhaton: "Pagsulat og blog bahin sa AI Agent"
- Plano:
1. Pangita og kahulugan sa AI Agent ug bag-ong mga kalamboan
2. Basaha ug i-organisar ang mga importanteng punto
3. Pagsulat og outline sa blog
4. Pun-a ang sulod
5. I-proofread ug i-publish
- Pagpatuman: Sunda ang matag lakang hangtod makuha ang blog.

3. Reflection

Pangunang Ideya: Ang Agent, sa panahon o human sa pagpatuman, maghunahuna sa iyang kaugalingong mga aksyon (Reflection), mag-assess sa mga resulta, ug magpauswag sa sunod nga mga aksyon. Kasagaran naglakip kini sa pagsaway sa kaugalingon, pagtul-id sa sayop, o pag-optimize sa estratehiya.

Flowchart:

[Aksyon] → [Obserbasyon sa resulta] → [Pamalandong: susiha kon malampuson ba] → [Kon mapakyas: i-adjust ang estratehiya] → [Pag-usab og aksyon] → ... → [Malampuson]

Pananglitan nga code:

def reflection_agent(task):
    max_attempts = 3
    for attempt in range(max_attempts):
        action = llm.generate_action(task)
        result = execute(action)
        # Pamalandong
        reflection = llm.reflect(task, action, result)
        if reflection['success']:
            return result
        else:
            # I-adjust ang paghulagway sa buluhaton o estratehiya base sa pamalandong
            task = reflection['improved_task']
    return None

Pananglitan:
- Buluhaton: "Kuwentaha ang 1234 * 5678"
- Aksyon: Direkta nga kalkulasyon, makuha ang resulta 7006652
- Pamalandong: Susiha ang proseso sa kalkulasyon, nakit-an ang sayop sa pagdala
- Pag-adjust: Pag-usab og kalkulasyon, makuha ang hustong resulta 7006652 (sa tinuod husto)
- Kung sayop pa, magpadayon sa pamalandong hangtod husto.

Summary Comparison

Pamaagi Kinaiya Angay nga mga Sitwasyon
ReAct Ang pangatarongan ug aksyon nagkadugtong, dinamikong pag-adjust Mga buluhaton nga nanginahanglan og real-time nga interaksyon sa impormasyon (sama sa Q&A, pagpangita)
Plan-and-Solve Una magplano, dayon magpatuman, structured nga pagbahin Komplikadong daghang-lakang nga mga buluhaton (sama sa pagsulat, pag-analisa sa datos)
Reflection Pagpamalandong sa kaugalingon ug pagtul-id, iterative optimization Mga buluhaton nga nanginahanglan og taas nga katukma (sama sa matematika, paghimo og code)

Sa praktis, kini nga mga pamaagi sagad gihiusa, pananglitan ang ReAct nga adunay mekanismo sa reflection, o ang Plan-and-Solve nga adunay reflection human sa matag lakang.

评论

暂无已展示的评论。

发表评论(匿名)