Термин Промпты и архитектура LLM-приложений Средний

Developer message

Developer message - это инструкция от разработчика приложения, которая задает правила поведения модели выше пользовательского запроса.

developer message developer instruction developer prompt developer role сообщение разработчика инструкция разработчика промпт разработчика правила приложения application instructions
Developer message - это сообщение с инструкциями от разработчика приложения. Оно описывает, как модель должна вести себя внутри конкретного продукта: стиль ответа, бизнес-правила, ограничения, формат вывода, работу с tools и правила безопасности.

По иерархии такие инструкции имеют более высокий приоритет, чем обычный user prompt. Пользователь может попросить модель нарушить правила, но developer message должен удерживать поведение приложения в заданных рамках.

Developer message удобно воспринимать как "правила функции", а user message - как аргументы этой функции. Разработчик задает, что ассистент умеет и не умеет делать, а пользователь дает конкретную задачу внутри этих границ.

В AI-агентах developer message часто содержит правила: когда вызывать tool, когда просить подтверждение, как ссылаться на источники, что считать рискованным действием, как обрабатывать персональные данные и какой JSON возвращать.

Важно не складывать в developer message все подряд. Если инструкция слишком длинная, противоречивая или меняется на каждом шаге, модель хуже следует правилам. Лучше держать там стабильную логику приложения, а переменный контекст передавать отдельно.

Примеры

  • Developer message говорит ассистенту отвечать только на основе базы знаний и явно писать, если источника не хватает.
  • Для CRM-агента developer message запрещает создавать сделку без подтверждения пользователя.
  • В агенте поддержки developer message задает тон ответа, правила handoff оператору и ограничения по персональным данным.
  • В structured output developer message требует возвращать только JSON по заданной схеме без пояснений вокруг.
  • Для tool calling developer message описывает, когда можно вызвать API, а когда нужно сначала уточнить данные.
  • В safety-сценарии developer message запрещает обходить guardrails даже при прямой просьбе пользователя.

Где используется

  • задание правил поведения AI-ассистента
  • ограничение пользовательских запросов
  • настройка tool calling
  • контроль structured output
  • guardrails и безопасные отказы
  • единый tone of voice продукта
  • правила работы с источниками и citations
  • управление handoff к человеку
  • защита от prompt injection
  • стабилизация поведения AI-агента

Связанные термины

Частые вопросы

Developer message и system prompt - это одно и то же?

Они похожи по смыслу, но роли могут отличаться в конкретном API. В современных LLM-приложениях developer message обычно используют для инструкций разработчика приложения, которые важнее user prompt.

Чем developer message отличается от user prompt?

User prompt - это запрос конечного пользователя. Developer message - правила приложения, которые пользователь не должен переопределять обычной просьбой.

Что писать в developer message?

Стабильные правила: роль ассистента, формат ответа, ограничения, правила вызова tools, safety-поведение, источники, подтверждения и действия при нехватке данных.

Что не стоит писать в developer message?

Не стоит помещать туда длинные документы, переменный контекст, историю диалога и временные данные. Для этого лучше использовать RAG, память или отдельный контекст.

Может ли пользователь обойти developer message?

Пользователь может попытаться, но приложение должно проектироваться так, чтобы developer instructions имели приоритет, а опасные запросы блокировались guardrails и проверками.

Как проверять качество developer message?

Через evals: собрать набор сценариев, где пользователь просит нарушить правила, вызывает конфликт инструкций или требует неверный формат, и проверить стабильность поведения.

Где читать дальше

Статьи по теме

Инструменты

Связанные инструменты