Почему ваша нейросеть тупит в очевидных задачах
Вы когда-нибудь замечали, что даже самые продвинутые LLM иногда проваливают элементарные задачи? Запрос "сколько будет 2+2" может вызвать у модели экзистенциальный кризис, а ответ на простой вопрос "Как называется столица Франции?" превращается в философский трактат о природе государственности.
Исследователи из DeepSeek не просто заметили этот феномен - они его измерили, проанализировали и нашли решение, которое выглядит настолько простым, что его можно принять за шутку. Но результаты - не шутка: до 30% прироста точности на тестах типа MMLU, HellaSwag и TruthfulQA для не-рассуждающих моделей.
Не-рассуждающие модели - это LLM, которые не используют цепочек рассуждений (chain-of-thought) для генерации ответов. Они просто выдают результат, основываясь на паттернах в данных. Большинство моделей в production работают именно так.
Что такое "повторение промпта" и почему это работает
Всё гениальное просто. Техника, описанная в исследовании arXiv:2512.14982, сводится к одному: повторить исходный промпт перед вопросом.
Звучит как магия? Это не магия, а механика внимания. Когда LLM обрабатывает длинный контекст, критически важная информация (ваш вопрос) может "потеряться" среди других токенов. Повторение создает дополнительный сигнал, который помогает модели сфокусироваться.
Представьте, что вы читаете сложный технический документ, а в конце вас спрашивают о детали из середины текста. Если перед вопросом кратко пересказать контекст - ответить становится проще. Нейросети работают похожим образом.
Плохой промпт vs Хороший промпт
Вот как это выглядит на практике. Допустим, вам нужно проверить факты в длинном тексте:
✗ Как НЕ надо делать
Текст: "Илон Маск родился в 1971 году в Претории, Южная Африка. Он основал SpaceX в 2002 году..."
Вопрос: В каком году родился Илон Маск?
Модель может "проскочить" мимо ключевой информации, особенно если текст длинный или сложный. Особенно страдают от этой проблемы модели, подверженные эффекту "потери в середине".
✓ Как сделать правильно
Текст: "Илон Маск родился в 1971 году в Претории, Южная Африка. Он основал SpaceX в 2002 году..."
Повторение контекста: Информация о годе рождения Илона Маска содержится в тексте.
Вопрос: В каком году родился Илон Маск?
Разница в три строки, но результаты - как между любительской и профессиональной фотографией. Модель получает четкий сигнал: "Эй, внимание! Вот что важно!".
Готовый шаблон промпта с повторением
Вот универсальный шаблон, который можно адаптировать под любую задачу. Просто заполните переменные в фигурных скобках:
Исходный контекст или данные:
{ваши_данные_здесь}
Повторение ключевых аспектов контекста:
{краткое_повторение_важных_деталей}
Задача или вопрос:
{ваш_вопрос_или_задача}
Примеры из реальной жизни
Пример 1: Анализ кода
Допустим, вы используете локальную LLM для ревью кода:
Код функции:
def calculate_discount(price, is_premium):
if is_premium:
return price * 0.8
else:
return price
Повторение контекста: Функция calculate_discount принимает цену и флаг is_premium. Для премиум-пользователей применяется скидка 20%.
Вопрос: Какая ошибка есть в этой функции?
Пример 2: Проверка фактов
Если вы боретесь с галлюцинациями LLM:
Текст статьи: "Квантовые компьютеры используют кубиты вместо битов. Кубит может находиться в состоянии 0, 1 или суперпозиции обоих состояний одновременно."
Повторение контекста: В тексте говорится о кубитах в квантовых компьютерах и их способности находиться в суперпозиции.
Вопрос: Может ли кубит находиться только в состоянии 0 или 1?
Когда эта техника особенно полезна
- Длинные контексты - когда ваш промпт занимает больше 1000 токенов
- Технические задачи - анализ кода, математические вычисления, научные вопросы
- Факт-чекинг - проверка информации в текстах
- Мультимодальные задачи - когда нужно связать текст с изображением или данными
- Слабые модели - маленькие LLM, которые хуже справляются с длинным контекстом
Техника работает и с большими моделями вроде DeepSeek, и с маленькими локальными LLM. Эффект особенно заметен на моделях до 30B параметров.
Ограничения и нюансы
Как и любой инструмент, повторение промпта - не панацея. Вот что нужно учитывать:
| Ситуация | Эффективность | Почему |
|---|---|---|
| Короткие простые промпты | Низкая | Модель и так всё видит |
| Творческие задачи | Средняя | Ограничивает креативность |
| Сложные логические цепочки | Высокая | Помогает удержать фокус |
| Модели с CoT | Умеренная | Они и так "думают" вслух |
Не переусердствуйте с повторением. Если ваш "повтор" станет длиннее оригинала - вы просто создадите дополнительный шум. Идеальное повторение - 10-20% от длины исходного контекста.
Как интегрировать в свои проекты
Если вы разрабатываете приложения с использованием LLM API, добавьте эту технику в пайплайн предобработки промптов. Особенно если вы работаете с DeepSeek или другими локальными моделями.
Вот простой Python-скрипт для автоматизации:
def add_prompt_repetition(context, question):
"""Добавляет повторение контекста перед вопросом"""
# Извлекаем ключевые сущности или факты из контекста
summary = extract_key_points(context)
# Формируем финальный промпт
prompt = f"""{context}
Повторение контекста: {summary}
Вопрос: {question}"""
return prompt
Что дальше? Будущее простых хаков
Исследование DeepSeek показывает интересный тренд: самые эффективные техники промпт-инжиниринга часто оказываются самыми простыми. Вместо сложных многошаговых промптов с десятками инструкций - пара дополнительных строк, которые меняют всё.
Это напоминает ситуацию с техникой DroPE, которая тоже выглядела как простой хак, но дала впечатляющие результаты.
Возможно, следующий прорыв в промпт-инжиниринге будет таким же простым: изменить порядок слов, добавить пробел в определенном месте, повторить ключевое слово. Нейросети - сложные системы, но иногда они реагируют на удивительно простые сигналы.
Попробуйте технику повторения промпта сегодня. Не ждите, пока она станет стандартом - станьте тем, кто устанавливает стандарты.