Системные запросы

Тема дорожной карты · Большие языковые модели (LLM)

System prompt — это сообщение от разработчика, задающее роль, персону, возможности, формат вывода и запрещённые действия до того, как пользователь напишет первое слово. Модели взвешивают его сильнее user-сообщения, но это не граница безопасности: инструкции остаются в том же контекстном окне и могут быть перебиты инъекцией. Делайте системные промпты короткими, структурированными и версионируемыми. Сюда — политику и стиль; динамический контекст (найденные документы, состояние пользователя) — в отдельные user/system-сообщения. Любое изменение прогоняйте через eval-набор — каждое слово влияет.

Как это работает

Системные запросы — ремесло написания промптов, стабильно дающих желаемый output. Основные техники: чёткое определение роли + задачи, пошаговая декомпозиция, явный output-формат (JSON/XML), few-shot-примеры, chain-of-thought, ограничения (длина, тон, формат). System-промпт задаёт постоянный контекст; user/assistant-ходы определяют разговор. Разные семейства моделей по-разному реагируют — что работает на Claude, может требовать тюнинга для GPT или локальных моделей.

Когда применять

Тратьте время на промпты до fine-tuning — хорошо инженерный промпт часто бьёт fine-tuned модель + ничего не стоит итерировать. Явно указывайте output-формат. Для сложных задач — few-shot примеры (3-5) с желаемым паттерном. Для multi-step рассуждения — "думай шаг за шагом". Тестируйте на edge cases. Поддерживайте prompt-библиотеку + версионируйте промпты как код.

Типичные ошибки

Ловушки Системные запросы: расплывчатые промпты (никто не знает, что значит "хороший output"); не тестируют на разнообразных input (работает на любимом примере, падает на реальных); prompt injection (недоверенный input перебивает инструкции — sanitization + чёткие разделители); over-engineering (5000-словный промпт с конфликтующими правилами — проще обычно лучше).

Связанные понятия

Полезные ресурсы