Почему один и тот же ChatGPT даёт разные ответы — в 6 раз?

Представьте смартфон. Внутри мощный чип Apple A18, но качество камеры зависит от стекла, матрицы, программы обработки. То же самое с LLM.

Исследователи из Стэнфорда заметили простую вещь: если вы меняете только harness (код вокруг модели) — без изменения самой модели — результаты меняются в 6 раз.

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

Если код вокруг модели важнее модели — кто его пишет?

Сейчас этим занимаются люди. Разработчики читают ошибки, крутят настройки вручную, пробуют разные варианты. Это медленно и дорого.

Авторы статьи спросили: а что если этот процесс автоматизировать? Что если ИИ-агент может писать и оптимизировать код для другого ИИ?

Так родилась Meta-Harness — система, которая перебирает варианты harness автоматически, как опытный инженер-оптимизатор.

Главное открытие: информация важнее объёма

Большинство существующих оптимизаторов текста (OPRO, TextGrad, AlphaEvolve) работают по принципу: возьми последний результат, сожми в краткое резюме, попроси модель улучшить.

Но это не работает для harness'а. Почему?

Потому что harness — это не просто текст. Это целая система с памятью, порядком операций, логикой извлечения данных. Если что-то сломалось на 10-м шаге, нужно понимать что произошло на шагах 1–9. Если сжать эту информацию в три предложения — теряется диагностика.

Meta-Harness делает по-другому. Она запоминает всю историю попыток — код, результаты, трассировки ошибок — и хранит на диске обычными файлами. Когда нужно придумать следующий вариант, система «читает» эту историю, как инженер, изучающий логи предыдущих проектов.

Это разница между «улучши это» и «вот тебе полное досье со всеми попытками — посмотри, что я уже пробовал».
Meta-Harness search loop
Как работает цикл. (1) Агент читает файловую систему со всеми прошлыми кандидатами, их кодом и оценками. (2) Предлагает новый harness. (3) Система оценивает его на тестовых задачах. (4) Логи сохраняются обратно — цикл повторяется.

Эксперимент №1: классификация текстов в реальном времени

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

Что проверили:

  • Старые методы (TTT-Discover, OpenEvolve) — требуют много контекста
  • Ручной baseline ACE — лучше, но не идеально
  • Meta-Harness — на 7,7 пункта выше ACE и при этом использует контекст в 4 раза меньше

Система перебрала варианты и нашла оптимальный способ хранить и показывать информацию, не перегружая модель. На 9 других OOD-датасетах найденная стратегия тоже сработала — это значит метод не overfits под один тест.

Точность vs итерации
Слева: Meta-Harness достигает точности OpenEvolve за 4 попытки против их 60. Справа: на TerminalBench-2 обгоняет все Claude Haiku 4.5 решения.

Эксперимент №2: математика олимпиадного уровня

Задача: решить 200 задач, достойных IMO (Международной математической олимпиады). Это самые сложные математические задачи для LLM.

Идея: дать модели возможность искать похожие задачи и их решения в большой базе из 500 000 решённых примеров. Эта техника называется RAG. Но какие примеры искать? В каком порядке? В какой форме показывать?

Meta-Harness автоматически открыла правильную retrieval-политику:

  • +4,7 пункта точности в среднем
  • Работает одинаково на 5 разных моделях (GPT-5.4-nano, GPT-5.4-mini, Gemini-3-Flash и др.) — это значит политика переносится, не вшита под одну модель
  • Найдена за несколько десятков попыток вместо месяцев ручного перебора
Результаты на математике IMO
Сравнение методов на 200 IMO-задачах: Meta-Harness даёт лучший средний результат и нигде не уступает baseline'ам.

Эксперимент №3: агенты-программисты

Задача: написать код для сложных задач из бенчмарка TerminalBench-2. ИИ-агент запускает команды в терминале, читает ошибки, переписывает код — как настоящий джуниор-разработчик.

Что оптимизировали: как показывать ошибки агенту, сколько истории помнить, какие инструменты предоставлять, как структурировать prompt.

Результат: на Claude Opus 4.6 — №2 место на лидерборде (76,4% pass rate). На Claude Haiku 4.5 — №1 среди всех агентов (37,6%). То есть Meta-Harness нашла harness, который автоматически лучше любого ручного решения, написанного людьми.

Как это работает изнутри?

Шаг 1. Хранилище всей истории

Когда система пробует новый harness, она сохраняет:

  • Исходный код самого harness'а
  • Оценки (точность, скорость, размер контекста)
  • Трассировки выполнения (что произошло в каждый момент)

Всё это лежит как обычные файлы на диске. Никакой магии.

Шаг 2. Умный агент-предложитель

Затем включается ИИ-агент, который:

  1. Читает историю — весь предыдущий код, все результаты, все ошибки
  2. Анализирует причины неудач — «почему это не сработало?»
  3. Предлагает конкретное изменение с объяснением

Например, агент может рассуждать так:

«На сложных задачах модель теряется в контексте. Предлагаю добавить снимок окружения перед первым вызовом модели. Это сэкономит 3–5 попыток на задачах с зависимостями, без риска сломать уже работающее».

Шаг 3. Проверка и повтор

Система запускает новый harness, оценивает, сохраняет результат — и цикл повторяется.

Ключевой момент: агент видит всю предыдущую работу, а не только «лучший результат». Это позволяет ему учиться на ошибках по-человечески.

Pareto frontier
«Точность vs контекст» — на Pareto frontier Meta-Harness одновременно точнее и компактнее любого ручного решения. То есть никакого компромисса нет — выигрыш по обеим осям.

Почему это по-другому, чем «улучши промпт»?

Современные prompt-оптимизаторы работают примерно так:

Возьми лучший результат → сожми обратную связь → попроси модель улучшить

Это масштабируется, но теряет диагностику. Для RAG и MCP-интеграций этого недостаточно.

Meta-Harness работает так:

Сохраняй ВСЮ историю → дай агенту читать код + результаты + трассировки →
попроси анализировать ПРИЧИНЫ (не оценки) → предложи целевое изменение

Результат: агент рассуждает причинно-следственно. «Это не сработало потому что…» — вместо «это плохо, сделай лучше».

Кому это нужно на практике?

Для AI-разработчиков

  • Автоматически оптимизировать процессы запуска и отладки агента
  • Настраивать scaffolding под конкретный проект
  • Улучшать способ, как агент видит ошибки

Для LLM-приложений (чат-боты, AI-консультанты, поиск)

  • Автоматически настраивать retrieval-политику для RAG
  • Оптимизировать форму, в которой информация попадает в модель
  • Управлять контекстным окном без потери качества

Для бизнеса

  • Вместо нанимать специалиста по harness engineering на полную ставку — запустить Meta-Harness
  • Снижение контекстного окна в 4 раза = экономия на API-токенах
  • Улучшение точности за несколько часов автоматизации, а не недель ручной работы

Интересные находки из экспериментов

1. Композиция независимых улучшений

Агент заметил, что разные исправления не мешают друг другу. Начал комбинировать: «Улучшение A решило проблему X, улучшение B решило проблему Y. Давай применим оба». Результат — лучше, чем каждое по отдельности.

2. Трансфер между экспериментами

В одном эксперименте система нашла стратегию (+18 пунктов), которую в другом запуске не удалось полностью реализовать. На 10-й итерации агент сам вспомнил: «Это было выигрышной стратегией раньше — попробую ещё раз с новой реализацией».

3. Отказ от опасных гипотез

На 5 итерациях подряд агент пробовал трогать промпты и логику confirmation flow'а. Каждый раз — регрессия. На итерации 7 он принял решение: «Перестаю трогать это. Буду только добавлять информацию». И это сработало.

Это не случайный поиск — это каузальное рассуждение.

TerminalBench-2 лидерборд
Лидерборд TerminalBench-2. Meta-Harness отмечена ✓ как «найдено автоматическим поиском». На Opus 4.6 — №2. На Haiku 4.5 — №1 среди всех агентов.

Ограничения (честно)

  1. Требует больше вычислений на поиск. Нужно несколько десятков попыток. Но если система потом работает месяцами в проде — это окупается.
  2. Зависит от качества оценки. Если критерий неправильный — система оптимизирует не то. (Эта проблема у всех методов оптимизации.)
  3. Работает лучше для логически структурированных harness'ей. Если код хаотичный — поиск идёт хуже.
  4. Новое направление. Боевых production-кейсов пока мало. Это academic-исследование, но воспроизводимое.

Главный вывод

Harness-инженерия — это не «тонкая настройка промптов». Это полноценная инженерная дисциплина, в которой код вокруг модели имеет значение не меньше, чем сама модель.

И главное открытие: если harness можно оптимизировать вручную, его можно оптимизировать и автоматически. Достаточно дать системе полную историю экспериментов и позволить ей рассуждать причинно.

Meta-Harness показывает: это работает. На текстах, на математике, на агентах. За несколько часов поиска система находит варианты, которые люди ищут неделями.

Для новичка в AI: вам не обязательно становиться экспертом по harness-инженерии. Достаточно понимать, что эта дисциплина существует — и что её всё больше будет автоматизировать сам ИИ.