Промт викинга: техника, шаблоны и примеры для задач, где важен план действия

Техника промптинга

Промт викинга — структура, которая заставляет модель думать стратегически

Не просто инструкция, а каркас: контекст → цель → ограничения → план проверки. Работает в любых LLM. Внутри — шаблоны, разбор ошибок и готовые примеры для копирования.

Чёткий алгоритм Универсальные шаблоны Разбор ловушек

Суть за 30 секунд

Промт викинга — это жёсткий скелет запроса из четырёх блоков. Модель не угадывает намерение, а выполняет роль стратега: сначала собирает контекст, потом фиксирует цель, накладывает ограничения и заканчивает планом самопроверки.

Формула: CONTEXT → GOAL → CONSTRAINTS → VERIFICATION. Каждый блок обязателен. Порядок не меняется.

Зачем это нужно: убирает «галлюцинации по умолчанию», заставляет модель выводить рассуждения явным текстом и даёт вам точку контроля перед финальным ответом.

Почему «Викинг»

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

От обычного промта

  • Нет неявных допущений — всё в контексте
  • Цель измерима, а не «сделай хорошо»
  • Ограничения превращают свободу в фокус
  • Верификация ловит ошибки до выдачи

Четыре столпа — что внутри каждого блока

1. CONTEXT — почва под ногами

Всё, что модель должна знать до старта: роль, входные данные, формат источника, предыстория, аудитория. Никаких «ты эксперт» — только факты.

ROLE: senior backend engineer INPUT: PostgreSQL 15, 50GB, 2000 req/s HISTORY: migration from MySQL failed on FK

2. GOAL — веха на горизонте

Конкретный, измеримый результат. Не «оптимизируй», а «снизь p95 до 120мс». Не «напиши письмо», а «черновик на 180 слов, тон — деловой, призыв — звонок в пятницу».

OUTPUT: migration checklist (md) METRICS: zero downtime, rollback < 5 min FORMAT: numbered steps, each with verify cmd

3. CONSTRAINTS — борта корабля

Жёсткие рамки: бюджет токенов, запрещённые библиотеки, тайминг, правовые требования, стилистические табу. Что модель НЕ должна делать — важнее, что должна.

FORBIDDEN: ORM, raw ALTER TABLE TOKEN_BUDGET: 3500 out / 1500 in COMPLIANCE: GDPR Art. 32, no PII in logs STYLE: no markdown, plain text only

4. VERIFICATION — контрольный ориентир

Чек-лист, который модель прогоняет сама перед ответом. Критерии приёмки, тестовые кейсы, red-flags. Если пункт не пройден — модель пишет, что не готова, и предлагает правку.

CHECK: — rollback script tested on staging — each step idempotent — no CREATE INDEX CONCURRENTLY missing — estimated downtime < 30 sec

Полный шаблон — копируй и адаптируй

# VIKING PROMPT TEMPLATE # ======================== ## CONTEXT ROLE: [роль + уровень сеньорности] DOMAIN: [область знаний] INPUT: [данные, форматы, объём, лимиты] HISTORY: [что уже пробовали, ошибки, контекст задачи] AUDIENCE: [кто будет читать/использовать результат] ## GOAL TARGET: [измеримый результат: метрика, формат, объём] DELIVERABLE: [что именно в ответе: код, чек-лист, текст, схема] SUCCESS_CRITERIA: [как понять, что цель достигнута] ## CONSTRAINTS HARD_FORBIDDEN: [абсолютные запреты] SOFT_AVOID: [нежелательно, но допустимо с обоснованием] RESOURCE_LIMITS: [токены, время, бюджет, инфраструктура] COMPLIANCE: [нормы, стандарты, политики] STYLE_GUIDE: [тон, форматирование, терминология] ## VERIFICATION PREFLIGHT_CHECKS: [что проверить ДО генерации ответа] POSTFLIGHT_CHECKS: [критерии приёмки СРАЗУ ПОСЛЕ] RED_FLAGS: [признаки галлюцинации / ошибки] FALLBACK: [что делать, если чек не пройден] ## EXECUTION THINK_STEP_BY_STEP: true SHOW_REASONING: true OUTPUT_ONLY_FINAL: false

Мини-версия для быстрых задач

Когда времени на полный шаблон нет — сжимаешь до четырёх строк. Работает хуже, но лучше обычного промта.

Context: [role + key facts in 1 sentence] Goal: [measurable target + format] Constraints: [top 3 hard limits] Verify: [2-3 acceptance checks]

Версия для командной работы

Добавляет блок ALIGNMENT — согласование с командой до запуска. Предотвращает «а я думал иначе».

# добавьте после GOAL ## ALIGNMENT STAKEHOLDERS: [роли, чьё мнение важно] APPROVAL_GATE: [кто подписывает результат] HANDOFF_FORMAT: [как передаём следующему этапу] ROLLBACK_PLAN: [если стейкхолдеры отвергли]

Готовые примеры — бери и меняй под себя

Код-ревью: безопасный рефакторинг
## CONTEXT ROLE: staff engineer, 10y exp, cleanup specialist INPUT: monorepo TS, 120k LOC, 40% test coverage HISTORY: last refactor broke prod — missing DI tokens AUDIENCE: 6 devs, review in 2 days ## GOAL TARGET: extract shared kernel (types, errors, utils) DELIVERABLE: PR series + migration guide (md) SUCCESS: zero breaking changes, tests pass, bundle -15% ## CONSTRAINTS HARD_FORBIDDEN: rename public API, change error codes SOFT_AVOID: touch config files, modify CI RESOURCE: 3 PRs max, each < 400 lines changed STYLE: conventional commits, no TODOs in code ## VERIFICATION PREFLIGHT: dep graph visualised, owners mapped POSTFLIGHT: typecheck, lint, unit+e2e green, size diff RED_FLAGS: any ‘any’, circular deps, version drift FALLBACK: revert last PR, escalate to tech lead
Контент: серия постов под лид-магнит
## CONTEXT ROLE: B2B content strategist, fintech niche INPUT: 3 whitepapers (PDF, 12-18p each), ICP: CFO 40+ HISTORY: last series 2.3% CTR, goal 4%+ AUDIENCE: LinkedIn, email nurture, 5 touchpoints ## GOAL TARGET: 5 LinkedIn posts + 5 emails (nurture chain) DELIVERABLE: content calendar + drafts in Notion SUCCESS: each post < 1300 chars, hook in line 1, CTA clear ## CONSTRAINTS HARD_FORBIDDEN: jargon without definition, «game-changer» SOFT_AVOID: emojis > 2/post, hashtags > 5 COMPLIANCE: no forward-looking statements, FINRA safe STYLE: problem → insight → proof → micro-CTA ## VERIFICATION PREFLIGHT: each claim traced to whitepaper page POSTFLIGHT: readability < grade 10, zero compliance flags RED_FLAGS: vague «experts say», missing source ref FALLBACK: rewrite flagged section, re-verify
Аналитика: root-cause инцидента
## CONTEXT ROLE: SRE, k8s 5y, observability stack: Prom/Graf/Loki INPUT: incident #3442: p99 latency 2.4s → 12s at 14:22 HISTORY: deploy v2.3.1 at 14:15, rollback at 14:35 AUDIENCE: postmortem doc for eng + management ## GOAL TARGET: root cause + 3 preventive actions (priority ranked) DELIVERABLE: structured markdown for Confluence SUCCESS: each action has owner, deadline, metric ## CONSTRAINTS HARD_FORBIDDEN: blame individuals, speculate beyond logs SOFT_AVOID: generic «improve monitoring» RESOURCE: use only existing dashboards, no new instrumentation COMPLIANCE: no customer data in output ## VERIFICATION PREFLIGHT: timeline reconstructed from 3 sources POSTFLIGHT: each action → specific ticket template RED_FLAGS: «human error» as root cause, no metric FALLBACK: mark as «insufficient data», request log access

Сборка своего промта — пошаговая дорожка

1

Собери контекст

Выпиши роль, входные данные, историю, аудиторию. Проверь: если передать это новичку в команде — он поймёт задачу?

2

Сформулируй цель

Одна фраза: что именно, в каком формате, по каким метрикам приёмка. Если не измеримо — цель не стоит.

3

Навесь ограничения

Минимум 3 hard-forbidden. Ресурсные лимиты. Соответствие нормам. Стиль. То, чего нет — важнее того, что есть.

4

Пропиши верификацию

Чек-лист самопроверки. Red-flags. Fallback-план. Модель должна написать: «Check failed: X» вместо плохого ответа.

5

Тестовый прогон

Запусти на упрощённых данных. Если модель пропускает блоки — жёстче пропиши SHOW_REASONING и формат вывода.

Ловушки, в которые впадают даже опытные

Миф

«Я напишу «ты эксперт» и модель станет умнее»

Реальность

Ролевая маска без контекста даёт общие фразы. Конкретика в CONTEXT работает в 10 раз сильнее любого «ты гений».

Миф

«VERIFICATION — лишние токены, модель и так проверит»

Реальность

Модель не проверяет сама себя, если не попросить явно. VERIFICATION — это триггер chain-of-thought. Без него — быстрый, но рискованный ответ.

Миф

«Чем больше CONSTRAINTS, тем лучше результат»

Реальность

Перегруз ограничений парализует: модель начинает играть в «угадай, что я не запретил». 5-7 жёстких правил — максимум. Остальное — в SOFT_AVOID.

Миф

«Промт викинга только для кода и техзадач»

Реальность

Структура универсальна: контент, аналитика, стратегия, обучение, дизайн-брифы. Везде, где есть риск «сделать не то» — викинг спасает.

Диагностика: твой промт — викинг или не очень?

Прогони последний промт по чек-листу. Каждый «нет» — точка роста.

  • Есть ли CONTEXT с конкретными фактами, а не эпитетами?
  • GOAL измерима и содержит формат доставки?
  • Есть минимум 3 HARD_FORBIDDEN в CONSTRAINTS?
  • VERIFICATION содержит red-flags и fallback?
  • Порядок блоков соблюдён строго?
  • SHOW_REASONING: true включён?
\

Когда промт викинга избыточен

  • Задача тривиальна: «переведи», «сократи», «исправь опечатки»
  • Ты исследуешь пространство, а не решаешь — нужен диалог, а не план
  • Контекст меняется быстрее, чем ты пишешь промт
  • Модель слабая (малый контекст, нет reasoning) — структура съест бюджет

В этих случаях — мини-версия (4 строки) или обычный итеративный чат.

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

Структура — единственное, что контролируешь. Остальное — вероятность.

Скопируй шаблон → заполни → запусти → проверь чек-листом