Negative Constraints & Anti-Pattern Prompts(Негативні обмеження та антипатерни в промптингу)
Методологія формулювання заборон та явного виключення небажаних інженерних патернів (Anti-Goals) у системних інструкціях для запобігання шаблонному та надлишковому коду (AI Slop).
1. Огляд концепції та системна проблема
Мовні моделі навчалися на трильйонах рядків різноманітного інтернет-коду. Через це за замовчуванням вони схильні використовувати так званий "найбільш усереднений стиль" (The Mediocre Average):
- Модель бачить тривіальну математичну операцію і миттєво додає
import _ from 'lodash'у файл, роздуваючи бандл. - Модель зустрічає складний TypeScript тип і ставить
// @ts-ignoreабоas any, щоб швидше завершити генерацію. - Модель генерує застарілі та надлишкові коментарі на кшталт
// Ця функція додає два числа.
Negative Constraints (Негативні обмеження) — це інженерний фільтр, що закриває моделі доступ до шкідливих звичок і змушує її рухатися виключно вузьким коридором чистої архітектури.
2. Архітектурна таксономія та ментальна модель
┌─────────────────────────────────────────────────────────────┐
│ NEGATIVE CONSTRAINTS MATRIX │
├─────────────────────────────────────────────────────────────┤
│ 1. DEPENDENCY HYGIENE: │
│ • NEVER run `npm install <package>` without asking. │
│ • DO NOT import deprecated libraries (Axios, Lodash). │
│ • Use native browser `fetch` and ES6 methods ONLY. │
├─────────────────────────────────────────────────────────────┤
│ 2. CODE QUALITY INVARIANTS: │
│ • BANNED: `any`, `unknown` without type guards. │
│ • BANNED: `console.log` in production-facing code. │
│ • BANNED: Commenting obvious self-explanatory lines. │
├─────────────────────────────────────────────────────────────┤
│ 3. UI / DESIGN SYSTEM RULES: │
│ • NEVER invent custom HEX colors (#ff4422). │
│ • USE predefined Tailwind semantic tokens ONLY. │
│ • NEVER hardcode strings; use i18n translation keys. │
└─────────────────────────────────────────────────────────────┘
3. Практичні інженерні сценарії в продакшені
01. Захист від лінивих заглушок (Anti-Placeholder Rule)
У правилах фіксується суворе покарання:
CRITICAL INSTRUCTION:
Do NOT output placeholders like `// ...existing code...` or `/* rest of implementation */`.
Always provide the FULL drop-in replacement. Truncated outputs are considered system failure.
Це на 100% викорінює звичку моделей лінуватися на великих файлах.
02. Заборона на створення нових файлів без узгодження
Агенти часто мають схильність "множити сутності": створювати 5 дрібних утилітарних файлів для одного рядка коду. Правило: "DO NOT create new utility files unless explicitly specified in the RFC" тримає структуру папок компактною.
4. Підводні камені, типові помилки та безпека
- Сліпе заперечення без альтернативи: Якщо просто написати "Не використовуй React Router", але не сказати, що проект працює на Next.js App Router, модель розгубиться і почне вигадувати саморобні хендлери навігації. Завжди вказуйте, що робити замість забороненого.
- Роздмухування списку заборон: Якщо в системному промпті 200 правил "НЕ", модель почне відчувати параліч дій (Refusal Loop), відмовляючись відповідати навіть на безпечні промпти.
5. Стратегічний висновок для інженера 2026 року
Негативний промптинг — це інструмент встановлення чітких червоних ліній. Дисципліна явних заборон відсікає 80% випадків генерації синтетичного сміття (AI Slop), підтримуючи високу культуру кодової бази проєкту.
FAQ: Negative Constraints & Anti-Pattern Prompts
Пов'язані терміни
Agent Rules (.cursorrules / CLAUDE.md / AGENTS.md)
Машинозчитувані файли архітектурних регламентів та обмежень у репозиторії, які автоматично монтуються в системний контекст ШІ-агентів для запобігання деградації кодової бази.
Системний промпт (System Instructions & Metaprompting)
Пріоритетний метаконтекстний блок інструкцій, що передається на нульовій позиції контекстного вікна і визначає роль, правила безпеки, доступні інструменти та межі поведінки агента.
AI Slop (ШІ-шлак та засмічення кодової бази)
Системний феномен деградації кодової бази внаслідок масового додавання низькоякісного, багатослівного, надлишково ускладненого або дубльованого коду, згенерованого мовними моделями без архітектурного нагляду.
Промпт-інжиніринг (Context Architecture & Prompt Engineering)
Інженерна дисципліна структурування системних директив, XML-розмітки, семантичних делімітерів та прикладів для досягнення детермінованих, передбачуваних результатів від імовірнісних моделей.