одиниця 10 / 11

Робочі процеси агента та багатоетапні завдання

Прибуток:

  • Застосування зростаючої шкали складності від найпростішого рішення до агента
  • Розрізнення між шаблонами ланцюжка, маршрутизації та паралельного робочого процесу
  • Розбиття багатоетапного завдання на цикл планування-виконання-перевірки

Ми встановили простий цикл одного транспортного засобу в попередньому блоці. Справжня робота часто вимагає кількох кроків, кількох інструментів, а іноді й розгалужених рішень: «Знайти замовлення, які прострочені цього місяця, написати електронний лист із вибаченнями клієнтам, підвести підсумки для менеджера». У цьому розділі ми розглядаємо шаблони для організації багатоетапних завдань, коли вам потрібен справжній агент, і цикл планування-виконання-перевірки. Головний принцип: складності стільки, скільки потрібно.

Масштабування від найпростішого рішення до агента

Не кожна задача заслуговує найскладнішого вирішення. Ступінь за сходинкою піднімайтеся по шкалі складності і зупиняйтеся на найпростішому адекватному рішенні:

  1. Один виклик: якщо завдання вирішується одним викликом моделі (узагальнити, класифікувати), зупиніться тут.
  2. Один виклик за допомогою RAG: якщо потрібна інформація, додайте пошук і знову один виклик.
  3. Фіксований робочий процес: якщо кроки відомі заздалегідь, послідовність їх виконання вручну (потік коду). Модель виконує допоміжне завдання на кожному кроці, але ви визначаєте порядок.
  4. Керований моделлю агент: якщо кроки не можуть бути відомі заздалегідь, модель вирішує, якого агента викликати та коли. Найпотужніший, але найдорожчий і ризикований варіант.

Різниця між робочим процесом і агентом є критичною: у робочому процесі ви пишете потік керування (передбачуваний, тестований, дешевий). Ви надаєте контроль над порядком денним моделі (гнучкій, але непередбачуваній). Більшість корпоративної роботи насправді є робочим процесом; справжніх агентів порівняно небагато.

Порада: «Чи можу я заздалегідь написати кроки для цього завдання?» запитати. Якщо ви можете це написати, створіть робочий процес — дешевший, безпечніший, більш тестований. Однак, якщо кроки відрізняються залежно від вхідних даних і їх неможливо передбачити, потрібен агент.

Три основні шаблони робочого процесу

Ланцюжок підказок: результат одного кроку є входом наступного. «Створити чернетку → редагувати → форматувати». Кожен крок простий і цілеспрямований; легко налагодити.

Маршрутизація: Ви спочатку класифікуєте вхідний запит і надсилаєте його відповідному експерту. «Це питання технічне, виставлення рахунків чи відшкодування?» → переспрямувати на правильний підпотік. Кожен шлях оптимізовано за допомогою власних підказок та інструментів.

Розпаралелювання: одночасне виконання незалежних завдань і об’єднання результатів. «Узагальніть 5 документів окремо, потім об’єднайте». Це не тільки швидко, але й кожна деталь привертає повну увагу.

візерунок

коли

приклад

прикутий

Кроки послідовні і залежні

Чернетка → редагувати → форматувати

перенаправлення

Різна обробка залежно від типу введення

Класифікація запитів на підтримку

паралельний

Самостійні підробки

Узагальніть кілька документів окремо

Агент (петля)

Кроки неможливо передбачити заздалегідь

Безстрокове дослідження/ремонт

# Шаблон маршрутизації (концептуальний)type = pattern.classify(request) # "return" | "техніка" | "invoice"if tour == "return": answer = return_flow(request)elif tur == "technical": answer = technical_flow(request)else: answer = invoice_flow(request)

Цикл планування-виконання-перевірки

Потужний шаблон для реальних агентів: мати план моделі, потім виконувати, потім перевіряти. Модель розбиває складне завдання на підетапи, виконує кожен крок за допомогою інструментів і, нарешті, запитує «чи досяг я мети?» він перевіряє. Етап перевірки виявляє помилки за допомогою окремого свіжого перегляду («чи цей результат відповідає завданню?»).

# Plan-execute-verify (conceptual)plan = model.uret("Розбити це завдання на кроки: " + task)для кроку в плані: result = agent_loop(step) # виконати з toolscheck = model.uret("Чи відповідає цей результат завданню? Скажіть мені, якщо чогось не вистачає: " + task + results)if check.missing: # раунд виправлення ...

Дві хороші практики для довгих завдань: накласти умову зупинки (максимальна кількість кроків — запобігає нескінченному циклу) і відстеження прогресу (нехай агент записує, що він робить, щоб не відволікатися). Агент, який не має ліміту кроків, може обертатися вічно, якщо він застрягне, і вартість вибухне.

Слабкий/Сильний дизайн

Слабкий (покласти все на одного гігантського агента):

Скажіть «виконайте цю складну справу» та випустіть її з необмеженою кількістю інструментів.# Результат: непередбачувана поведінка, ризик нескінченних циклів, висока вартість,# неможливо налагодити.

Потужний (потік спочатку, агент лише там, де це необхідно, обмежено):

Спочатку розділіть роботу на фіксовані кроки (маршрутизація + ланцюжок). Використовуйте агент лише в підзавданні, де кроки невідомі; Додайте ліміт кроків, відстеження прогресу та раунд перевірки.

Три міні-чохли

Випадок 1 — робочий процес замість агента. Одна команда створила завдання «запит на підтримку процесу» з вільним агентом; Іноді агент повертав 15 кроків і йшов не тим шляхом. По суті кроки були виправлені (класифікувати → отримати відповідну інформацію → написати чернетку → надіслати на затвердження). Коли ми перейшли на робочий процес маршрутизації + ланцюжка, узгодженість зросла з 58% до 96%, а вартість зменшилася вдвічі.

Випадок 2 — Паралельний посилення. Юридична команда один за одним підсумовувала 20 договорів; Загалом це зайняло 4 хвилини. Коли ми перейшли на паралельний шаблон (усі одночасно, потім об’єднали), час скоротився до 25 секунд, а якість підвищилася, оскільки кожне резюме приділяло повну увагу.

Випадок 3 — умови зупинки не було. Слідчий продовжував нескінченно викликати ті самі два інструменти, шукаючи інформацію, яку він не міг знайти; за ніч накопичив значні витрати. Коли було додано максимальне обмеження у 8 кроків і правило «Якщо ви не можете знайти це за 3 спроби, скажіть, що я не знаю», вартість трималася під контролем і надходили чесні відповіді «Я не зміг знайти».

Поширені помилки

  • Делегування всього агенту: робочий процес дешевший, безпечніший і тестований, якщо кроки відомі.
  • Змішування робочого процесу з агентом: ви чи модель берете під контроль? Не проектуйте, не пояснюючи цього.
  • Не встановлено умову зупинки: агент входить у нескінченний цикл і накопичує витрати.
  • Немає відстеження прогресу: під час тривалої місії агент відволікається, виконуючи ту саму роботу знову.
  • Пропуск раунду перевірки: неправильні, але правдоподібні результати надаються без перевірки.
Увага: чим вільніший агент, тим більшим стає радіус вибуху. Гнучкість не безкоштовна; кожна додаткова свобода додає непередбачуваності та ризику. Виберіть найвужче адекватне рішення.

Підсумовуючи

  • У складності діє принцип «за потребою»: одноразовий виклик → RAG → робочий процес → агент, тільки якщо це дійсно необхідно.
  • У Workflow ви пишете потік керування (передбачуваний); Ви залишаєте порядок денний моделі (гнучко, але ризиковано).
  • Три основні моделі: ланцюжок (послідовно залежні), маршрутизація (розподіл за типом), паралельність (незалежні завдання).
  • Реальні агенти використовують цикл планування-виконання-перевірки, умову зупинки та відстеження прогресу.
  • Зі збільшенням гнучкості зростає непередбачуваність і вартість; Виберіть найвужче адекватне рішення.

Аплікаційне завдання

Виберіть багатоетапне завдання з вашого власного бізнесу (наприклад, «підготовка та розповсюдження щомісячного звіту»). (1) Чи можете ви заздалегідь написати кроки цього завдання? Якщо ви можете це написати, розробіть це як робочий процес (який шаблон: ланцюжок/маршрутизація/паралельний?); Якщо не можете написати, поясніть, навіщо потрібен агент. (2) Намалюйте вибраний дизайн за допомогою діаграми прямокутної стрілки. (3) Якщо агентство: напишіть, як ви налаштуєте умову зупинки, відстеження прогресу та раунд перевірки. (4) Перелічіть 3 ризики виконання одного завдання за допомогою «одного агента розробника».

контрольний список

  • [ ] Я можу вибрати правильний рівень за шкалою «складність за потреби».
  • [ ] Я можу розрізнити різницю в контролі між робочим процесом і агентом.
  • [ ] Я можу зіставляти ланцюжки, маршрути та паралельні шаблони для відповідних завдань.
  • [ ] Я можу налаштувати цикл планування-виконання-перевірки, умови зупинки та відстеження прогресу в агентах.
  • [ ] Я пам’ятаю, що надмірна гнучкість призводить до непередбачуваності та витрат.