TL;DR
ERL — техника, которая превращает каждую завершённую задачу в урок для следующей. После задачи модель анализирует что сработало или провалилось → формирует эвристику (короткое правило с условием и действием) → сохраняет. Перед новой задачей — достаёт релевантные правила и вставляет в промпт.
Главный инсайт: показывать модели прошлый разговор целиком ("делай как тогда") работает хуже, чем давать дистиллированный урок ("если встречаешь X — делай Y"). Сырой диалог перегружает контекст и теряет суть. Сжатое правило — компактно и переносимо на новые ситуации. Разница в реальных тестах — до 23% в пользу эвристик.
Метод двухфазный. Фаза 1 — после каждой задачи: рефлексия → эвристика в личную базу. Фаза 2 — перед новой задачей: отбор релевантных правил → вставка в промпт. Можно делать вручную в обычном чате.
Схема метода
Два режима — после задачи и перед задачей. Каждый — отдельный запрос.
ФАЗА 1 — после завершения задачи (отдельный запрос):
Вход: описание задачи + что делали + результат (успех/провал)
Шаг 1: Анализ → что именно привело к результату
Шаг 2: Формулировка → правило вида "Когда [условие] → делай [действие]"
Выход: структурированная эвристика → сохранить в личный файл
ФАЗА 2 — перед новой задачей (отдельный запрос):
Вход: новая задача + список накопленных эвристик
Шаг 1: Оценка релевантности каждой эвристики к задаче
Шаг 2: Отбор топ-5–10 подходящих
Выход: эвристики → вставить в системный промпт новой задачи
Пример применения
Задача: Настя ведёт Telegram-канал про личные финансы. Каждую неделю просит ChatGPT помогать с постами. Часть постов заходит хорошо, часть — падает по охватам. Она хочет, чтобы Claude учился на этом опыте.
Промпт (Фаза 1 — после каждого поста):
Я только что завершила задачу. Помоги извлечь урок.
ЗАДАЧА: написала пост про составление подушки безопасности для аудитории 25–35 лет
РЕЗУЛЬТАТ: провал — охваты в 2 раза ниже среднего, мало репостов
ЧТО ДЕЛАЛИ:
- Начали с определения подушки безопасности
- Дали конкретные цифры (3–6 месячных расходов)
- Предложили открыть накопительный счёт в Сбере
- Закончили призывом "начни сегодня"
Сформируй эвристику по этой структуре:
Что конкретно привело к [РЕЗУЛЬТАТ]? Назови 1–2 главные причины.
Условие: Когда [триггер — тип задачи/ситуации]...
Действие: ...делай [конкретный совет]
Чего избегать: [антипаттерн из этого опыта]
Результат (Фаза 1): Модель выдаст структурированную эвристику. Например, анализ укажет на то, что пост начинался с определения (скучно) и не создавал эмоционального включения. Правило сформулирует: "Когда пост про финансовую дисциплину для молодой аудитории — начинай с боли ('у тебя нет подушки, и вот почему это страшно'), а не с термина. Избегай открывалок-определений."
Промпт (Фаза 2 — перед новым постом):
Я пишу новый пост. Прежде чем начать — оцени мои накопленные уроки.
НОВАЯ ЗАДАЧА: пост про то, как выбрать между ИИС и брокерским счётом
МОИ ЭВРИСТИКИ:
[вставить список сохранённых эвристик из фазы 1]
Шаг 1: Для каждой эвристики оцени релевантность к новой задаче (высокая / средняя / низкая).
Шаг 2: Выбери топ-3 самых релевантных.
Шаг 3: Напиши пост, явно опираясь на выбранные уроки.
Результат (Фаза 2): Сначала модель покажет оценку релевантности каждого правила и объяснит выбор топ-3. Потом напишет пост, в котором будут видны следы применённых уроков — структура, тон, способ открыть текст. Можно попросить явно пометить, какой урок где применился.
Почему это работает
Проблема: LLM каждый раз начинает с нуля. Даже если ты приложишь прошлый успешный диалог как пример — модель получает стену текста. Она обрабатывает контекст, но не извлекает из него принцип. Сырой диалог полон шума: промежуточные рассуждения, уточнения, итерации. Полезный сигнал тонет.
Сила LLM: Модель отлично следует чётким, компактным правилам "если — то". Такие инструкции она держит в голове и применяет к новой ситуации. Эвристика — это и есть такое правило: условие запуска + рекомендованное действие.
Как метод использует это: Вместо того чтобы пересказывать прошлое, ты дистиллируешь его в принципы. Модель получает не "посмотри что было" а "вот правила, которые работают в твоей области". Плюс — релевантность: не все уроки одинаково полезны для каждой новой задачи. Подсовываешь только те, что подходят к типу задачи сейчас.
Рычаги управления:
- Структура эвристики ( + ) → можно упростить до одного предложения для быстрых задач, расширить до нескольких действий для сложных
- Количество эвристик в промпте → исследование показало: оптимум 20 для автосистемы, вручную хватает 5–7
- Тип опыта → провалы лучше работают для поисковых/аналитических задач, успехи — для задач-исполнения (написать, сделать, оформить). Если знаешь тип задачи — фильтруй базу соответственно
- Условие в эвристике → чем точнее триггер, тем лучше перенос. "Когда аудитория до 35 лет и тема пугает" лучше чем "когда пишу посты"
Шаблон промпта
Шаблон 1 — Генерация эвристики (после задачи)
Извлеки урок из завершённой задачи.
ЗАДАЧА: {описание_задачи}
РЕЗУЛЬТАТ: {успех или провал — и в чём конкретно}
ЧТО ДЕЛАЛИ: {краткое описание подхода, шагов, решений}
Сформируй эвристику:
Что конкретно привело к {результат}? 1–2 причины.
Условие: Когда {тип_задачи_или_ситуации}...
Действие: ...{что делать}
Избегать: {антипаттерн из этого опыта}
Плейсхолдеры:
- {описание_задачи} — что хотел получить
- {результат} — конкретно: "клиент отклонил КП", "пост набрал 0 репостов", "решение оказалось неверным"
- {что делали} — подход, структура, ключевые решения (3–5 пунктов)
Шаблон 2 — Применение эвристик (перед задачей)
Прежде чем выполнить задачу — оцени накопленные уроки.
ЗАДАЧА: {новая_задача}
МОИ ЭВРИСТИКИ:
{список_эвристик_из_базы}
Шаг 1: Оцени релевантность каждой эвристики: высокая / средняя / низкая.
Укажи почему.
Шаг 2: Выбери топ-{число} самых применимых.
Шаг 3: Выполни задачу, явно опираясь на выбранные уроки.
Отметь в ответе: какой урок где применил.
Плейсхолдеры:
- {новая_задача} — конкретно что нужно сделать
- {список_эвристик} — скопировать из своего файла
- {число} — начни с 3–5, увеличивай по мере роста базы
🚀 Быстрый старт — вставь в чат:
Вот два шаблона ERL для накопления и применения уроков из опыта.
Адаптируй под мою задачу: {твоя задача}.
Задавай вопросы, чтобы заполнить поля.
[вставить шаблон выше]
LLM спросит о типе задачи, прошлых попытках и что сработало/нет — потому что без этого не сможет сформулировать точное условие триггера в эвристике.
Ограничения
⚠️ Нужна база опыта: Метод не работает с нуля. Первые 5–10 задач ты только накапливаешь эвристики — пользы сразу нет. Чем больше аналогичных задач, тем ценнее библиотека.
⚠️ Слабо работает в непредсказуемых диалогах: Если задача зависит от действий третьей стороны (переговоры, поддержка пользователей с переменным поведением), эвристики помогают нестабильно — урок сработал при одном сценарии, провалился при другом.
⚠️ Релевантность важнее количества: Вставить все накопленные уроки в промпт — контрпродуктивно. В исследовании бездумное добавление большого числа эвристик снижало результат. Отбирай только подходящие к типу текущей задачи.
⚠️ Ручной режим требует дисциплины: Автоматическая система делает это после каждой задачи сама. Вручную нужно помнить запускать фазу 1. Без этой привычки библиотека не растёт.
Ресурсы
Название: Experiential Reflective Learning for Self-Improving LLM Agents Авторы: Marc-Antoine Allard, Arnaud Teinturier, Victor Xing, Gautier Viaud — Illuin Technology Конференция: ICLR 2026, MemAgents Workshop Связанные работы: ExpeL (Zhao et al., 2024), Reflexion (Shinn et al., 2023), AutoGuide (Fu et al., 2024)
