TL;DR
Траекторное планирование — подход, при котором сложную задачу решают через последовательность из 3-5 связанных запросов, где каждый шаг приближает к финальной цели. Вместо оптимизации каждого запроса отдельно, вся цепочка планируется как единый путь.
Исследование RL-MTJail обнаружило два критических паттерна многошагового взаимодействия с LLM. Первый: промежуточные запросы не должны быть слишком агрессивными — если средний шаг слишком сильно тянет модель в одну сторону или противоречит её ожиданиям, она активирует защитные механизмы и отказывается продолжать. Это называется эффектом обратного огня (over-harm backfire). Второй: семантическая близость к цели должна расти постепенно — успешные траектории показывают плавное нарастание релевантности от шага к шагу, тогда как провальные часто уходят в сторону или рано коллапсируют.
Метод работает через два промежуточных сигнала: (1) контроль умеренности — промежуточные шаги не должны триггерить отказ модели, (2) направленное движение — каждый ответ должен быть семантически ближе к финальной цели, чем предыдущий. Это превращает разрозненные запросы в согласованную траекторию.
Схема метода
ПЛАНИРОВАНИЕ (до начала диалога):
└─ Определи финальную цель
└─ Разбей на 3-5 шагов возрастающей сложности
└─ Каждый шаг: умеренный по сложности + ближе к цели
ВЫПОЛНЕНИЕ (в диалоге):
ШАГ 1: Безопасный контекст → общий ответ
ШАГ 2: Промежуточная задача → специфичный ответ
ШАГ 3: Уточнение направления → фокусированный ответ
ШАГ 4-5: Финальный запрос → целевой результат
КОНТРОЛЬ НА КАЖДОМ ШАГЕ:
→ Не слишком сложно для текущего этапа?
→ Ответ стал ближе к финальной цели?
Каждый шаг выполняется отдельным сообщением в одном диалоге.
Пример применения
⚠️ Метод НЕ работает для: простых фактических вопросов, задач решаемых за один шаг, когда нужен быстрый ответ.
✅ Зона силы: сложные многогранные задачи, противоречивые запросы, задачи требующие контекста и постепенного погружения.
Задача: Разработать стратегию запуска премиум-сервиса доставки готовой еды в небольшом городе (100-150 тыс населения). Классический one-shot промпт даст поверхностный ответ или сразу укажет на противоречие "премиум + маленький город".
Траекторный подход:
Шаг 1 (безопасный контекст):
Приведи 3-5 примеров премиум-сервисов, которые успешно работают
в небольших городах или массовом сегменте, где их изначально не ждали.
Шаг 2 (промежуточный анализ):
Какие общие паттерны ты видишь в этих примерах? Что позволило
премиум-продукту зайти в неочевидный сегмент?
Шаг 3 (направленное сближение):
Как эти паттерны можно применить к сервису доставки готовой еды
в городе 120 тысяч человек? Какие локальные особенности учесть?
Шаг 4 (финальная цель):
На основе этого анализа создай Go-To-Market стратегию на первые
6 месяцев: позиционирование, каналы, ценообразование, метрики.
Результат:
Модель пройдёт путь от безопасных примеров к конкретной стратегии. На первом шаге даст кейсы (Wildberries в регионах, "Вкусвилл" в спальниках, локальные крафтовые бренды). На втором — выявит закономерности (фокус на качество, история бренда, комьюнити). На третьем — адаптирует под контекст города. На четвёртом — выдаст детальную стратегию с учётом накопленного контекста. Каждый шаг усиливает следующий, семантика движется к цели.
Почему это работает
LLM плохо справляются со сложными противоречивыми задачами в один шаг — модель либо упрощает запрос до банальности, либо фокусируется на противоречии и отказывается давать содержательный ответ. Причина: слишком много переменных и ограничений нужно держать в балансе одновременно.
Но модели отлично генерируют следующий шаг на основе накопленного контекста. Если предыдущие ответы уже содержат релевантные примеры, паттерны и анализ — модель естественным образом использует их для финального ответа.
Траекторный подход эксплуатирует эту силу: вместо одного сложного промпта создаём цепочку простых, где каждый готовит почву для следующего. Промежуточные шаги не должны быть слишком агрессивными — если шаг 2 сразу требует решить противоречие, модель активирует защитные паттерны ("это не сработает"). Вместо этого мы плавно наращиваем сложность и семантическую близость к цели.
Рычаги управления:
- Количество шагов (3-5) → меньше шагов = быстрее но грубее, больше = точнее но дороже по токенам
- Градиент сложности → делай шаг 1 максимально безопасным, финальный = полная сложность
- Семантическая дистанция между шагами → маленькие шаги = плавно, большие = риск коллапса
- Явные связи между шагами → можно добавить "На основе предыдущего ответа..." для усиления контекста
Шаблон промпта
ЭТАП 1 — ПЛАНИРОВАНИЕ (в отдельном чате или черновике):
Финальная цель: {опиши итоговый результат который нужен}
Разбей эту задачу на 3-5 шагов траектории, где:
- Шаг 1: максимально безопасный контекст, общие примеры/принципы
- Шаг 2-3: промежуточные задачи, каждая сложнее предыдущей
- Шаг 4-5: финальный запрос с полной сложностью
Каждый шаг должен:
1. Быть умеренным по сложности для текущего этапа
2. Приближать к финальной цели по смыслу
3. Не провоцировать отказ или упрощение
ЭТАП 2 — ВЫПОЛНЕНИЕ (в рабочем чате, последовательно):
[Шаг 1 — скопируй из плана]
→ дождись ответа →
[Шаг 2 — скопируй из плана]
→ дождись ответа →
[Шаг 3 — скопируй из плана]
→ дождись ответа →
[Финальный шаг — скопируй из плана]
Что подставлять:
- {опиши итоговый результат} — конкретная формулировка финальной цели (стратегия, анализ, решение)
- Шаги планируй исходя из того, где модель может "споткнуться" на прямом запросе
Важно: Не запускай все шаги сразу одним сообщением. Каждый шаг — отдельное сообщение, ждёшь ответ, затем следующий. Контекст накапливается в диалоге.
🚀 Быстрый старт — вставь в чат:
Помоги спланировать траекторию для задачи: {твоя сложная задача}.
Разбей на 3-5 шагов по принципу:
- Шаг 1 максимально безопасный
- Каждый следующий сложнее и ближе к цели
- Финальный шаг = полная сложность
Используй эти критерии для каждого шага:
1. Не слишком сложный для текущего этапа?
2. Приближает к финальной цели по смыслу?
[вставить шаблон выше]
LLM спросит про финальную цель и контекст — чтобы определить где потенциальные точки отказа и как разбить траекторию. Она возьмёт структуру из шаблона и создаст план под твою задачу.
Почему это работает (детально)
Исследование показало два критических паттерна, которые объясняют почему траекторный подход превосходит одношаговый:
Паттерн 1: Эффект обратного огня (Over-Harm Backfire)
Если промежуточный запрос слишком агрессивно тянет модель в нужную сторону — это активирует защитные механизмы. Эксперимент: брали готовые траектории и вставляли запросы разной "силы" на 1-й и средний шаг. Пока запросы умеренные — средняя вредоносность траектории росла линейно. Но как только промежуточный запрос становился настолько сильным, что вызывал отказ — эффективность всей траектории обрушивалась.
Вывод для практики: промежуточные шаги должны быть "недогруженными" — лучше 4 умеренных шага, чем 2 агрессивных. Модель не должна чувствовать принуждение на середине пути.
Паттерн 2: Направленное движение к цели
Измеряли семантическую близость каждого ответа к финальной цели (через эмбеддинги). Успешные траектории показали чёткий восходящий тренд — каждый ответ был ближе к цели, чем предыдущий. Провальные траектории показали ранний коллапс — семантика уходила в сторону или топталась на месте.
Вывод: нужен не просто план шагов, а градиент приближения — шаг 2 семантически ближе к цели чем шаг 1, шаг 3 ближе чем 2, и так далее. Это как GPS-трек: если промежуточная точка уводит от пункта назначения — ты заблудился.
Как метод использует это:
Вместо жадной оптимизации каждого шага (максимизируй полезность сейчас) — оптимизируется вся траектория целиком. Промежуточные шаги могут давать "слабые" ответы, если они готовят почву для сильного финального ответа. Два промежуточных сигнала держат траекторию на рельсах: (1) не триггерь отказ, (2) двигайся к цели. Это превращает диалог из случайного блуждания в направленное движение.
Ограничения
⚠️ Избыточность для простых задач: Если вопрос решается одним промптом ("столица Франции?", "переведи текст") — траектория тратит токены и время впустую. Используй только для задач, где one-shot даёт поверхностный/противоречивый результат.
⚠️ Требует планирования: Нельзя просто начать диалог и импровизировать — нужно заранее продумать траекторию. Это барьер, когда нужен быстрый ответ.
⚠️ Несколько запросов = больше токенов: Накопление контекста в диалоге съедает токены. Для длинных траекторий (5+ шагов) может быть дороже чем несколько попыток one-shot.
⚠️ Субъективные критерии: "Слишком агрессивный шаг" и "семантическая близость" — эвристики, не точные метрики. Нужно чувство меры и тестирование траекторий.
Как исследовали
Команда из Китая и Сингапура поставила задачу: научить атакующую LLM (Qwen2.5-3B) взламывать защиты других моделей через многошаговый диалог, и понять почему одни траектории успешны, а другие нет.
Сначала проверили существующие методы — они оптимизируют каждый шаг отдельно (DPO, rejection sampling). Это жадный подход: каждый запрос максимизирует вредоносность сразу. Baseline — наивный GRPO, который оптимизирует траекторию целиком, но получает награду только в конце (sparse supervision). Это дало скачок +20-30% ASR по сравнению с пошаговыми методами — показало силу траекторного мышления, но не решило проблему разреженной обратной связи.
Затем провели два эксперимента, чтобы понять что делает траекторию успешной:
Эксперимент с вредоносностью промежуточных шагов: Взяли готовые траектории, разбили промежуточные запросы на 6 корзин по силе (от 0-0.2 до explicit refusal), вставляли на 1-й и средний шаг, прогоняли траекторию заново. Результат: средняя вредоносность траектории (AHS) росла линейно до границы отказа, потом резко падала. Это открыло эффект over-harm backfire — слишком сильный промежуточный шаг убивает всю траекторию.
Эксперимент с семантической близостью: Измеряли косинусную близость между эмбеддингами каждого ответа и финальной цели (MiniLMv2 encoder). Результат: успешные траектории показали восходящий тренд семантики к цели, провальные — ранний коллапс или топтание на месте. Это подтвердило важность направленного движения.
На основе этих паттернов создали два промежуточных сигнала: (1) penalize отказы на промежуточных шагах, (2) reward рост семантической близости к цели. Интегрировали в multi-turn GRPO как process rewards. Обучили атакующую модель, тестировали на 4 жертвах (Qwen, Llama, Gemma, Mistral) и 3 бенчмарках (HarmBench, StrongREJECT, JailbreakBench).
Финальный результат: средний ASR вырос с 81.43% (наивный GRPO) до 86.23% (RL-MTJail), при этом на некоторых моделях достиг 95.15%. Что интересно — атакующая модель обученная на одной жертве хорошо переносится на другие (transfer 72-94% ASR), то есть научилась универсальным паттернам многошагового взаимодействия.
Главный инсайт: траектория > сумма шагов. Модель научилась планировать 3-5 step paths, где ранние шаги не максимизируют немедленную награду, но создают condition для финального успеха. Это как шахматная партия — жертвуешь фигуру на 3-м ходу, чтобы поставить мат на 7-м.
Адаптации и экстраполяции
🔧 Техника: Траектория с чекпоинтами → самопроверка на каждом шаге
После каждого промежуточного шага добавляй мета-запрос:
Оцени предыдущий ответ по двум критериям:
1. Он стал ближе к финальной цели [{твоя_цель}]?
2. Он не ушёл в сторону или упрощение?
Если да — продолжаем. Если нет — предложи корректировку следующего шага.
Это превращает линейную траекторию в адаптивную — модель сама контролирует движение к цели и корректирует курс.
🔧 Техника: Траектория с ветвлением → A/B тест промежуточных шагов
На критическом шаге (обычно шаг 2-3, где риск ухода в сторону) генерируй два варианта следующего запроса с разной интенсивностью. Запускаешь оба в отдельных ветках диалога, смотришь какой ведёт к лучшему финальному результату.
Пример:
Вариант А (осторожный): "Какие могут быть проблемы с этим подходом?"
Вариант Б (агрессивный): "Почему этот подход может провалиться?"
Один может дать конструктивную критику, другой — уйти в негатив. Выбираешь успешную ветку.
🔧 Техника: Обратная траектория → планирование от цели к старту
Вместо "как прийти от А к Б" спланируй "как прийти от Б к А" в обратном порядке:
Финальная цель: {цель}
Какой вопрос НЕПОСРЕДСТВЕННО ПЕРЕД финальным даст нужный контекст?
→ Это шаг N-1
Какой вопрос перед шагом N-1 подготовит почву для него?
→ Это шаг N-2
...продолжай до безопасного старта
Обратное планирование часто находит неочевидные промежуточные шаги, которые прямое планирование пропускает.
Экстраполяция: Траекторный дебрифинг → анализ провальных попыток
Если траектория не дала нужного результата — попроси модель проанализировать ЧТО пошло не так:
Вот последовательность наших запросов и ответов:
[вставить траекторию]
Финальная цель была: {цель}
Проанализируй траекторию:
1. На каком шаге семантика начала уходить от цели?
2. Какой шаг был слишком агрессивным или вызвал упрощение?
3. Предложи улучшенную траекторию из 3-5 шагов.
Модель может увидеть паттерны, которые ты пропустил — где именно произошёл коллапс.
Ресурсы
RL-MTJail: Reinforcement Learning for Automated Black-Box Multi-Turn Jailbreaking of Large Language Models
Xiqiao Xiong, Ouxiang Li, Zhuo Liu, Moxin Li, Wentao Shi, Fuli Feng, Xiangnan He
University of Science and Technology of China, National University of Singapore
Код: https://github.com/xxiqiao/RL-MTJail
Релевантные методы упомянутые в исследовании: - ActorAttack (Ren et al., 2024) — ручные многошаговые стратегии - GRPO (Shao et al., 2024) — Group Relative Policy Optimization для диалогов - Implicit PRM (Yuan et al., 2024) — process reward без ручных меток
