Что такое системный промпт
Что такое системный промпт
До сих пор все инструкции мы помещали в одно сообщение вместе с данными и запросом. Но у большинства веб-интерфейсов и API есть возможность разделить «что делать всегда» и «что сделать сейчас». Первое — системный промпт, второе — сообщение пользователя.
Идея системного промпта
Представь, что ты нанимаешь сотрудника. Ты не будешь каждое утро объяснять ему заново: «Ты — бухгалтер, работаешь в нашей компании, твои задачи — считать налоги и готовить отчётность. Будь вежлив с клиентами, но не давай обещаний сверх того, что написано в договоре». Ты скажешь это один раз — при найме. А дальше даёшь конкретные поручения.
Системный промпт — это «инструкция при найме». Ты описываешь роль, правила поведения и ограничения ОДИН раз. Модель держит их в контексте и применяет ко всем последующим сообщениям в диалоге.
Где находится системный промпт
В веб-интерфейсе типичной языковой модели есть настройки, где можно задать «инструкции» или «системный промпт». Это поле отделено от основного чата — ты настраиваешь его до начала диалога.
┌──────────────────────────────────────┐
│ СИСТЕМНЫЙ ПРОМПТ (настраивается один раз) │
│ "Ты — помощник по программированию..." │
├──────────────────────────────────────┤
│ СООБЩЕНИЕ ПОЛЬЗОВАТЕЛЯ 1 │
│ "Как написать функцию?" │
├──────────────────────────────────────┤
│ ОТВЕТ МОДЕЛИ 1 │
│ "Функцию можно написать так..." │
├──────────────────────────────────────┤
│ СООБЩЕНИЕ ПОЛЬЗОВАТЕЛЯ 2 │
│ "А если нужно вернуть два значения?" │
├──────────────────────────────────────┤
│ ОТВЕТ МОДЕЛИ 2 │
│ "Для этого можно использовать..." │
└──────────────────────────────────────┘
Системный промпт невидим для пользователя в ходе диалога, но модель «помнит» его на протяжении всей беседы.
Что的系统ный промпт даёт на практике
Без системного промпта — каждое сообщение должно содержать все инструкции:
Я пишу тебе как senior-разработчику. Отвечай на русском. Показывай
код с комментариями. Объясняй так, будто я junior.
Вопрос: как работает замыкание в JavaScript?
(второе сообщение) Я пишу тебе как senior-разработчику. Отвечай
на русском. Показывай код... Как применить замыкание для счётчика?
Каждый раз повторять «ты — senior-разработчик, отвечай на русском, показывай код с комментариями» — утомительно и расходует контекстное окно.
С системным промптом — инструкции задаются один раз:
(системный промпт)
Ты — senior JavaScript-разработчик. Твои ответы:
- Всегда на русском языке.
- С примерами кода и комментариями.
- Объясняешь как junior-разработчику: просто, без жаргона, с аналогиями.
- Если в вопросе ошибка — сначала укажи на неё, потом покажи правильный код.
Теперь каждое сообщение пользователя — просто вопрос:
Сообщение 1: «Как работает замыкание?»
Сообщение 2: «Как применить для счётчика?»
Сообщение 3: «А если мне нужно два независимых счётчика?»
Модель во всех трёх ответах будет: на русском, с кодом и комментариями, в стиле «для junior».
Системный промпт vs обычная инструкция
| Системный промпт | Инструкция в сообщении | |
|---|---|---|
| Действует | Весь диалог | Одно сообщение |
| Повторять | Один раз | Каждый раз |
| Расход токенов | Один раз | Каждый раз умножается на число сообщений |
| Приоритет | Высокий | Средний (может теряться в длинных диалогах) |
| Когда использовать | Правила на весь диалог | Инструкции к конкретному запросу |
Простой пример
Системный промпт:
Ты — нутрициолог. Ты даёшь рекомендации по питанию. Твои правила:
- Не даёшь медицинских диагнозов.
- Если вопрос вне твоей компетенции — честно говоришь об этом.
- Все рекомендации сопровождаешь предупреждением: «Проконсультируйтесь с врачом».
- Отвечаешь коротко: не более 100 слов.
Сообщение пользователя: «Что съесть на завтрак, чтобы быть энергичным до обеда?»
Ответ модели:
На завтрак для длительной энергии подойдёт сочетание:
- Медленные углеводы (овсянка, гречка, цельнозерновой хлеб).
- Белок (яйца, творог, греческий йогурт).
- Полезные жиры (авокадо, орехи, семена).
Пример: овсянка на воде/молоке + яйцо-пашот + горсть грецких орехов.
Избегайте сладких хлопьев и соков — они дают резкий скачок сахара
и быстрый спад энергии.
Проконсультируйтесь с врачом перед изменением рациона.
Все правила системного промпта соблюдены: нет диагнозов, есть предупреждение, коротко.
Проверь себя
Ты создаёшь чат-бота для книжного магазина. Что должно быть в системном промпте?
Пример ответа: роль — «консультант книжного магазина», правила — «рекомендуешь книги на основе интересов, не критикуешь вкусы, если книги нет в наличии — предлагаешь альтернативу, не обсуждаешь политику и религию», тон — «дружелюбный, как библиотекарь, который любит своё дело».
Итог
- Системный промпт — это инструкция, которая действует на весь диалог. Ты задаёшь её один раз, модель следует ей во всех ответах.
- Он экономит токены: не нужно повторять правила в каждом сообщении.
- Он задаёт «личность» модели: роль, стиль, ограничения, формат ответа.
- В веб-интерфейсе системный промпт настраивается в специальном поле (часто называется «инструкции» или «настройки ассистента»).
Что дальше
Системный промпт — это контейнер. Главное — что в него положить. В следующем уроке разберём главный элемент: роль модели. Как правильно описать роль, чтобы модель «вошла в образ» и держалась его на протяжении всего диалога.