← 返回列表

AI сұхбат сұрақтары 6: AI Agent үш негізгі әдіснамасы: ReAct, Plan-and-Solve және Reflection

AI Agent үш негізгі әдіснамасы: ReAct, Plan-and-Solve және Reflection

AI Agent – бұл қоршаған ортаны өздігінен қабылдап, шешім қабылдап, әрекеттерді орындай алатын интеллектуалды агент. Оның негізгі үш әдіснамасы бар: ReAct, Plan-and-Solve және Reflection. Төменде олардың әрқайсысы сипатталып, блок-схемалар мен код мысалдары келтірілген.

1. ReAct (Reasoning + Acting)

Негізгі идеясы: Ойлау (Reasoning) мен әрекетті (Acting) кезектестіру. Агент әр қадамда алдымен ағымдағы жағдайды және келесі жоспарды ойластырады (ойлау), содан кейін әрекетті орындайды (мысалы, құралды шақыру, ақпарат іздеу), нәтиже бойынша ойлауды жалғастырады.

Блок-схемасы:

[Бастапқы күй] → [Ойлау: келесі қадамды ойлау] → [Әрекет: орындау] → [Нәтижені бақылау] → [Ойлау: жоспарды жаңарту] → ... → [Соңғы жауап]

Мысал коды (псевдокод):

def react_agent(question):
    context = []
    while not solved:
        # Ойлау: ой қадамын генерациялау
        thought = llm.generate_thought(question, context)
        # Әрекет: ой бойынша әрекетті таңдау
        action = llm.choose_action(thought)
        # Әрекетті орындау, бақылау алу
        observation = execute_action(action)
        # Ойды, әрекетті және бақылауды контекстке қосу
        context.append((thought, action, observation))
    return final_answer

Мысал:
- Пайдаланушы сұрағы: "Бүгін Бейжіңде ауа райы қандай?"
- Агент ойлауы: "Маған ауа райы API-ін сұрау керек, қала аты мен күні керек."
- Әрекет: ауа райы API-ін шақыру (параметрлер: Бейжің, бүгін)
- Бақылау: "Ашық, 25°C" деген нәтиже қайтарылды
- Ойлау: "Ақпарат алынды, жауап беруге болады."
- Шығару: "Бейжіңде бүгін ашық, 25°C."

2. Plan-and-Solve

Негізгі идеясы: Алдымен толық жоспар құру (Plan), содан кейін оны кезең-кезеңімен орындау (Solve). Жоспарлау кезеңінде күрделі тапсырма кіші қадамдарға бөлінеді, орындау кезеңінде реттілікпен орындалады, аралық нәтижелер бойынша жоспарды түзету мүмкін.

Блок-схемасы:

[Тапсырма] → [Жоспар құру: қадамдарға бөлу] → [1-қадамды орындау] → [2-қадамды орындау] → ... → [N-қадамды орындау] → [Соңғы жауап]

Мысал коды:

def plan_and_solve(task):
    # Жоспарлау кезеңі
    plan = llm.generate_plan(task)  # Мысалы: ["Деректерді іздеу", "Ақпаратты жүйелеу", "Есеп жазу"]
    context = {}
    for step in plan:
        # Әр қадамды орындау
        result = execute_step(step, context)
        context[step] = result
    # Нәтижелерді біріктіру
    final = llm.synthesize(context)
    return final

Мысал:
- Тапсырма: "AI Agent туралы блог жазу"
- Жоспар:
1. AI Agent анықтамасы мен соңғы жетістіктерді іздеу
2. Негізгі тұстарын оқып, жүйелеу
3. Блог жоспарын жазу
4. Мазмұнды толтыру
5. Тексеру және жариялау
- Орындау: әр қадамды ретімен орындау, соңында блог шығару.

3. Reflection

Негізгі идеясы: Агент әрекет барысында немесе орындағаннан кейін өз әрекеттеріне рефлексия жасайды (Reflection), нәтижені бағалап, кейінгі әрекеттерді жақсартады. Әдетте өзін-өзі сынау, қателерді түзету немесе стратегияны оңтайландыруды қамтиды.

Блок-схемасы:

[Әрекет] → [Нәтижені бақылау] → [Рефлексия: сәттілікті бағалау] → [Егер сәтсіз болса: стратегияны түзету] → [Қайта әрекет] → ... → [Сәтті]

Мысал коды:

def reflection_agent(task):
    max_attempts = 3
    for attempt in range(max_attempts):
        action = llm.generate_action(task)
        result = execute(action)
        # Рефлексия
        reflection = llm.reflect(task, action, result)
        if reflection['success']:
            return result
        else:
            # Рефлексия бойынша тапсырма сипаттамасын немесе стратегияны түзету
            task = reflection['improved_task']
    return None

Мысал:
- Тапсырма: "1234 * 5678 есептеу"
- Әрекет: тікелей есептеу, нәтиже 7006652
- Рефлексия: есептеу процесін тексеру, разрядтық қате табу
- Түзету: қайта есептеу, дұрыс нәтиже 7006652 (іс жүзінде дұрыс)
- Егер қате болса, дұрыс болғанша рефлексияны жалғастыру.

Қорытынды салыстыру

Әдіснама Ерекшеліктері Қолдану аясы
ReAct Ойлау мен әрекет кезектесіп, динамикалық түзету Нақты уақыттағы ақпарат алмасуды қажет ететін тапсырмалар (сұрақ-жауап, іздеу)
Plan-and-Solve Алдымен жоспар, содан кейін орындау, құрылымдық бөлу Күрделі көп қадамды тапсырмалар (жазу, деректерді талдау)
Reflection Өзін-өзі рефлексиялау және түзету, итеративті оңтайландыру Жоғары дәлдікті қажет ететін тапсырмалар (математикалық есептеулер, код генерациясы)

Нақты қолдануда бұл үш әдіснама жиі біріктіріледі, мысалы, ReAct-ке рефлексия механизмін қосу немесе Plan-and-Solve-тың әр қадамынан кейін рефлексия жасау.

评论

暂无已展示的评论。

发表评论(匿名)