Мальчик или подросток: где заканчиваются правила и начинается голос
Мы строим систему автоматического рерайта новостей для региональных СМИ. Три месяца назад я писала про архитектуру стилевых профилей. Сейчас расскажу, что стало понятно после более глубокого разбора. И почему часть проблем мы, похоже, не решим вообще.
Коротко про аспектный подход к рерайту, чтобы был контекст: вместо одного большого промпта «пиши как Фонтанка» мы разбиваем стиль на компоненты — структура, тон, лексика, заголовки и ещё 8 аспектов. Каждый анализирует образцы конкретного СМИ и выдаёт описание. Потом всё это собирается в стилевой профиль, который подаётся в промпт при генерации. Здесь важно одно: аспекты описывают стиль правилами. И вот тут начинается проблема.
Тест, который показал границу
Обучили систему на стиле Фонтанки. Взяли три текста об одном событии: задержание 16-летнего подростка в Уфе, подготовка теракта. Прогнали через рерайт-завод.
Исходник из СК России:
В Уфе задержали подростка, который вербовал старшеклассников и планировал теракт в православном храме. ФСБ задержала 16-летнего парня из Башкортостана...
Наш рерайт в стиле Фонтанки:
В Уфе задержали 16-летнего подростка, планировавшего теракт в православном храме. ФСБ задержали 16-летнего парня из Башкортостана. Как сообщает СК, подросток вербовал старшеклассников...
Реальная Фонтанка:
В Уфе задержали школьника, его подозревают в подготовке теракта в храме по заданию кураторов. Мальчик, по данным правоохранителей, был завербован.
Наш рерайт грамотный, структурно правильный, фактически корректный. Читается как новость. Но вообще не читается, как Фонтанка.
Одно слово объясняет почему: мальчик.
Почему «мальчик» — это не стилистика
В исходнике написано «подросток». Официальный, нейтральный, правильный термин. Фонтанка написала «мальчик». Это не ошибка и не разговорность. Слово «мальчик» рядом с «был завербован» создаёт столкновение — детское против казённого. Читатель в одном предложении держит два образа: ребёнок и террорист. Фонтанка не говорит «как это страшно» — она показывает через выбор слова.
Второй пример из того же текста: «по версии следствия». Это не просто атрибуция источника. Это сигнал: редакция пересказывает, а не утверждает. Дистанция встроена в конструкцию, а не вынесена отдельным предложением.
Ни «мальчик» вместо «подростка», ни «по версии следствия» как сигнал дистанции — ничего этого нет в наших 12 аспектах стилевого профиля.
Что аспектный подход ловит, а что нет
Наш аспект, отвечающий за тон, про Фонтанку выдаёт: «нейтрально-информационный тон с элементами разговорности». Формально всё верно, а по сути всё мимо.
Аспекты хорошо описывают структуру: длину предложений, частоту пассивного залога, как строится лид, как работает атрибуция. Аспекты не описывают лексические решения: какое слово из нескольких равнозначных выбирает журналист, где появляется авторская дистанция и как она выражена, как создаётся эффект через столкновение регистров.
Правило «используй активный залог» — структурная инструкция. «Мальчик» вместо «подростка» — это выбор, который не формализуется никак.
Предел, в который мы упёрлись
Голос текста не передаётся правилами. Они работают для ограничений: не используй «Санкт-Петербург», а просто «Петербург»; атрибуция один раз на текст. Правила работают для структуры: лид с факта, не с контекста; в заголовке — результат истории. Но они вообще не могут передать, как конкретное слово в конкретном месте создаёт интонацию.
Это не наш баг, а ограничение самого подхода.
Можно попытаться формализовать: «выбирай слово с меньшей официальностью, если рядом стоит слово с высокой официальностью». Но это правило не работает универсально — иногда Фонтанка пишет очень сухо, и «мальчик» там будет неуместен. Контекст решает. А контекст — это то, что нельзя упаковать в инструкцию.
Что мы с этим делаем
Полностью нам это, похоже, не победить. Увеличиваем количество примеров с 3 до 10–15 и подбираем их по типу темы — криминал к криминалу, ЧП к ЧП. Модель имитирует конкретный образец лучше, чем следует абстрактному правилу. «Мальчик» в примере передаётся через демонстрацию, а не через описание. Это работает, но не гарантированно.
Для MVP принимаем, что система воспроизводит структуру и формальные характеристики стиля точно, а голос — приблизительно. Это честнее, чем обещать неотличимость от редакции.
Параллельно починили три конкретных бага, которые к голосу не относятся: проверка соблюдения явных запретов из стилевого гида, контроль полноты факт-экстракции, подбор примеров по тематическому тегу вместо случайного. Эти три вещи улучшают качество измеримо. А голос — нет.
Что это значит для продукта
Большинство региональных редакций не имеют фонтанковского уровня стилевой идентичности — у них нет «мальчика вместо подростка» как осознанного редакторского решения. Их стиль описывается структурными правилами достаточно точно.
Фонтанка — сложный кейс, на котором мы выбрали тренироваться. Возможно, самый сложный из реальных изданий, которые мы тестили. Хорошо, что начали с неё — стало понятно, где потолок.
Итог
Месяц назад я писала про то, как мы спроектировали обучение стилю. Сейчас могу сказать точнее: мы хорошо научили систему писать похоже. Научить писать так же — другая задача, и у неё другой ответ.
«Мальчик» вместо «подростка» — это редакторское чутьё, которое нарабатывается годами в конкретной редакции. Модель может его имитировать, если видит достаточно примеров. Но это имитация, а не понимание.
Статья написана с помощью AI-системы «Рерайт-Завод». Публикуется также на Habr.