SYNAPSE
EN
Разборы

Rivermark: как устроен бенчмарк агентной обвязки для соцсетей и полиграфии

29 октября 2026 года на Reddit описали самодельную агентную обвязку Rivermark и бенчмарк из 112 запросов на социальную и печатную графику. Разбираем механику теста, три класса входных данных и почему в сравнении Claude Code + Sonnet 5.5 с DeepSeek и GLM Flash пока нет ни одного числа.

Rivermark: как устроен бенчмарк агентной обвязки для соцсетей и полиграфии

29 октября 2026 года на Reddit появился пост о Rivermark — самодельной агентной обвязке для социальной, маркетинговой и печатной графики. Автор собрал бенчмарк из 112 запросов и сравнил на нём связку Claude Code + Sonnet 5.5 с моделями DeepSeek и GLM Flash. Ниже — что именно проверялось и каких данных в посте не хватает.

Что такое агентная обвязка и что она делает за модель

Агентная обвязка (harness — слой кода вокруг модели, который решает, какой инструмент вызвать, в каком порядке и что делать с результатом) не является моделью. Модель выдаёт текст или картинку. Обвязка держит цикл: разобрать запрос, собрать контекст, вызвать инструмент, проверить вывод, повторить при ошибке.

Пример из темы. Запрос: «нужен квадратный баннер под ленту, брендкит во вложении». Брендкит — файл с логотипом, шрифтами, палитрой и правилами использования. Модель сама по себе напишет текст и, возможно, опишет композицию. Обвязка должна прочитать брендкит, подставить цвета из него, выбрать шаблон, отрендерить макет, проверить, что логотип не обрезан и не растянут, и вернуть файл. Без обвязки этот шаг делать некому.

Второй пример: правка. Клиент просит «сделать логотип крупнее и убрать жёлтый». Модель без инструментов ответит текстом «готово». Обвязка должна реально открыть предыдущий файл, изменить слой и вернуть новую версию, а не описание новой версии.

Почему соцсети и полиграфия даются моделям хуже, чем сайты и приложения

У веб-дизайна есть встроенная обратная связь. Код можно отрендерить, снять скриншот, сравнить с макетом. Модель видит результат своей работы в пиксельном виде и может исправиться в следующей итерации.

Почему соцсети и полиграфия даются моделям хуже, чем сайты и приложения

У печати обратная связь дороже. Нужны вылеты под обрез (bleed — запас за границей макета, который срезает типография), CMYK (субтрактивная цветовая модель для печати, в отличие от RGB для экранов) и разрешение в dpi. Ошибку видно только после печати тиража.

Пример. Модель ставит строку близко к краю листовки. На экране это выглядит нормально. После обрезки строка уезжает или теряет часть букв. Обвязка обязана знать про bleed из правил, а не догадываться по картинке. Как Rivermark проверяет эти параметры, в доступной части поста не сказано — данных нет.

Как устроен набор из 112 запросов

Автор делит входы на три класса. Первый — есть полноценный брендкит. Второй — есть только ссылка на сайт бренда. Третий — запрос с нуля, без брендкита и без ссылки.

Второй класс методически самый интересный. Извлечь палитру и типографику с живого сайта — отдельная задача: нужно достать CSS, найти доминирующие цвета, определить шрифтовые пары, отбросить служебные элементы. Качество этого шага можно мерить отдельно от качества макета, и тогда провал на выходе не смешивается с провалом на входе.

Третий класс проверяет другое — сколько обвязка додумывает сама. Когда брендкита нет, любая палитра будет решением рантайма, а не бренда.

Как считались баллы, по какой рубрике и кто оценивал макеты, в посте не указано — данных нет. Это ключевая дыра: без рубрики 112 запросов превращаются в 112 субъективных мнений.

Как устроен набор из 112 запросов

Сравнение Claude Code + Sonnet 5.5 с DeepSeek и GLM Flash: что известно и чего нет

Известно, что связка Claude Code + Sonnet 5.5 взята как референс, с которым сравнивают остальных. Claude Code здесь — не модель, а инструмент запуска агента поверх модели; Sonnet 5.5 — сама модель. DeepSeek и GLM Flash — другие модели для того же цикла. «Flash» в названии обычно означает облегчённый вариант с акцентом на скорость и цену.

Чего в посте нет: ни одного числа. Ни по доле пригодных макетов, ни по стоимости одного запроса, ни по времени до готового результата. Нет и разброса между прогонами — а он важен, потому что одна и та же модель на одном и том же запросе выдаёт разные результаты.

Что можно сказать по устройству теста: 112 запросов, один автор, одна предметная область, три класса входов. Такой набор годится, чтобы принять внутреннее решение «чем гонять пайплайн». Его не хватает, чтобы утверждать «модель X лучше модели Y» в общем случае.

Что с этим делать

  • Собрать свой набор из нескольких десятков запросов, взятых из реальной очереди, а не придуманных под тест.
  • Зафиксировать рубрику оценки до запуска: что считается пригодным макетом, что — браком, кто судит.
  • Разделить оценку на этапы: извлечение бренда, композиция, текст, технические требования. Иначе непонятно, где именно просела модель.
  • Проверять техтребования отдельным автотестом: вылеты, цветовое пространство, разрешение, отступы от края. Это дешевле, чем смотреть на картинку глазами.
  • Считать цену и время на один принятый макет, а не на один запрос. Обвязка с дешёвой моделью и тремя перезапусками может выйти дороже.
↗ Первоисточник: reddit.com