← 返回列表

AI suhbat savollari 6: AI Agentning uchta asosiy metodologiyasi: ReAct, Plan-and-Solve va Reflection

AI Agentning uchta asosiy metodologiyasi: ReAct, Plan-and-Solve va Reflection

AI Agent - bu atrof-muhitni mustaqil ravishda idrok etadigan, qaror qabul qiladigan va harakatlarni bajaradigan aqlli agentdir. Uning asosiy metodologiyalari uchta: ReAct, Plan-and-Solve va Reflection. Quyida ularni tavsiflaymiz, shuningdek, oqim diagrammalari va kod misollari bilan to'ldiramiz.

1. ReAct (Reasoning + Acting)

Asosiy g'oya: Fikrlash (Reasoning) va harakat (Acting) ni navbatma-navbat bajarish. Agent har bir qadamda avval joriy holat va keyingi rejani o'ylaydi (fikrlash), so'ngra bir harakatni bajaradi (masalan, asbobni chaqirish, ma'lumot qidirish), natijaga qarab fikrlashni davom ettiradi.

Oqim diagrammasi:

[Boshlang'ich holat] → [Fikrlash: keyingi qadamni o'ylash] → [Harakat: amalni bajarish] → [Natijani kuzatish] → [Fikrlash: rejani yangilash] → ... → [Yakuniy javob]

Misol kod (psevdokod):

def react_agent(question):
    context = []
    while not solved:
        # Fikrlash: fikrlash qadamini yaratish
        thought = llm.generate_thought(question, context)
        # Harakat: fikrga asoslanib harakatni tanlash
        action = llm.choose_action(thought)
        # Harakatni bajarish, kuzatishni olish
        observation = execute_action(action)
        # Fikr, harakat va kuzatishni kontekstga qo'shish
        context.append((thought, action, observation))
    return final_answer

Misol:
- Foydalanuvchi so'raydi: "Bugun Pekinda ob-havo qanday?"
- Agent fikrlaydi: "Ob-havo API'sini so'rashim kerak, shahar nomi va sana kerak."
- Harakat: ob-havo API'sini chaqirish (parametrlar: Pekin, bugun)
- Kuzatish: "Quyoshli, 25°C" qaytaradi
- Fikrlash: "Ma'lumot olindi, javob berish mumkin."
- Chiqish: "Pekinda bugun quyoshli, 25°C."

2. Plan-and-Solve

Asosiy g'oya: Avval to'liq reja tuzish (Plan), so'ngra bosqichma-bosqich bajarish (Solve). Rejalashtirish bosqichida murakkab vazifa kichik qadamlarga bo'linadi, bajarish bosqichida tartib bilan amalga oshiriladi, oraliq natijalarga qarab reja o'zgartirilishi mumkin.

Oqim diagrammasi:

[Vazifa] → [Reja tuzish: qadamlarni ajratish] → [1-qadamni bajarish] → [2-qadamni bajarish] → ... → [N-qadamni bajarish] → [Yakuniy javob]

Misol kod:

def plan_and_solve(task):
    # Rejalashtirish bosqichi
    plan = llm.generate_plan(task)  # Masalan: ["Ma'lumot qidirish", "Ma'lumotni tartibga solish", "Hisobot yozish"]
    context = {}
    for step in plan:
        # Har bir qadamni bajarish
        result = execute_step(step, context)
        context[step] = result
    # Natijalarni birlashtirish
    final = llm.synthesize(context)
    return final

Misol:
- Vazifa: "AI Agent haqida blog yozish"
- Reja:
1. AI Agent ta'rifi va so'nggi yangiliklarni qidirish
2. O'qish va asosiy fikrlarni tartibga solish
3. Blog rejasini yozish
4. Tarkibni to'ldirish
5. Tahrirlash va nashr qilish
- Bajarish: har bir qadamni ketma-ket bajarish, oxirida blog chiqarish.

3. Reflection

Asosiy g'oya: Agent bajarish jarayonida yoki undan keyin o'z harakatlarini tahlil qiladi (Reflection), natijalarni baholaydi va keyingi harakatlarni yaxshilaydi. O'z-o'zini tanqid qilish, xatolarni tuzatish yoki strategiyani optimallashtirishni o'z ichiga oladi.

Oqim diagrammasi:

[Harakat] → [Natijani kuzatish] → [Tahlil: muvaffaqiyatni baholash] → [Agar muvaffaqiyatsiz bo'lsa: strategiyani o'zgartirish] → [Yana harakat] → ... → [Muvaffaqiyat]

Misol kod:

def reflection_agent(task):
    max_attempts = 3
    for attempt in range(max_attempts):
        action = llm.generate_action(task)
        result = execute(action)
        # Tahlil
        reflection = llm.reflect(task, action, result)
        if reflection['success']:
            return result
        else:
            # Tahlilga asoslanib vazifa tavsifini yoki strategiyani o'zgartirish
            task = reflection['improved_task']
    return None

Misol:
- Vazifa: "1234 * 5678 ni hisoblash"
- Harakat: to'g'ridan-to'g'ri hisoblash, natija 7006652
- Tahlil: hisoblash jarayonini tekshirish, xato topiladi (o'tkazish xatosi)
- O'zgartirish: qayta hisoblash, to'g'ri natija 7006652 (aslida to'g'ri)
- Agar hali xato bo'lsa, to'g'ri bo'lguncha tahlilni davom ettirish.

Xulosa taqqoslash

Metodologiya Xususiyatlari Qo'llanish sohasi
ReAct Fikrlash va harakat navbatma-navbat, dinamik sozlash Real vaqtda ma'lumot almashishni talab qiladigan vazifalar (masalan, savol-javob, qidiruv)
Plan-and-Solve Avval reja, keyin bajarish, tuzilgan bo'linish Murakkab ko'p bosqichli vazifalar (masalan, yozish, ma'lumot tahlili)
Reflection O'z-o'zini tahlil qilish va tuzatish, iterativ optimallashtirish Yuqori aniqlik talab qiladigan vazifalar (masalan, matematik hisoblar, kod yaratish)

Amalda, bu uch metodologiya ko'pincha birlashtiriladi, masalan, ReAct ga tahlil mexanizmini qo'shish yoki Plan-and-Solve da har bir qadamdan keyin tahlil qilish.

评论

暂无已展示的评论。

发表评论(匿名)