Промты на диалог: 5 архетипов, скелет мастера и ошибки, ломающие контекст

Промты на диалог: 5 архетипов, скелет мастера и ошибки, ломающие контекст

Одиночный ответ — это угадывание. Диалог — это процесс проверки. Разбираем, как собрать промт, за который ИИ ведёт собеседование, спор или мозговой штурм с самим собой.

5 архетиповСкелет мастераАнти-паттерны

Почему монолог проваливается там, где нужен диалог

Стандартный промт просит результат: «Напиши план», «Сделай код», «Придумай идею». Модель выдаёт первый пришедший в голову вариант — самый вероятный, а не лучший. Нет этапа рефлексии, нет критики, нет альтернатив.

Диалоговый промт меняет контракт: модель не отвечает, а думает вслух. Она генерирует гипотезу, атакует её, уточняет, синтезирует. Качество становится функцией глубины процесса, а не везения с токенами.

Сравнение линейного ответа и циклического диалога

Пять способов заставить модель думать вслух

Сократический диалог

Модель задаёт уточняющие вопросы, чтобы сузить неопределённость, перед тем как дать ответ. Идеально для стратегии, диагностики, обучения.

Многоагентная симуляция

Два и более агентов с разными ролями (например, «Оптимист» и «Пессимист», «CEO» и «CFO») обсуждают задачу до консенсуса.

Дебатный клуб (Red Team / Blue Team)

Один агент предлагает решение, второй — ищет в нём дыры. Раунды повторяются до устойчивого варианта. Лучший способ тестировать код, планы, аргументацию.

Код-ревьюСтратегияРиск-менеджмент

Ролевое интервью

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

Ко-креативный 잼

Итеративный пинг-понг: вы даёте заготовку, модель развивает, вы корректируете. Промт задаёт правила игры: «Не пиши готовое, предлагай три варианта фрагмента».

Анатомия мастер-промта: четыре блока, которые держат контекст

# 1. КОНТЕКСТ И ЦЕЛЬ
# Чего хотим, зачем, для какой аудитории, какие ограничения.
Goal: "Создать лендинг для B2B SaaS (HR-tech), цель — демо-заявка."
Audience: "HR-директора 100-500 чел, скептичны к ИИ."
Constraints: "Никакого маркетингового флафа, конкретика, кейсы."

# 2. РОЛИ И ПРОТОКОЛ ВЗАИМОДЕЙСТВИЯ
# Жёстко заданные персоны и правила хода.
Agent_A: "Strategist. Опыт 15 лет в B2B SaaS. Цель — структура и воронка."
Agent_B: "Skeptic_HR. Персонаж заказчика. Болит: интеграции, ROI, комплаенс."
Protocol:
  1. Strategist пишет черновик секции.
  2. Skeptic_HR ругает: «Тут воды», «Где цифры?», «Не верю».
  3. Strategist переписывает с учётом обжалований.
  4. Цикл 2-3 до фразы Skeptic: «Принято, беру в работу».

# 3. ФОРМАТ ВЫВОДА И ПАМЯТЬ
# Что видно пользователю, что скрыто в scratchpad.
Output_Format: "Только финальный вариант секции + лог изменений (diff)."
Memory_Window: "Хранить последние 3 итерации каждого агента."
State_Tracking: "Вести чек-лист боли Skeptic: [Интеграция: открыта, ROI: закрыта...]"

# 4. ТРИГГЕР ЗАВЕРШЕНИЯ
Stop_Condition: "Skeptic_HR пишет явное согласие ИЛИ 5 раундов пройдено."
Fallback: "Если зацикливание — вызвать Agent_C (Arbiter) для решения."
1

Контекст: якорь реальности

Без цели и ограничений агенты уходят в общности. Контекст — это компас, по которому Skeptic оценивает аргументы Strategist.

2

Протокол: правила игры

Кто говорит первым? Что считается аргументом? Как выглядит «принято»? Протокол превращает хаос в алгоритм.

3

Память и формат: видимость процесса

State_Tracking не даёт агентам забывать, о чём уже договорились. Memory_Window экономт токены, сохраняя суть.

4

Триггер: защита от бесконечности

Stop_Condition — единственный способ не утонуть в токенах. Fallback на Арбитра решает тупиковые споры.

Наивный промт против структуры: где теряется смысл

Наивный промт

«Выступай как эксперт по маркетингу. Напиши структуру лендинга для HR SaaS. Сделай его продающим.»

Результат

Генеральный шаблон: «Заголовок, Боли, Решение, Отзывы, CTA». Никакой специфики HR, никаких возражений про интеграции. Текст, который подойдёт и для пиццы.

Почему не работает

  • Нет контекста продукта и аудитории.
  • Нет механизма самокритики.
  • Роль «эксперт» слишком размыта.
  • Один проход = нулевая рефлексия.

Структурированный диалог

Goal: B2B HR SaaS landing. Agents: Strategist vs Skeptic_HR. Protocol: Draft -> Roast -> Fix (x3). State: Track objections checklist. Stop: Skeptic agrees or 5 rounds.

Результат

Секция «Hero» с конкретным хуком про «сокращение тайм-ту-хайр на 40%». Блок «Интеграции» с API-спеками и SSO. FAQ, написанный языком HRD, а не маркетолога.

Почему работает

  • Конфликт ролей рождает детали.
  • Чек-лист боли гарантирует покрытие.
  • Итерации шлифуют формулировки.
  • Триггер остановки экономит бюджет.

Механика, удерживающая нить: память, состояние, формат

Скользящее окно памяти

Хранить не весь диалог, а последние N ходов + сводку (summary) ранних. Экономит токены, сохраняет смысл.

Трекер состояния (State)

Явный JSON/список: «Какие возражения закрыты, какие открыты». Агенты читают его перед ходом. Избегает повтора аргументов.

Структурированный вывод

Обязать агентов отвечать по схеме: {«thought»: «…», «speech»: «…», «action»: «next»}. Парсится легко, логи чистые.

Стоп-последовательности

Жёсткие маркеры: «[AGREED]», «[ARBITER]». Модель учится генерировать их как сигналы конца хода или вызова арбитра.

Четыре способа сломать диалог и как их предотвратить

↻

Зацикливание (Loop)

Агенты повторяют одни аргументы. Skeptic не принимает правки, Strategist не меняет подход.

Лечение: Лимит раундов (max_rounds: 3-5). Счётчик уникальных аргументов. При срабатывании — вызов Арбитра или принудительный синтез.
✦

Галлюцинация фактов (Drift)

В процессе спора агенты выдумывают фичи, которых нет в продукте, или придумывают несуществующие кейсы.

Лечение: Блок «Immutable Facts» в контексте (список фактов, которых нельзя менять). Валидатор на выходе сверяет вывод с фактами.
⬚

Выход из роли (OOC)

Skeptic вдруг начинает помогать Strategist, или Strategist признаётся: «Ты прав, я плохой бот». Магия диалога рушится.

Лечение: System prompt с правилом «Never break character». Внедрение OOC-маркера в парсер: если агент пишет не от своего имени — регенерировать ход.
⚠

Пожирание контекста (Context Rot)

Диалог раздувается до 50k токенов. Модель теряет нить, начинает противоречить самой себе в начале и в конце.

Лечение: Рекурсивное суммаризация: каждый 3-й ход — Agent_Summarizer сжимает историю в 200 токенов. Основной контекст = Summary + Last 3 turns + State.

Диалог — это не формат вывода. Это формат мышления.

Когда вы проектируете промт на диалог, вы не просите текст. Вы проектируете когнитивный процесс: генерацию гипотез, критику, синтез. Качество ответа становится побочным эффектом качества процесса. Начните с одного агента-критика. Добавьте чек-лист состояния. Наблюдайте, как падает процент правок.