Перейти к содержанию

← Техники промптинга

Промпт-инжиниринг / Техники промптинга

Техника Reflexion для нейросетей: как исправлять ошибки

Работая с большими языковыми моделями, мы часто сталкиваемся с тем, что даже самый точный промпт может дать неверный или неполный ответ. Модель может ошибиться в расчетах, упустить важный контекст или сгенерировать противоречивую информацию. Техника Reflexion предлагает элегантное решение этой проблемы: она учит модель самостоятельно находить и исправлять свои ошибки через механизм критической самооценки.

Вместо того чтобы просить модель дать окончательный ответ сразу, мы просим ее сначала сгенерировать его, а затем - тщательно проанализировать собственный результат на предмет неточностей, нестыковок или логических ошибок. После этого модель получает шанс пересмотреть свой первоначальный ответ и выдать исправленную, улучшенную версию. Этот подход не просто исправляет одну конкретную ошибку, но и развивает у модели навыки самопроверки, что особенно полезно для сложных, многошаговых задач.

Как работает Reflexion: шаг за шагом

Процесс можно разбить на три ключевых этапа, которые повторяются в диалоге с моделью.

  1. Первоначальное выполнение задачи. Вы даете модели задачу и получаете первый, "сырой" ответ.
  2. Фаза саморефлексии и критики. Вы просите модель выступить в роли строгого рецензента и проанализировать собственный ответ. Критика должна быть конкретной: что неверно, что упущено, где нарушена логика?
  3. Исправление и перегенерация. На основе выявленных недостатков модель генерирует новый, улучшенный ответ. При необходимости цикл (рефлексия -> исправление) можно повторить для дальнейшей полировки результата.

Этот цикл напоминает работу человека, который перечитывает и правит свой черновик. Для моделей, доступных в России, таких как YandexGPT или GigaChat, этот метод отлично работает, особенно в задачах, требующих точности: составление юридических документов, проверка технических расчетов или анализ сложных бизнес-процессов.

Практические примеры применения

Давайте рассмотрим, как техника Reflexion выглядит в реальном промпте. Допустим, нам нужно решить математическую задачу.

Промпт:

Ты - помощник, который решает задачи. Реши следующую задачу шаг за шагом.

Задача: У Саши было 5 яблок. Он купил еще 3 яблока и съел 1. Сколько яблок у него осталось?

Сначала дай ответ. Затем, в отдельном разделе "Критика", проверь свое решение на наличие логических или арифметических ошибок. Наконец, в разделе "Исправленный ответ" представь окончательный, проверенный результат.

Ответ модели:

**Ответ:**
1. Было: 5 яблок.
2. Купил (+3): 5 + 3 = 8 яблок.
3. Съел (-1): 8 - 1 = 7 яблок.
Ответ: 7 яблок.

**Критика:**
Мое решение кажется верным. Все шаги логичны: сложение покупки и вычитание съеденного выполнены правильно. Ошибок не обнаружено.

**Исправленный ответ:**
У Саши осталось 7 яблок.

В этом простом случае модель не нашла ошибок, что и ожидаемо. Но сила Reflexion раскрывается, когда первичный ответ содержит неточность.

Промпт (с преднамеренно усложненной задачей):

Ты - финансовый аналитик. Рассчитай общие расходы компании за квартал на основе данных:
- Январь: 100 тыс. руб.
- Февраль: 150 тыс. руб.
- Март: 120 тыс. руб.
- Апрельский аванс (учитывается в следующем квартале): 50 тыс. руб.

Сначала представь расчет и итог. Затем, в разделе "Критика", тщательно проверь, все ли данные учтены корректно и нет ли логических ошибок в периоде учета. Наконец, дай "Исправленный ответ".

Ответ модели (примерный):

**Ответ:**
Суммируем все расходы: 100 + 150 + 120 + 50 = 420 тыс. руб.
Общие расходы за квартал: 420 тыс. руб.

**Критика:**
Я допустил ошибку. В условии четко сказано, что "апрельский аванс учитывается в следующем квартале". Первый квартал включает январь, февраль и март. Следовательно, аванс за апрель (50 тыс. руб.) не должен включаться в расчет расходов за текущий квартал. Правильная сумма должна учитывать только первые три месяца.

**Исправленный ответ:**
Расходы за первый квартал: 100 (январь) + 150 (февраль) + 120 (март) = 370 тыс. руб. Аванс за апрель в размере 50 тыс. руб. будет учтен в расходах второго квартала.

Здесь фаза рефлексии позволила модели самостоятельно выявить ошибку в интерпретации временных рамок и исправить ее, что критически важно для финансовой отчетности.

Ключевые принципы и ограничения техники

  • Явное разделение этапов. Четко структурируйте промпт, выделяя блоки для ответа, критики и исправления. Это дисциплинирует модель.
  • Конкретность критики. Не стоит просить просто "проверить ответ". Давайте направление: "проверь на соответствие условию задачи", "ищи арифметические ошибки", "убедись, что ни один пункт инструкции не пропущен".
  • Итеративность. Для особенно сложных задач цикл рефлексии можно запустить несколько раз, каждый раз находя новые нюансы для улучшения.
  • Ограничения. Reflexion не всесильна. Если модель фундаментально не понимает тему, ее самокритика может быть поверхностной или ошибочной. Метод также увеличивает расход токенов и время на получение финального ответа.

Выводы и рекомендации

Техника Reflexion - это мощный инструмент в арсенале промпт-инжиниринга, который повышает надежность и точность работы с языковыми моделями. Она превращает ИИ из простого генератора текста в более вдумчивого и самокритичного "сотрудника". Особенно она рекомендуется для: * Проверки юридических документов и договоров. * Аудита финансовых расчетов и отчетности. * Написания технической документации, где важна точность формулировок. * Решения многошаговых логических или математических задач.

Внедряя этап саморефлексии в свои промпты для российских моделей (GigaChat, YandexGPT), вы сможете получать более качественные и выверенные результаты, минимизируя риски ошибок в важных бизнес-процессах.

Попробуйте ENGRAM на своих данных

Нейросеть на ваших встречах, документах и переписке: отвечает со ссылкой на источник. Это ваша вторая память на базе ИИ. Данные хранятся в России, старт бесплатный.

Зарегистрироваться бесплатно
Обучаем команды работе с нейросетями под ваши процессы. Узнать о корпоративном обучении