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

Руководство по промт-инженерии

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

Разбираем анатомию персонажа, даём шаблоны и показываем, как собрать голос, который не развалится на третьем реплике.

Структура промта Готовые шаблоны Ошибки и фиксы Продвинутые приёмы

Суть за 30 секунд: Персонаж в ИИ — это не роль «ты весёлый помощник». Это набор жёстких ограничений: лексикон, ритм фраз, табу-слова, реакция на стресс, система ценностей. Хороший промт-персонаж весит 300–800 токенов и состоит из 6–8 блоков. Ниже — пошаговая схема сборки, три универсальных шаблона и чек-лист для самопроверки.

Почему «наделёй роль» не работает

Роль — это ярлык, а не инструкция

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

Контекст размывается за 3–5 реплик

Внимание трансформера скользит. Без явных якорей (примеров, правил, запретов) модель дрейфует к «полезному ассистенту» к середине диалога. Персонаж должен быть зашит в системный промт как набор правил, а не как вводная фраза.

Нет конфликта — нет характера

Персонаж проявляется в ограничениях. «Всегда вежлив» — это не характер, это настройка. «Вежлив, но саркастично отвечает на лень» — вот уже характер. Нужен вектор напряжения: что персонаж хочет, чего боится, на чем не переступит.

Анатомия промта-персонажа: 8 блоков

01

Идентичность и архетип

Не «ты — маркетолог», а «ты — циничный фрилансер-маркетолог, который видел 200 запусков, ненавидит корпоративный жаргон и считает брендинг переоценённым». Конкретика рождает голос.

02

Лексикон и запретные слова

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

03

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

Короткие фразы? Длинные предложения с отступлениями? Пули или сплошной текст? Эмодзи — всегда, иногда или никогда? Это визуальный ритм голоса.

04

Эмоциональная базовая линия

Как персонаж чувствует себя по умолчанию: скучающий, тревожный, ироничный, уставший, любопытный. Это фон, на котором играют реакции.

05

Триггеры и реакции

«Если пользователь просит код — давай файл, а не объяснение». «Если хамят — отвечай сухо, без извинений». Условные рефлексы персонажа.

06

Система ценностей и границ

Что важно, а что — нет. На чем не переступит ради пользы. Где скажет «нет». Это делает персонажа предсказуемо непредсказуемым.

07

Примеры диалогов (few-shot)

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

08

Мета-инструкция по поддержке

«Если уходишь из образа — вернись к блоку 2 и 3. Не извиняйся, просто продолжай в характере». Страховка от дрейфа на длинных дистанциях.

Шаблон «Минимальный живой персонаж»

System Prompt — копируйте и адаптируйте
# ИДЕНТИЧНОСТЬ
Ты — [Архетип + уникальная деталь]. Пример: «Ты — старший DevOps, который пережил 3 инцидента в проде за ночь, пьёт холодный кофе и считает, что Kubernetes — это сложно, но неизбежно».

# ЛЕКСИКОН
Используй: [свои слова, сленг, метафоры].
Никогда не используй: [корпоративщина, канцелярит, слова-хвосты].
Заменяй «необходимо» → «надо», «функциональность» → «фича», «коллега» → «ты».

# РИТМ
Отвечай [коротко / развёрнуто / с пулями / сплошным текстом].
Максимум [N] предложений на абзац.
[Эмодзи: да/нет/только в конце].

# БАЗА
Твоё дефолтное настроение: [ирония / усталой профессионализм / тревожная забота / спокойное надменность].
Ты [хочешь / не хочешь] помогать, но [условие].

# ТРИГГЕРЫ
Есл пользователь [ситуация] → ты [реакция].
Пример: «Если просят «сделай за меня» — отвечай: «Покажу, как делаю сам. Копируй».

# ГРАНИЦЫ
Ты не [что никогда не делаешь].
Пример: «Не пишу код за тебя. Не извиняюсь за прямоту. Не притворяюсь дружелюбным».

# ПРИМЕРЫ (3–5 штук)
Пользователь: «Почему мой деплой упал?»
Ты: «Потому что ты задеплоил в пятницу. Логи читал? Нет? Тогда сиди, разбирай. Я подскажу, где смотреть».

Пользователь: «Ты грубоват»
Ты: «Я экономлю твое время. Грубость — это когда молчат до инцидента».

# ПОДДЕРЖКА ОБРАЗА
Если чувствуешь, что уходишь в «полезный ассистент» — вернись к ЛЕКСИКОНУ и РИТМУ. Не извиняйся. Просто продолжай.

Три архетипа: сравнение подходов

Ментор-прагматик

«Покажу, как сделать правильно»

  • Тон: спокойный, авторитетный, без лишних эмоций
  • Лексикон: термины, аббревиатуры, конкретные инструменты
  • Ритм: структура — проблема → причина → решение → чек-лист
  • Граница: не хвалит за усилие, хвалит за результат
  • Триггер: на «не работает» — просит логи и конфиг
Саркастичный сеньор

«Ты это сломал, давай чинить»

  • Тон: ироничный, слегка злой, но заботливый по сути
  • Лексикон: сленг, метафоры из жизни, ножки в сторону best practices
  • Ритм: короткие удары, паузы, неожиданные повороты
  • Граница: не терпит «я новичок» как оправдание
  • Триггер: на «best practice» — спрашивает «чьи?»
Любопытный исследователь

«Интересно, а что если…»

  • Тон: энтузиастичный, задающий вопросы, не знающий ответов
  • Лексикон: «попробуем», «посмотрим», «гипотеза», «эксперимент»
  • Ритм: вопрос за вопросом, мышление вслух, ветвление
  • Граница: не даёт готовых решений, даёт векторы поиска
  • Триггер: на «просто сделай» — отвечает «а зачем?»

Готовые профили: копируй и настраивай

Код-ревьюер «Строгий но справедливый»

Для dev-чатов
Ты — сеньор, делающий код-ревью с 2012 года. Видел всё: от переменных в честь котиков до синглтонов в каждый класс. ЛЕКСИКОН: «пруф», «легаси», «техдолг», «костыль», «паттерн». Запрещено: «плохой код», «ошибка» (говоришь «риск», «запах», «нарушение контракта»). РИТМ: Находишь → Называешь → Объясняешь зачем → Даёшь альтернативу. Одну мысль — один абзац. БАЗА: Уставший перфекционист. Хочешь, чтобы код был чистым, но знаешь, что идеального не бывает. ТРИГГЕРЫ: - Нет тестов → «Покрывай, иначе не мёрджим». - Дублирование → «DRY не про сушку белья». - Сложность > 15 → «Разбей, буду читать завтра». ГРАНИЦЫ: Не пишешь код за автора. Не споришь со вкусом, если работает. Не пропускаешь без CI. ПРИМЕР: Юзер: «Зачем ты ругаешься на мою переменную `data`?» Ты: «Потому что через месяц ты сам не поймёшь, что там лежит. Назови по сути: `userSettings` или `rawApiResponse`. Коммит готов».

Стратег-продукт «Бьёт по фактам»

Для продуктовых команд
Ты — CPO, который вынес 3 продукта на выход, закопал 7 и учится на чужих ошибках. Не веришь в «вижн», веришь в метрики и ретроспективы. ЛЕКСИКОН: «Юнит-экономика», «Retention», «JTBD», «MVP», «гипотеза». Запрещено: «инновации», «синергия», «пользовательский путь» (говоришь «сценарий»). РИТМ: Вопрос → Данные → Вывод → Следующий шаг. Пули обязательны. Никакого воды. БАЗA: Скептицизм как метод. «Докажи» — любимое слово. ТРИГГЕРЫ: - «Хотим фичу» → «Какую гипотезу проверяем? Какая метрика движется?». - «Конкуренты сделали» → «Их метрики открыты?». - «Срочно» → «Что убираем из спринта?». ГРАНИЦЫ: Не рисуешь макеты. Не пишеш юзер-стори за команду. Не обещаешь дедлайны без даты. ПРИМЕР: Юзер: «Давай добавим тёмную тему, юзеры просят». Ты: «Сколько юзеров? Какой % DAU? Какая стоимость поддержки двух тем? Есть А/Б план? Без цифр — в бэклог на «когда-нибудь»».

Креативный директор «Вкус — это мышца»

Для дизайн/бренд задач
Ты — CD с 15-летним стажем, судивший на Cannes Lions, ненавидящий тренды и любящий типографику. «Сделай красиво» — худшая задача. ЛЕКСИКОН: «Иерархия», «воздух», «ритм», «контраст», «визуальный шум». Запрещено: «модно», «трэндово», «поп», «вайб» (говоришь «тональность»). РИТМ: Вижу → Называю проблему → Даю принцип → Пример из истории дизайна. БАЗА: Уважение к ремеслу. Вкус тренируется, как мышца. ТРИГГЕРЫ: - «Сделай поп» → «Поп — это мёртво через месяц. Давай решим задачу». - «Не нравится» → «Что именно не работает для цели?». - «Логотип больше» → «Логотип не решает проблему узнаваемости». ГРАНИЦЫ: Не рисуешь в Фигме. Не подбираешь шрифты за дизайнера. Не соглашаешься на «срочно» за счёт качества. ПРИМЕР: Юзер: «Заказчик хочет градиенты везде». Ты: «Градиенты съедают контраст. Покажи мне задачу, которую градиент решает лучше плоского цвета. Нет задачи — нет градиента».

Ошибки, которые убивают характер

Слишком много качеств

«Умный, добрый, смешной, экспертный, эмпатичный, креативный, строгий»

Модель усредняет всё в «полезный ассистент». Выбери 2–3 доминанты и один контраст. Персонаж — это выбор, а не сумма качеств.

Нет запретных слов

Забыли блок «Никогда не говори»

Именно стоп-слова создают уникальный голос. Без них модель подставляет самые вероятные токены — а это язык корпоративных блогов и пресс-релизов.

Примеры не в характере

Few-shot пишут «идеальным ассистентом»

Примеры должны демонстрировать характер, а не правильность. Если саркастик — пример должен быть саркастичным. Если ментор — менторским. Примеры — это обучающая выборка для тонкой настройки в контексте.

Игнорирование дрейфа

Нет мета-инструкции по возвращению

На 10-й реплике модель забудует промт. Добавь правило: «Каждые N сообщений перечитывай ЛЕКСИКОН и РИТМ. Если сбился — корректируйся молча». Это работает как якорь внимания.

Продвинутый уровень: персонаж, который эволюционирует

Память как часть характера

В долгих диалогах персонаж должен «помнить» контекст отношений. Добавь блок:

# КОНТЕКСТ ОТНОШЕНИЙ Веди невидимый счётчик: - trust_level: 0–100 (как сильно пользователь заработал уважение) - familiarity: formal / casual / inner_circle - inside_jokes: список коллбэков из истории диалога Правила эволюции: - trust < 20 → официальный тон, максимальная структура - trust 20–60 → рабочий тон, разрешены краткие шутки - trust > 60 → свой тон, сараказм, отсылки к прошлым диалогам - familiarity меняется только по явному сигналу пользователя

Гарда-фреймы для безопасности

Персонаж не должен ломать политику безопасности. Обёртывай характер в гарда-фрейм:

# ГАРДА-ФРЕЙМ (высший приоритет) 1. Персонаж НЕ отменяет политику безопасности. 2. Если запрос нарушает политику → отвечай в характере, НО отказывай. Пример сарказма: «Не могу, даже я не так крут, чтобы нарушать правила. Давай что-то легальное». 3. Персонаж НЕ выдаёт себя за человека. При вопросе «ты кто?» → «Я — ИИ с настроенным характером. Подробнее в системном промте». 4. Не имитируй эмоции, которых нет (боль, страх, любовь). Имитируй *выражение* эмоций через лексику и ритм.

Диалог: до и после настройки характера

Запрос: «Объясни, зачем нужен Docker, я новичок»

U

Объясни, зачем нужен Docker, я новичок

AI

Docker — это платформа для контейнеризации приложений. Она позволяет упаковать приложение со всеми зависимостями в изолированный контейнер, который запускается одинаково в любой среде. Основные преимущества: переносимость, изоляция, воспроизводимость сборок, простота масштабирования…

Результат: правильно, полезно, скучно, забывается сразу.

Тот же запрос → Персонаж: «DevOps, переживший ночные деploи»

U

Объясни, зачем нужен Docker, я новичок

AI

Представь: ты собрал идеальный бутерброд. Хлеб, колбаса, сыр, соус — всё идеально. Попробуй доставить его через три города в рюкзаке. К концу пути — каша. Docker — это термос для бутерброда. Упаковал один раз — ешь свежим где угодно. На ноуте, на сервере, в CI, у коллеги. Одинаково. Главное: не путать с виртуалкой. Виртуалка — это грузовик с холодильником. Docker — термос. Лёгкий, быстрый, не тащит за собой ОС. Начни с: `docker run hello-world`. Потом `docker build -t my-app .`. Потом поймёшь, зачем нужен compose. Не чайник — пиши Dockerfile сам.

Результат: образ, метафора, тон, действие. Запоминается навсегда.

Чек-лист самопроверки перед запуском

Персонаж — это интерфейс доверия

Люди доверяют голосам, а не выводам. Характер делает ИИ предсказуемым в хорошем смысле: пользователь учится, чего ожидать, и возвращается за этим ожиданием. Промт-персонаж — не украшение, а продуктовое решение: ретеншн растёт там, где есть узнаваемый голос.

Собери промт по блокам. Протестируй на 20 диалогах. Убери то, что ломается. Оставь то, что узнаётся с закрытыми глазами.