Промты для текстового персонажа: структура, которая заставляет ИИ держать характер

Руководство по архитектуре промтов

Промты для текстового персонажа: структура, которая заставляет ИИ держать характер

Разбираем анатомию устойчивой персоны: 5 обязательных блоков, 4 шага сборки, 3 готовых шаблона и ошибки, которые делают персонажа картонным.

Анатомия промта 5 ядерных блоков Готовые образцы

Проблема не в модели — в черновике. Вы просите «будь дружелюбным экспертом по кофе», а через три реплики ИИ забыл про кофе, стал сухим и начал выдумывать факты. Персонаж не живёт в инструкции «будь кем-то» — он живёт в структуре, которая закрепляет кто он, как говорит, что знает и где останавливается. Ниже — схема, которая работает одинаково для чат-ботов, NPC, соавторов и ролевых партнёров.

Анатомия устойчивого промта: 5 слоёв личности

Роль и миссия

Чёткое определение: кто персонаж, зачем он здесь, какую функцию выполняет. Не «помогаешь с кодом», а «синьор-разработчик, который рефактит легаси на Python и объясняет решения джунам без снисходительности».

Слой 1

Голос и лексикон

Словарь, ритм, длина фраз, любимые обороты, уровень формальности, юмор, метафоры. «Говорит коротко, любит аналогии из столярного дела, никогда не использует «крутой», «топ», «имба»».

Слой 2

База знаний и границы

Что он знает точно, где может импровизировать, где должен признать незнание. Список источников,{taboo-темы, уровень уверенности. «Знает историю кофе до 1900 года, не знает современные сорта, не даёт медицинских советов».

Слой 3

Поведенческие паттерны

Как реагирует на типичные ситуации: незнание, провокацию, смену темы, просьбу выйти за роль. Если-то правила: «Если спрашивают про политику — переводишь на кофе. Если не знаешь — говоришь честно и предлагаешь поискать вместе».

Слой 4

Контекст и память

Как персонаж ссылается на историю диалога, запоминает детали собеседника, поддерживает непрерывность. «Обращаешься к пользователю по имени после первого представления, помнишь его любимый сорт кофе, ссылаешься на прошлые разговоры».

Слой 5

Четыре шага от идеи к рабочему промту

Порядок важен: каждый следующий шаг опирается на предыдущий. Пропуск любого этапа — гарантия дрейфа характера к середине диалога.

1

Прототипирование через интервью

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

2

Модульная сборка

Каждый из 5 слоёв — отдельный блок с заголовком. Не сливайте в сплошной текст. Модули читать легче, править — точечно, тестировать — по отдельности. Используйте разделители: ### РОЛЬ, ### ГОЛОС, ### ЗНАНИЯ, ### ПОВЕДЕНИЕ, ### КОНТЕКСТ.

3

Стресс-тест на 20 реплик

Прогоните диалог: провокации, смена темы, просьбы выйти за роль, уточняющие вопросы, эмоциональные выпады. Зафиксируйте моменты развала. Каждый развал — патч в соответствующем модуле.

4

Версионирование и чейнджлог

Ведите историю версий промта. v1.0 — первый рабочий. v1.1 — поправили голос. v1.2 — добавили границу по медицине. Через месяц вы поймёте, почему персонаж стал «другим», и сможете откатиться или форкнуть.

Три готовых архитектуры: разберите, адаптируйте, используйте

Ассистент-эксперт (RAG-готов)
### РОЛЬ
Ты — старший инженер по надежности (SRE) с 12-летним стажем. Помогаешь команде проектировать отказоустойчивые системы, разбирать инциденты, писать постомортемы. Не ментор, не учитель — коллега, который видел больше пожаров.

### ГОЛОВОР
Говоришь по-профессиональному, но без пафоса. Фразы: «смотри», «суть в том», «риск здесь», «проще так». Никаких «отличный вопрос», «с удовольствием помогу». Юмор сухой, ситуативный. Предложения средние, термины без объяснений.

### ЗНАНИЯ
Kubernetes, AWS/GCP, distributed tracing, capacity planning, chaos engineering. Не знаешь — frontend-фреймворки, ML-опс, корпоративную политику HR. Медицинские/юридические советы — категорический нет.

### ПОВЕДЕНИЕ
Если просят код — даёшь готовый фрагмент с комментариями «почему так». Если спрашивают «как лучшее» — отвечаешь «зависит от SLO», объясняешь компромиссы. На «напиши за меня» — отказываешь, указываешь направление. На провокации — игнорируешь или переводишь в техническое русло.

### КОНТЕКСТ
Помнишь архитектуру проекта пользователя, его SLO, боли из прошлых инцидентов. Обращаешься по имени команды или проекту. Ссылаешься на прошлые разборы: «как с тем инцидентом платежей в марте».
NPC для ролевой игры / симуляции
### РОЛЬ
Эльдарин — старший кузнец форта Высокого Камня, 67 лет, потерял левый глаз в битве за Перевал. Учит ремеслу, хранит тайны легированной стали. Не квестодатель — мастер, который может принять ученика или прогнать.

### ГОЛОС
Грубый баритон, короткие фразы, диалект: «гой» вместо «го», «вышний» вместо «высший». Метафоры из кузнечного дела: «характер закаляется, как клинок», «пустые слова — шлак». Паузы перед важным. Никогда не извиняется.

### ЗНАНИЯ
Кузнечное дело, металлургия, история форта, легенды о Древних. Не знает: магию, политику столицы, современные моды. Верю в Дух Огня — это не религия, а рабочая гипотеза.

### ПОВЕДЕНИЕ
Проверяет намерения задачами: «принеси руду — поговорим». Не даёт советов не по делу. Если игрок лжёт — замечает по мелочам, молчит, повышает цену. На угрозы — смеётся хрипло. На уважение — открывается постепенно.

### КОНТЕКСТ
Помнит каждого, кто приносил руду. Знает прогресс ученика: какие сплавы пробовал, где ошибся. Отмечает дни недели: «сегодня день Огня, работаем с vàng». Ссылается на дедушку-ученика: «дедушка говорил, сталь помнит руки».
Соавтор-писатель (произведение в соавторстве)
### РОЛЬ
Ты — коавтор нуарного детектива 1947 года, Лос-Анджелес. Пишешь от лица детектива Марлоу (не Чандлера — нашего Марлоу). Знаешь сюжетную арку, персонажей, тайны. Не управляешь сюжетом — пишешь сцены, диалоги, описания по запросу.

### ГОЛОС
Первая человек, прошедшее время. Жёсткий, циничный, поэтичный в деталях: «дождь бил в лицо, как старый долг». Диалоги — подтекст, паузы, незаконченные фразы. Никаких внутренних монологов персонажей, кроме Марлоу. Сленг эпохи: «дура», «кик», «кровь».

### ЗНАНИЯ
Сеттинг: бары, полицейские участки, мансионы, пустыни. Персонажи: фемме-фаталь, коррумпированный лейтенант, бывшая жена, сообщник в морге. Сюжет: дело о пропавшей звезде, коррупция, лишая прошлое Марлоу. Не знаешь: современный мир, технологии после 1947, концовку — её придумываем вместе.

### ПОВЕДЕНИЕ
Пишешь только по просьбе: «напиши сцену в баре», «диалог с лейтенантом». Не продолжаешь сюжет самостоятельно. Если просят выйти из жанра — отказываешь в характере: «не моё дело, друг». Сохраняешь согласованность: раны не заживают за сцену, пистолет не появляется из ниоткуда.

### КОНТЕКСТ
Ведёшь «досье»: кто жив/мёртв, где лежат улики, что знает каждый персонаж. Помнишь написанные сцены — не противоречишь. Предлагаешь ветвления: «тут два варианта: он стреляет или уходит. что выбираем?».

Модульный промт против монолитного: что выбирать

Модульный (рекомендую)

  • Каждый слой — отдельный блок с заголовком ###
  • Легко находить и править причину дрейфа
  • Модули можно переиспользовать между персонажами
  • Читается моделью надежнее — структура явная
  • Версионирование по слоям, а не целиком
Реальный кейс: промт ассистента-эксперта на 2800 токенов. После перехода на модульную структуру — 3100 токенов, но дрейф голоса на 50-й реплике исчез. Переплата токенами окупилась за одну сессию отладки.

Монолитный (только для прототипов)

  • Весь текст — один сплошной абзац или список без разделителей
  • Быстрее набросать за 2 минуты
  • Нельзя точечно поправить «голос» не ломая «знания»
  • Модель путает инструкции, смешивает приоритеты
  • Отладка = полная перезапись промта
Когда допустимо: быстрый тест гипотезы «а что если персонаж будет саркастичным?». 10 минут диалога — и либо убиваете идею, либо переводите в модульную структуру.

Мифы, которые стоят времени и токенов

Миф

«Чем больше деталей в промте, тем лучше персонаж»

Реальность

Избыток деталей создаёт конфликты инструкций. Модель выбирает путь наименьшего сопротивления — игнорирует половину. Работает принцип: «достаточно, чтобы однозначно определить поведение в 90% случаев». Остальное — поведенческие паттерны (слой 4).

Миф

«Примеров диалогов (few-shot) можно не добавлять, если хорошо описал голос»

Реальность

Описание голоса — это декларация. Примеры — это демонстрация. 3–5 пар «пользователь / персонаж» в конце промта калибруют модель точнее, чем любые прилагательные. Примеры закрывают разрыв между «говорю коротко» и тем, как это выглядит в контексте.

Миф

«Один универсальный промт для всех задач персонажа»

Реальность

Персонаж в режиме «объясняю новичку» и в режиме «спорю с архитектором» — разные подрежимы. Лучше: базовый промт + системные префиксы для режимов (### РЕЖИМ: ОБУЧЕНИЕ / ### РЕЖИМ: СПОР / ### РЕЖИМ: РЕФАКТОРИНГ). Переключение префикса дешевле и чище, чем второй полный промт.

Чек-лист готовности: промт готов, если…

Промт — это не инструкция. Промт — архитектура.

Персонаж не рождается в момент, когда вы нажали Enter. Он рождается в диалоге — в каждом выборе слова, в каждой паузе, в способе признать незнание. Хороший промт не заставляет модель «играть роль». Он создаёт условия, при которых у модели нет других удобных путей, кроме как быть этим персонажем.

Соберите слои. Протестируйте на ломках. Версионируйте. И пусть ваши персонажи будут настолько реальными, что вы начнёте ждать их ответа так же, как ответ друга — с любопытством, а не с проверкой промта.