Как управлять промптами как кодом: версии, схемы и проверки
Промпт в рабочем процессе должен быть не красивой просьбой к нейросети, а управляемым договором. В нем должно быть понятно, что подать на вход, какой ответ получить, как проверить качество и что считается ошибкой. Тогда промпт можно улучшать, сравнивать версии и передавать другому человеку или агенту без ощущения, что все держится на интуиции автора.
Это особенно важно для контент-завода, поддержки, продаж, аналитики и редакции. Пока промпт живет как один длинный текст в чате, им трудно управлять. Сегодня он пишет три абзаца, завтра два, послезавтра начинает добавлять лишние пояснения. Вроде бы стало бодрее, но никто не понимает, где именно поменялся язык и почему результат стал другим.
Нормальный рабочий подход такой: промпт хранится как версия, рядом лежит схема ответа, набор проверочных примеров и короткое правило ревью. Это не усложнение ради порядка. Это способ сделать язык ИИ-процесса обучаемым.

Что меняется в задаче
Когда мы говорим "напиши пост для Telegram", модель может угадать стиль, но не обязана удержать его завтра. Когда мы говорим "напиши пост в формате: короткий крючок, одна мысль, конкретный навык, ссылка на статью, без служебных слов", это уже ближе к процессу. Но этого все равно мало, если нет примеров и проверки.
Управляемый промпт состоит из четырех вещей: инструкции, входных данных, ожидаемого формата и критерия качества. Structured Outputs в OpenAI полезны именно этим: ответ можно просить не просто "как получится", а в заданной структуре. Для редакции это означает, что пост, карточка, заголовок или краткое резюме могут возвращаться как понятные поля, а не как свободный поток текста.
Отдельно нужен слой оценки. В рекомендациях OpenAI по evals важна сама идея: качество лучше проверять на примерах, а не только на ощущении. Если промпт пишет посты, у него должны быть тестовые статьи и ожидаемые признаки хорошего поста. Если промпт пишет SEO-заголовки, у него должны быть примеры удачных и неудачных заголовков.
Главное:Промпт становится рабочим активом только тогда, когда рядом с ним есть версия, вход, ожидаемый формат, примеры и проверка. Без этого он остается удачной фразой, которую сложно повторить.
Как устроить версионность
Версия нужна не для бюрократии, а для обратимости. Если новый вариант стал хуже, нужно быстро понять, что поменялось: длина, тон, структура, ссылка, призыв, количество деталей, отношение к источнику. Поэтому промпт лучше хранить не как безымянный текст, а как маленькую карточку.
| Часть карточки | Что записать | Зачем это нужно |
|---|---|---|
| Название | telegrampostv3shortskill |
чтобы понимать назначение |
| Цель | превратить статью в короткий пост с навыком | чтобы не спорить о вкусе |
| Вход | URL, заголовок, тезис, обложка, аудитория | чтобы не требовать от модели догадок |
| Выход | крючок, 1-2 абзаца, ссылка, без лишних меток | чтобы формат был стабильным |
| Запреты | не писать "читайте подробнее", не пересказывать SEO | чтобы не вылезал мусор |
| Проверка | длина, ясность, ссылка, один навык | чтобы ревью было повторяемым |
| История изменений | что изменили и почему | чтобы учиться, а не гадать |
Такой слой можно вести в файлах проекта, в базе промптов или в сервисе вроде Langfuse Prompt Management. Инструмент вторичен. Главное, чтобы промпт перестал быть разовой фразой и стал версионируемой частью процесса.
Где здесь человек
Человек не должен каждый раз переписывать промпт с нуля. Его роль сильнее: выбирать примеры, отмечать удачные варианты, фиксировать плохие случаи и решать, какой язык ближе к каналу. Это похоже на редакторскую работу с рубрикой. Сначала есть несколько вариантов голоса, потом появляется правило: где коротко, где можно ярче, где нужен спокойный тон, где нужна техническая точность.
Для Telegram это особенно заметно. Можно держать несколько языковых вариантов: короткий практический, аналитический, инсайдерский, учебный. Но они должны быть описаны не словами "пиши бодро", а примерами. Один хороший пост важнее десяти абстрактных прилагательных.
Рабочая карточка
Когда использовать: когда один и тот же тип текста, анализа или решения нужно получать регулярно.
Что подать на вход: исходный материал, цель, аудиторию, ограничения, примеры хорошего и плохого результата.
Что сделать по шагам:
- Назвать задачу промпта одним предложением.
- Описать входные поля, которые модель получает всегда.
- Задать ожидаемый формат ответа.
- Добавить 3-5 проверочных примеров.
- Зафиксировать критерии качества.
- Менять промпт только с номером версии и короткой причиной.
Какой результат получить: промпт, который можно запускать повторно и сравнивать по качеству.
Как проверить качество: взять старую и новую версию, прогнать одинаковые примеры и посмотреть, где стало лучше или хуже.
Когда не использовать: если задача уникальная, разовая и ее дешевле объяснить человеку в обычном чате.
Какой навык из этого собрать: навык управления языком ИИ-процесса. Человек перестает спорить с моделью по ощущениям и начинает обучать рабочий контур через версии, примеры и ревью.
Что делать дальше
Начните с одного промпта, который уже влияет на результат: пост для Telegram, заголовок статьи, краткое резюме источника или ревью текста. Вынесите его из чата в отдельную карточку, добавьте три примера и один критерий проверки. После этого каждое изменение будет уже не "попробовали по-другому", а маленьким обучением системы.
Для ONFF это особенно ценно рядом с темой навыков агентов. В статье про SkillOpt мы уже разбирали идею улучшения навыков без дообучения модели. Промпты устроены похожим образом: их можно улучшать не магией, а через задачи, ошибки, версии и проверку.