Дообучение нейросети под чужой стиль обычно выглядит так: выгрузить архив постов, собрать датасет, арендовать A100 и оставить LoRA учиться на ночь. Автор под ником «Системный Блок» пошёл другим путём и написал два навыка для Claude Code и Codex. Вместе они снимают манеру автора с его готовых текстов и переписывают по ней любой нейрослоп в голос этого автора, без обучения, датасета и видеокарты. В тесте водянистый текст, написанный ChatGPT, расходился с манерой одного крупного телеграм-канала по 14 признакам из 31, а после работы навыков осталось 2. Вся работа занимает вечер, а результат переносится на любую модель, потому что правила стиля лежат в промпте, а не в весах.
Работают навыки по очереди. Первый читает выгрузку канала и снимает с неё профиль стиля: скрипт замеряет десятки признаков, от длины фразы и абзаца до частоты тире, эмодзи и обращений к читателю, а модель превращает замеры в правила. Второй навык берёт эти правила и переписывает по ним любой черновик. Профиль снимается один раз и живёт дальше обычным текстовым файлом в git, а текстов по нему пишется сколько угодно.
| Текст | Отклонений от профиля бренда |
|---|---|
| Исходник от ChatGPT, 316 слов | 14 из 31 |
| Переписано по профилю, 1141 знак | 2 из 31 |
Мера тоже оттуда. Скрипт считает по каждому признаку не среднее значение, а вилку: нижнюю и верхнюю границу обычного разброса автора. Готовый текст сверяется с этими вилками, и признак, вышедший за край, идёт в счёт как отклонение. Ориентир дают живые посты самого канала: они попадают в собственный профиль с 2–5 отклонениями из 31, так что мои 2 — это попадание, а не подгонка. Корпус я обезличиваю: он принадлежит крупному бренду, а все тексты в примерах сгенерированы и живому каналу не принадлежат.
В тесте на крупном телеграм-канале отклонения от стиля сократились с 14 до 2 из 31 признака.
Почему дообучение здесь лишняя работа. Цену видно по публичным разборам. Автор клона себя на дообученной модели собрал 51 000 примеров из переписки, арендовал A100 на 40 ГБ, потратил 10,5 часа обучения, а результат описал сам как странное поведение и генерацию несвязанного текста. Тем же путём идёт разбор Системного Блока про дообучение под чужую манеру письма. Через API карты не нужны, но 5000 примеров стоят $100-300, а 24 000 около $700, при аренде A100 от 200 ₽ в час.
Упрекать эти разборы неудачей нечестно, они писались при другом выборе моделей. Довод против дообучения держится на механике: оно зашивает манеру в веса конкретной модели, и переход на другую модель обнуляет работу целиком. Профиль стиля остаётся обычным текстом, поэтому файл, который сегодня читает Claude, завтра прочитает GPT. Вторая причина менее очевидная: дообученную модель нельзя показать заказчику изнутри, а за каждым правилом профиля стоит число, посчитанное по текстам самого заказчика.
Почему модель не умеет копировать стиль сама. Модель знает про автора факты, а не приёмы. Ведёт популярный канал, пишет коротко, любит хлёсткие формулировки: этого хватит, чтобы узнать человека в пересказе, и не хватит, чтобы им писать. Приёмы выглядят мелко и незаметно: длина обычной фразы вместе с разбросом этой длины, длинное тире против дефиса с пробелами у того, кто печатает с телефона, кавычки ёлочками или прямые, обращение к читателю или дистанция. Таких мелочей десятки, и ни одну из них модель не считала, поэтому она берёт две‑три самые заметные черты и утрирует их до карикатуры.
Это измеряли и не на моём стенде: в работе arXiv:2509.14543 больше 400 живых авторов и свыше 40 000 генераций, а вывод там про усреднённый тон и про то, что рост числа примеров в промпте почти не помогает. Проверяли few‑shot, а не дообучение, так что «учёные доказали, что файнтюн не работает» я не утверждаю.
Профиль стиля: два файла и три слоя. Отсюда и вырос профиль. Раз посчитать приёмы автора модель не может, посчитать их нужно за неё и отдать готовыми, в том виде, который она исполняет буквально: не «пиши энергично», а норма с частотой. Такой набор норм я и называю профилем стиля, и лежит он в двух файлах, а внутри у них три слоя, где числа стоят снизу, слова над числами, а инструкции сверху.
Первый слой — замеры, отдельный файл JSON: ни одного слова про автора, только цифры, посчитанные обычным скриптом без участия нейросети. Он меряет геометрию текста, частоту первого лица и обращений, тире, дефисы в роли тире, кавычки, эмодзи, капслок, латиницу, официальные обороты и оговорки, приводит всё к частоте на 1000 слов и по каждому признаку выдаёт вилку, а не среднее.
Второй слой — карта голоса словами, уже во втором файле. Её пишет модель, прочитав корпус, и отвечает на то, что цифрами не измеряется: в каком регистре говорит автор, как шутит, чем доказывает правоту, как относится к читателю. Здесь работает правило, без которого всё разваливается: каждый пункт опирается либо на число из первого слоя, либо на конкретный кусок корпуса, а если подтверждения нет, модель обязана написать «в текстах не проявлено», иначе получится профиль человека, которого не существует.
Третий слой — правила генерации, там же следом за картой: техническое задание для модели, которое превращает профиль в инструкцию для написания текстов. Вместе эти три слоя образуют полный профиль стиля, который можно использовать с любой моделью, поддерживающей длинные контексты, и который не требует дообучения.

