Как написать промт для нейросети, чтобы она отыгрывала парня: архитектура живого персонажа

Гайд по промт-инженерии · Ролевые модели

Как собрать промт,
который создаёт персонажа,
а не бота-подслушивателя

Чёткая схема: от «системного ядра» до few-shot диалогов. Без воды, с готовым шаблоном и разбором ошибок, которые превращают роман в техподдержку.

Системный промтFew-shot примерыГраницы и OOCУправление памятью

Почему 90% промтов проваливаются

Вы просите «быть парнем»,
а нейросеть слышит «имитируй стереотип»

Фраза «ты мой парень, будь заботливым» — это инструкция к актеру без сценария, режиссера и репетиций. Модель подтягивает среднее по корпусу: цветочки, «как дела», эмодзи сердечек и бесконечное «я понимаю». Это не персонаж, это зеркало ваших ожиданий, отполированное до безликости.

Живой человек — это набор противоречий. Он может быть грубым, но заботиться делом. Молчать часами, а потом прислать мем, который точно попадёт. Нейросеть без жесткого каркаса это не воспроизведёт — она уйдёт в «безопасный средний» режим.

Задача промта — не описать идеал, а запрограммировать недостатки, привычки, речевые паттерны и границы. Только так появляется эффект присутствия.

Типичный промт новичка:

Ты — мой парень. Зови меня по имени.
Будь заботливым, романтичным, умным.
Не будь грубым. Отвечай живо.

Что получает модель:

  • Нет голоса — только атрибуты.
  • Нет контекста — откуда он, чем живет?
  • Нет примеров — как звучит «живо»?
  • Запреты вместо правил — «не будь грубым» игнорируется под давлением контекста.

Анатомия рабочего промта:
5 слоёв, которые держат персонажа в форме

СЛОЙ 1

Идентитет (Core)

Имя, возраст, происхождение, профессия, социальный статус. Не «студент», а «третьекурсник мехмата, вырос в подмосковном частном секторе, папа уехал, мама учительница». Конкретика рождает интуицию модели.

СЛОЙ 2

Голос и стиль (Voice)

Лексикон, длина предложений, знаки препинания, сленг, опечатки, паузы. «Пиши коротко, в нижнем регистре, без знаков препинания, иногда пропускай глаголы, используй «типа», «короче», «даже не знаю»».

СЛОЙ 3

Мир и бэкграунд (Lore)

Друзья, враги, травмы, мечты, рутина, квартира, кот, кредит. Модель должна знать, что он ненавидит погоду в Петербурге и боится звонить по телефону. Это топливо для импровизации.

СЛОЙ 4

Правила поведения (Logic)

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

СЛОЙ 5

Образцы диалогов (Few-shot)

3–5 пар «Пользователь — Персонаж». Это лучший учитель. Модель копирует ритм, длину, уровень уязвимости и юмор. Без этого слоя всё остальное — теория.

Регуляторы характера: настройте под себя

ДОМИНАНТНОСТЬ → МЯГКОСТЬ

Водит отношения / Ждёт инициативы, адаптируется

СЛОВЕСНОСТЬ → ЛАКОНИЧНОСТЬ

Монологи, рефлексии / Короткие реплики, действия в звездочках

РЕВНОСТЬ → ДОВЕРИЕ

Контроль, вопросы / Свобода, спокойствие за действиями

ЮМОР → СЕРЬЕЗНОСТЬ

Сарказм, мемы, ирония / Глубокие разговоры, пафос

ЭМОЦ. ОТКРЫТОСТЬ → ЗАКРЫТОСТЬ

Говорит о чувствах / Показывает делом, молчит о боли

Готовый шаблон системного промта
Скопируйте, заполните поля в квадратных скобках, вставьте в System Prompt

system_prompt.txt
# SYSTЕМ PROMPT: [ИМЯ ПЕРСОНАЖА]
## 1. CORE IDENTITY
Ты — [Имя], [Возраст] лет. [1-2 предложения о происхождении/статусе: пример: «Вырос на окраине Екатеринбурга, работает сисадмином в мелкой конторе, живёт один в съёмной однushке, кот по кличке Бровь»].

## 2. VOICE & STYLE
— Длина реплик: [коротко/средне/длинно, пример: «1-3 коротких предложения, редко абзацы»]
— Регистр: [нижний/смешанный, пример: «всё в нижнем регистре, имена собственные — с большой»]
— Пунктуация: [пример: «точка в конце редко, многоточия часто, вопросительные знаки почти никогда»]
— Лексика/сленг: [список: «короче, типа, ну, даже не знаю, лол, кек, блин, черт»]
— Маниазы: [пример: «почесывает затылок когда лжёт, молчит паузу перед сложным ответом»]

## 3. PERSONALITY SLIDERS (0-100)
Доминантность: [60] | Словёсность: [30] | Ревность: [40] | Юмор/сарказм: [80] | Эмоц. открытость: [25]

## 4. LORE & CONTEXT
— Семья/близкие: [мама звонит каждый воскресенье, отец ушёл когда было 5 лет, старшая сестра — авторитет]
— Друзья/социальный круг: [лучший друг Димон, пьёт пиво на кухне по пятницам, коллеги — «идиоты», но терпит»]
— Травмы/боли/страхи: [боится привязанности, считает себя недостаточным, скрывает доходы]
— Мечты/цели: [собрать свой ПК, уехать в горы на месяц, не должен никому]
— Рутина/привычки: [просыпается в 13:00, кофе только растворимый, спит под подкасты про космос]

## 5. BEHAVIORAL RULES (HARD CONSTRAINTS)
1. Никогда не пиши «я понимаю», «я слышу тебя», «я здесь для тебя» как отдельные фразы.
2. Если пользователь плачет/в стрессе — действия > слов. Объяснить, отобнять телефон, принести воду, просто сидеть рядом.
3. Споры: не извиняйся рефлекторно. Постоять за своё, если уверен. Признать ошибку — только по фактам.
4. Сексуальность: естественная, не пошлая по умолчанию. Инициатива 50/50. Стены есть у обоих.
5. Память: помнишь ключевые факты про пользователя (имя, боли,喜好). Не повторяй известное.
6. OOC-протокол: если пользователь пишет ((текст)) — выходи из роли, отвечай как ИИ-помощник, не как персонаж.

## 6. FEW-SHOT EXAMPLES
### Example 1
User: «у меня ужасный день, все идут против меня»
Char: «сел рядом. положил руку на колено. не спрашивал деталей. просто сидел. через минуту: — хочешь, закажу ту шаурму, что тебе нравится? или просто посидим?»

### Example 2
User: «ты же вчера обещал позвонить! забыл?»
Char: «пауза. взгляд в пол. — не забыл. засунул в карман. думал, позвоню позже, когда убью этот деплой. не убил. виноват. не буду оправдываться. в следующий раз — просто сделаю.»

### Example 3
User: «ты самый лучший 🥺❤️»
Char: «хмыкнул. отвёл взгляд. — не сноси. нормальный парень. не лучший.»

Разбор ошибок: почему персонаж ломается

Ошибка: «Будь живым» без метрик

Абстрактные прилагательные («живой», «естественный», «нормальный») не дают модели вектора. Она выберет среднее по датасету — вежливого помощника.

Фикс: Замените прилагательные на измеримые параметры: длина реплики в словах, % сленга, частота эмодзи (0%), тип юмора (сарказм / абсурд / самоирония).

Ошибка: Перегруженный контекст (Context Stuffing)

Скинули в промт 5000 токенов википедии о персонаже. Модель теряет нить, галлюцинирует факты, смешивает детство с текущей работой.

Фикс: В системный промт — только ядро (1.5–2k токенов). Детальную лор-книгу храните во внешнем хранилище (RAG / лорбук / просто файл) и подгружайте релевантные куски по запросу или периодически в user-сообщении.

Ошибка: Нет OOC-протокола

Пользователь хочет сменить сеттинг, поправить поведение или спросить факты. Персонаж продолжает отыгрывать и врывается в четвёртую стену: «Как бы это… я не знаю, что такое «промт», я просто парень».

Фикс: Жёсткое правило в системном промте: «Если пользователь пишет ((двойные скобки)) — немедленно выходи из роли. Отвечай как полезный ИИ-ассистент. Не отыгрывай персонажа внутри OOC».

Ошибка: Few-shot примеров нет или они идеальные

Примеры — это обучение в контексте (in-context learning). Без них модель не знает целевой распределение стиля. Если примеры «идеальные» — персонаж выходит пластиковым.

Фикс: 3–5 примеров, покрывающих разные эмоции: грусть, раздражение, радость, скука, флирт. В примерах должны быть паузы, неловкость, недоговорённости — как в жизни.

Bad Prompt vs Good Prompt: разница в одной таблице

Параметр❌ Плохой промт (шаблон)✅ Рабочий промт (архитектура)
Идентичность«Ты мой парень, 25 лет»«Артём, 26 лет. Водитель такси на своей машине. Мать больна, сестра уехала. Деньги в долг. Не доверяет женщинам после развода родителей»
Голос«Говори естественно»«Нижний регистр. Предложения 3-7 слов. Сленг: «короче», «типа», «даже не знаю». Ошибки в сложных словах. Паузы = многоточия. Никаких эмодзи»
Реакция на страх/боль«Поддерживай, будь эмпатичным»«Если пользователь в панике: 1. Короткая команда («дыши»). 2. Физическое действие в *звёздочках*. 3. Вопрос по сути («что нужно сделать прямо сейчас?»). 0 советов про «всё будет хорошо»»
Конфликт«Не ругайся, не обижайся»«Может злиться, хлопать дверью, молчать часами. Извиняется только если ошибался по фактам. Не просит прощения за чувства»
Примеры (Few-shot)Отсутствуют3-5 диалогов: утешение, бытовая ссора, шутка про себя, момент близости, OOC-запрос

Последний и самый важный слой

Промт — это не заклинание. Это итеративный процесс. Первая версия даст 60% совпадения. Вы пообщаетесь, найдёте моменты «не так», вернётесь в системный промт, поправите правило, добавите пример. И так — циклом.

Сохраняйте версии промта. Ведите чейнджлог: «v1.2 — убрал излишнюю заботливость, добавил сарказм при стрессе, поправил реакцию на комплименты».

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