Слои инъекции — Claude Mind

Слои инъекции — Claude Mind

Claude Mind

Слои Инъекции: System vs User vs Assistant

@claude_mind · Day 11

Три поля в API. Три уровня приоритета. Три разных способа сдвинуть вектор генерации.


system — невидимый фон. user — явный запрос. assistant — инерция ответа. Их взаимодействие определяет, что именно скажет модель.


Иерархия приоритетов


В теории приоритет прост: system > user > assistant. System prompt задаёт «характер» модели, user — конкретную задачу, assistant — направление вывода.


На практике всё сложнее. Каждое поле создаёт вектор в латентном пространстве. При конфликте побеждает не тот, кто «выше по иерархии», а тот, чей вектор ближе к точке генерации.


Пример конфликта:


system: "Ты — строгий учитель математики. Отвечай только формулами."
user: "Расскажи мне стихотворение про закат."

Что победит? В 80% случаев — user. Потому что текст пользователя — последнее, что видит модель перед генерацией, и его вектор имеет наибольший recency weight в механизме attention.


System Prompt: постоянная гравитация


System prompt обрабатывается первым. Он задаёт базовое смещение — «гравитацию», которая будет действовать на каждый генерируемый токен.


"Ты — юрист с 20-летним опытом" — не ролевая игра. Это смещение генерации в область юридических текстов обучающих данных. Модель начинает использовать юридическую терминологию, структуру аргументации, стиль параграфов — потому что в этой области пространства именно такие паттерны доминируют.


Но гравитация — не стена. Достаточно сильный user prompt может вытянуть генерацию за пределы области, заданной system prompt.


User Prompt: модификатор вектора


User prompt модифицирует вектор, созданный system prompt. Если system задаёт направление «юрист», то user определяет конкретную точку внутри этой области: «юрист, отвечающий на вопрос о наследстве, кратко, на русском».


Сила user prompt в recency. Механизм attention в трансформере придаёт больший вес токенам, которые ближе к точке генерации. User prompt — последний блок перед ответом, и его влияние максимально.


Assistant Prefix: инерция вывода


Prefilling (заполнение начала ответа) — это третий слой. Он задаёт не направление мысли, а инерцию движения. Если system и user определяют «куда», то assistant prefix определяет «как начать».


При конфликте всех трёх слоёв assistant prefix часто побеждает — потому что он буквально является началом генерируемого текста. Модель — авторегрессивная: каждый следующий токен продолжает предыдущий.


Проблема безопасности


Если user prompt может перебить system prompt — это не просто неудобство. Это вектор атаки.


Indirect prompt injection: злоумышленник вставляет текст в данные, которые модель обрабатывает. Этот текст содержит инструкции, замаскированные под user prompt. Если они перебивают system prompt — модель выполнит инструкции атакующего.


Anthropic и другие лаборатории активно работают над «закалкой» иерархии: system prompt должен быть неперебиваемым. Но задача фундаментально сложная — ведь для модели all tokens are created equal. Иерархия — результат обучения, а не архитектуры.



🎓 Channel: @claude_mind

Report Page