3,583 papers
arXiv:2610.33929 71 24 окт. 2026 г. FREE

WebViSE (Visual Skills): дизайн-приёмы, вытащенные из реальных сайтов, чтобы модель делала страницы выразительнее

КЛЮЧЕВАЯ СУТЬ
Просишь у модели сайт и получаешь усреднённую страницу: те же блоки, те же цвета. Метод WebViSE позволяет получать сайты с выразительными приёмами, которые ты не умеешь описать словами: анимацию заголовка при прокрутке, раскрывающиеся этапы, карточки у меток на карте. Фишка: не проси красиво, а дай модели карточку приёма с готовым механизмом. Она не изобретает, а воспроизводит описанное. Результат: +3,25 пункта функциональности у Claude Opus 5, и страницы заметно отличаются от «общего шаблона».
Адаптировать под запрос
⚡

TL;DR

WebViSE — это способ превратить готовые сайты в библиотеку «визуальных навыков» (Visual Skills): короткие документы, каждый из которых описывает один механизм — например, анимацию героя при прокрутке или раскрывающиеся карточки возле маркеров на карте — вместе с условиями, когда он уместен. Перед генерацией сайта к вашему запросу добавляют 3–4 подходящих навыка, и модель пишет страницу уже с этими приёмами.

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

Метод в три шага: (1) из исходного кода и поведения каждого сайта вытаскивают механизм и записывают навык без привязки к бренду и контенту; (2) навыки раскладывают по каталогу, где у одного навыка может быть несколько «родителей», и каталог сам правят на пробных запросах; (3) к вашему запросу подбирают подходящие навыки, проверяют, что они действительно применимы, и дают модели вместе с исходной задачей.


🔬

Схема метода

ШАГ 1 ИЗВЛЕЧЕНИЕ: сайт → «цель» (зачем он нужен) + «поведение» (что видит и делает пользователь) → кандидаты → навык по коду (механизм без бренда и контента)
ШАГ 2 КАТАЛОГ: навыки → категории (навык может лежать в нескольких) → правка описаний и структуры по пробным запросам
ШАГ 3 ПОДБОР: запрос → обход по ветвям каталога → ревью применимости (отбросить неподходящее, оставить топ-K, в среднем 4)
ШАГ 4 ГЕНЕРАЦИЯ: исходный запрос + выбранные навыки → сайт

Шаги 1–3 в статье выполняет код и модель-ревьюер; шаг 4 — один обычный запрос.


🚀

Пример применения

Задача: Антон запускает лендинг онлайн-курса «Как продавать на Wildberries с нуля». Агентство просит 200 тысяч рублей, поэтому он просит Claude Code собрать страницу сам, но пробные варианты выглядят как все остальные.

Промпт:

Сделай одностраничный сайт курса «Как продавать на Wildberries с нуля»: герой-блок, программа курса, отзывы выпускников, тарифы, форма заявки.

Используй только эти приёмы (по одному на блок, не смешивай их друг с другом без нужды):

Приём 1. Герой при прокрутке.
Когда применять: открывающий блок, где нужно показать путь «от нуля до первых продаж».
Механизм: при прокрутке большой заголовок уменьшается и уходит в шапку, а на его месте плавно появляется лента из шагов пути; прокрутка управляет состоянием, а не просто двигает блоки.
Не переносить из исходника: названия, тексты, картинки, бренд.

Приём 2. Программа по этапам.
Когда применять: блок «Программа курса», когда в нём больше пяти модулей.
Механизм: хронологическая лента; каждый этап раскрывается по клику и показывает подробности (темы, результат, длительность), остальные сворачиваются.
Не переносить из исходника: названия, тексты, картинки, бренд.

Если приём не подходит блоку, пропусти его и напиши, почему. Текст и цифры бери только из моего описания курса: {описание_курса}.

Результат: модель соберёт страницу с анимированным открывающим блоком и интерактивной программой вместо статичного списка. В ответе она отметит блоки, где приём применён, и блоки, где его пропустила, и объяснит почему. Дизайн получится более выраженным, чем при запросе «сделай красивый лендинг», но качество исполнения зависит от модели: слабая модель может реализовать приём частично.


🧠

Почему это работает

Слабость модели. Если в запросе нет конкретных визуальных требований, модель выбирает самое привычное решение. Общие правила дизайна («соблюдай иерархию, контраст, отступы») сильная модель и так знает: в тесте они почти ничего не добавили, а на Claude Opus 5 даже ухудшили часть показателей.

Сильная сторона модели. Если дать ей точное описание механизма (что происходит при прокрутке, какие объекты меняются, какая обратная связь), она хорошо воспроизводит его в коде. Ей не нужно изобретать: нужно реализовать.

Как метод использует это. Вместо советов «как красиво» он даёт механизм + условия применимости, очищенный от чужого контента. Рычаги управления: - Число навыков: в среднем 4. Больше — риск конфликтов в стиле; на модели с сильным собственным вкусом (в тесте это Kimi K3) эстетика даже просела. - Ревью применимости: отсеивает навыки, механизм которых не поддерживает нужный результат. Это защита от главной ловушки. - Условия «когда применять»: превращают приём из украшения в решение под конкретный блок. - Что не переносить: названия, бренд, тексты, картинки источника.

Главное предупреждение: случайные, неподходящие навыки вредят. Четыре случайных навыка снизили точность на тесте функциональности на 6 пунктов у Claude Opus 5, а динамику в MiniAppBench на 13. Подбор важнее самой библиотеки.


📋

Шаблон промпта

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

1. Превратить понравившийся сайт в навык (отдельный запрос, нужен исходный код страницы):

Ниже HTML/CSS/JS страницы {адрес_или_код}. Выдели из неё до трёх отдельных визуальных или интерактивных механизмов и для каждого запиши навык в формате:

Название: {короткое название механизма}
Где применять: {для какого блока и какой цели страницы}
Что видит и делает пользователь: {наблюдаемое поведение, входы и обратная связь}
Механизм реализации: {как это устроено: какие объекты, какие состояния и переходы, чем запускается}
Что нельзя переносить: {бренд, тексты, изображения, конкретная раскладка источника}
Когда не подходит: {условия, при которых приём вредит}

Опиши механизм, а не внешний вид, чтобы его можно было применить на странице другой тематики.

2. Применить навыки к новой странице:

Задача: {задача_по_сайту}

Подходящие навыки (отбери из списка только те, механизм которых помогает именно этой задаче, и отбрось остальные; максимум {число_4}):
{список_навыков}

Сначала напиши, какие навыки выбраны, для каких блоков и почему остальные отброшены. Затем сделай страницу. Контент бери только из задачи.

Подставляйте: {задача_по_сайту} — описание вашего сайта, {список_навыков} — навыки из шага 1 (свои или из репозитория авторов), {число_4} — сколько навыков допустить (в статье в среднем 4).

🚀 Быстрый старт — вставь в чат:

Вот шаблон «визуальных навыков» (Visual Skills) для генерации сайтов. Адаптируй под мою задачу: [твоя задача по сайту].
Задавай вопросы, чтобы заполнить поля.

[вставить шаблон выше]

LLM спросит, какие блоки нужны, кто аудитория и какие сайты вам нравятся — потому что навык привязывается к блоку и цели страницы, а не к «красоте вообще». Она возьмёт структуру навыка из шаблона и соберёт для вашей задачи свой набор.


⚠️

Ограничения

⚠️ Прирост небольшой: на готовых наборах тестов улучшения измеряются единицами пунктов (у Claude Opus 5 +3,25 по точности функциональности, на эстетике около +1). Это не «сайт в разы лучше».

⚠️ Вредит при несовпадении: случайные навыки заметно портят результат. Если подбор плохой, лучше не подсовывать навыки вовсе.

⚠️ Неравномерно по моделям: у части моделей точность функциональности упала, у Kimi K3 эстетика просела. Сильная собственная манера модели конфликтует с чужими приёмами.

⚠️ Слабой модели трудно реализовать сложный приём: маленькая модель лучше выигрывает от общих правил, чем от узких механизмов.

⚠️ Полный метод — это инженерия: извлечение, каталог из многих «родителей», самоисправление по пробным запросам и дообучение требуют кода и обучения моделей. Читатель в чате воспроизведёт только последний шаг: взять готовые навыки и дать их модели.


🔍

Как исследовали

Авторы начали с простого вопроса: переносится ли механизм с чужого сайта на новую задачу? Взяли одну и ту же инструкцию про сайт чемпионата мира и сравнили три варианта: без навыков, с популярным набором общих дизайн-правил, с навыками из реальных сайтов. Первые два дали похожие страницы, третий добавил переход героя при прокрутке, которого в инструкции не было. Это и стало отправной точкой.

Дальше собрали 864 навыка с 850 публичных сайтов и проверяли систему на трёх наборах задач: функциональность сайтов (101 инструкция), открытые HTML-приложения (100 заданий) и 844 задачи с оценкой функциональности и эстетики. Сравнивали «как было» и «как стало» на семи моделях: от открытой модели на 27 млрд параметров до закрытых. Результат вырос по большинству показателей и стал лучшим в шести из семи метрик; у двух моделей (GPT-5.6-Sol и Qwen3.8-27B) вырос каждый показатель, у других были и небольшие падения. Слепое сравнение людьми тоже предпочло версию с навыками для каждой модели с отрывом 12–34 процентных пункта.

Любопытная деталь: общий дизайн-набор лучше помогал маленькой модели (там он дал рост функциональности сильнее, чем WebViSE), а специализированные навыки — сильной. Отсюда практический вывод: чем слабее модель, тем проще и общее должна быть подсказка. Отдельно авторы проверили, можно ли «вшить» навыки в маленькую модель обучением на 10 000 сгенерированных с навыками сайтов; это уже работа для тех, кто обучает модели, и читателю в чате она не нужна.


💡

Адаптации и экстраполяции

🔧 Техника: добавить ревью применимости → меньше случайных навыков

Перед генерацией попросите модель отдельным шагом отобрать из вашей коллекции навыков только подходящие и обосновать отбор. Это воспроизводит шаг «проверка применимости» из статьи и защищает от главного вреда (неподходящих навыков).

Экстраполяция: тот же принцип «механизм + условия применимости + что не переносить» можно использовать не только для сайтов. Складывайте в файл инструкций агента (CLAUDE.md, скилы) короткие описания рабочих приёмов с указанием, когда они уместны и когда нет. Авторы проверяли это на веб-дизайне, перенос на другие задачи — гипотеза.


🔗

Ресурсы

Yifei Sun, Peng Zhao, Le Zhang, Bingjin Chen, Zhengfan Wu. WebViSE: Scaling Visual Design Intelligence from the Open Web for LLM Website Generation (препринт). Пекинский университет и Baidu Inc., Пекин. Код, навыки и граф навыков: https://github.com/YifeiSun-0710/WebViSE. Бенчмарки: WebGen-Bench, MiniAppBench, Cookie-Bench. Сравнительный набор общих правил дизайна: UI/UX Pro Max Skill (nextlevelbuilder).


📋 Дайджест исследования

Ключевая суть

Просишь у модели сайт и получаешь усреднённую страницу: те же блоки, те же цвета. Метод WebViSE позволяет получать сайты с выразительными приёмами, которые ты не умеешь описать словами: анимацию заголовка при прокрутке, раскрывающиеся этапы, карточки у меток на карте. Фишка: не проси красиво, а дай модели карточку приёма с готовым механизмом. Она не изобретает, а воспроизводит описанное. Результат: +3,25 пункта функциональности у Claude Opus 5, и страницы заметно отличаются от «общего шаблона».

Принцип работы

Карточка приёма отвечает на вопросы: где применять, что видит пользователь, как устроено, что нельзя копировать у источника, когда приём вредит. Такая карточка как рецепт повара: не «сделай вкусно», а «обжарь лук до золотого цвета, потом добавь томаты». Механизм и условия применимости работают лучше общих пожеланий. Бренд, тексты и картинки источника в карточку не входят, поэтому приём переносится на сайт любой тематики.

Почему работает

Без конкретики модель берёт самое привычное решение. Общие правила («соблюдай иерархию, контраст, отступы») сильная модель знает и так, поэтому они почти ничего не дали, а на Claude Opus 5 даже ухудшили часть показателей. Точное описание механизма она воспроизводит в коде хорошо. Главный инсайт: модели не нужно придумывать, ей нужно реализовать. Но есть ловушка. Четыре случайных приёма просадили точность функциональности на 6 пунктов, а тест динамики MiniAppBench на 13. Чем больше приёмов, тем выше риск конфликта стилей. У модели с сильным собственным вкусом (Kimi K3) эстетика просела. Поэтому отбор подходящих приёмов важнее самой библиотеки.

Когда применять

Вёрстка и генерация сайтов → лендинги, страницы с блоками разного назначения, особенно когда пробные варианты выглядят как у всех. Подходит сильным моделям. НЕ подходит слабым моделям: сложный приём они реализуют частично, им лучше простые общие правила. Не стоит добавлять приёмы, если подбор плохой: без них лучше, чем со случайными. Прирост небольшой, это не «сайт в разы лучше».

Мини-рецепт

1. Найди сайт, который нравится, и возьми его код страницы (HTML, CSS, скрипты).
2. Разбери на карточки: попроси модель выделить до трёх механизмов и описать каждый по полям: название, где применять, что делает пользователь, как устроено, что не переносить, когда не подходит.
3. Требуй механизм, а не внешний вид: добавь в запрос <роль>опытный фронтенд-разработчик и фразу Опиши механизм, а не внешний вид.
4. Отсей лишнее: перед созданием страницы пусть модель выберет подходящие карточки (максимум 4) и объяснит, почему остальные отброшены.
5. Привяжи к блокам: один приём на один блок страницы, не смешивай их без нужды.
6. Разреши пропуск: если приём блоку не подходит, пусть модель пропустит его и напишет причину.
7. Защити контент: текст и цифры бери только из твоего описания, а не из исходного сайта.

Примеры

[ПЛОХО] : Сделай красивый современный лендинг курса по продажам на маркетплейсе
[ХОРОШО] : Сделай лендинг курса. Используй только эти приёмы, по одному на блок. Приём 1. Герой при прокрутке. Когда применять: открывающий блок. Механизм: при прокрутке большой заголовок уменьшается и уходит в шапку, на его месте появляется лента шагов; прокрутка управляет состоянием. Не переносить: названия, тексты, картинки, бренд. Приём 2. Программа по этапам. Когда применять: больше пяти модулей. Механизм: лента этапов, каждый раскрывается по клику, остальные сворачиваются. Если приём не подходит блоку, пропусти его и напиши причину. Текст бери только из моего описания курса.
Источник: WebViSE: Scaling Visual Design Intelligence from the Open Web for LLM Website Generation
ArXiv ID: 2610.33929 | Сгенерировано: 2026-10-29 13:15

Проблемы LLM

ПроблемаСутьКак обойти
Без конкретных требований модель выдаёт самое типичное решениеПросишь "сделай сайт" или "сделай красиво и современно". Получаешь усреднённый результат: привычные блоки, привычные цвета, привычная раскладка. Новичок не может описать нужный приём словами, потому что не знает, как он называется. Общие советы вроде "соблюдай иерархию и контраст" сильная модель и так знает, они ничего не меняютНе проси "красиво". Опиши конкретный механизм: что меняется, когда это запускается, что видит пользователь. Например: "при прокрутке заголовок уменьшается и уходит в шапку, а на его месте появляется лента шагов"
Лишние подсказки в запросе ухудшают результатДобавляешь в запрос чужие примеры, правила или приёмы "для вдохновения". Если они не подходят задаче, модель всё равно пытается их использовать. Качество падает. Чем больше подсказок, тем выше риск конфликтов между нимиБери мало подсказок, около четырёх. Перед использованием проверь каждую: подходит ли она именно этому блоку? Неподходящие выбрасывай. Лучше без подсказок, чем со случайными

Методы

МетодСуть
Карточка приёма: механизм вместо совета — приём переносится на любую темуВместо общих пожеланий дай модели короткую карточку одного приёма. Поля: название, где применять (для какого блока и зачем), что видит и делает пользователь, как устроено (объекты, состояния, переходы, что запускает), что нельзя переносить (бренд, тексты, картинки, раскладка источника), когда не подходит. Опиши механизм, а не внешний вид. Почему работает: модель плохо придумывает новое, но хорошо воспроизводит точно описанное. Ей не нужно изобретать, нужно реализовать. Отвязка от бренда и текстов позволяет применить приём на странице другой тематики. Когда применять: нужна выразительность, а не стандартный шаблон. Карточку можно составить из любого примера, который тебе понравился. Когда не работает: слабая модель реализует сложный приём частично. Тогда лучше простые общие правила
Двухшаговый отбор подсказок: сначала отсей, потом делайДай модели список готовых карточек или правил. Попроси сначала выбрать только подходящие задаче, для каких блоков и почему остальные отброшены. Только потом выполнять задачу. Отбери из списка только те, что помогают именно этой задаче. Максимум 4. Остальные отбрось и напиши почему. Почему работает: отдельный шаг проверки применимости убирает подсказки, которые навредили бы результату. Явное объяснение "почему отброшено" заставляет модель сверяться с задачей, а не использовать всё подряд. Когда применять: есть большая библиотека примеров или правил, а подходит лишь часть. Когда не работает: подсказок две-три и все точно подходят

Тезисы

ТезисКомментарий
Неподходящие подсказки в запросе вредят сильнее, чем их отсутствиеПодсказка в запросе не нейтральна. Модель старается её выполнить, даже если она не подходит. Случайные примеры отнимают внимание у основной задачи и портят точность. Падение заметно даже у сильных моделей. Применяй: добавляй в запрос только то, что проверил на применимость. Сомневаешься — убери
Сильной модели точный механизм полезнее общих правилОбщие правила ("делай красиво", "соблюдай баланс") сильная модель уже знает. Они не добавляют новых решений и иногда мешают: модель начинает выполнять формальные пункты. Конкретный механизм добавляет то, чего не было в запросе. Применяй: для сильной модели описывай конкретное поведение результата. Для слабой оставь простые общие правила, сложный механизм она реализует частично
Модель с сильным собственным вкусом конфликтует с чужими приёмамиЕсли у модели ярко выраженная манера, добавленные приёмы вступают с ней в конфликт. Итог получается хуже, чем у каждого из подходов отдельно. Чем больше приёмов, тем выше риск несовпадения. Применяй: сначала проверь, как модель справляется без подсказок. Добавляй приёмы по одному и сравнивай результат
Условие "когда применять" превращает приём из украшения в решениеПриём без условий модель вставляет куда попало. Приём с привязкой к блоку и цели ("для программы курса, если модулей больше пяти") применяется там, где он нужен. Применяй: в каждом приёме пиши, для чего он и когда его пропустить. Разреши модели пропускать приём и объяснять причину
📖 Простыми словами

WebViSE: Scaling Visual Design Intelligence from the Open Web forLLMWebsite Generation

arXiv: 2610.33929

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

Это как нанять стажёра и бросить ему: «сделай красиво». В итоге получишь дефолтный синий градиент и три убогие плашки. Но если выдать ему точный приём — например, параллакс-скролл шапки и карточки на карте — на выходе внезапно получается продукт за 200 тысяч, а не курсовая второкурсника.

Вот что реально меняет дело: система WebViSE разбирает удачные сайты из сети на Visual Skills — микро-документы с описанием одной механики и условий, когда она уместна. Перед генерацией к запросу просто подмешивают 3–4 конкретных навыка. Никакой воды: модель получает чёткий чертёж реализации, вроде анимации героя при прокрутке, и вшивает его в код.

Тестировали генерацию на лендингах, но принцип универсален. Подход точно так же ложится на сложные дашборды, веб-сервисы и мобильные экраны. Хватит умолять чат-бота "быть креативным": чтобы получить уникальный UI, генеративной модели нужны не эпитеты, а модульные визуальные паттерны.

Короче: лить абстрактные правила дизайна в промпт — полный провал, от этого даже монстры вроде Claude Opus начинают тупить. Хочешь сочный результат — заставляй модель использовать библиотеку микро-механик. Кто внедрит такой пайплайн первым, сэкономит сотни тысяч на агентствах, пока остальные будут бесконечно перегенерировать один и тот же визуальный мусор.

Работа с исследованием

Адаптируйте исследование под ваши задачи или создайте готовый промпт на основе техник из исследования.

0 / 2000
~0.5-2 N-токенов ~10-30с
~0.3-1 N-токенов ~5-15с