TL;DR
Каждая языковая модель пишет в своём фирменном стиле — и никакой промптинг не вытаскивает её из этого стиля достаточно далеко, чтобы текст воспринимался как написанный конкретным живым человеком. Когда ты просишь Claude «пиши как Фёдор Овчинников» — модель немного меняет поверхностные признаки (лексику, тональность), но остаётся в «пространстве LLM-текстов», а не переходит в «пространство Овчинникова».
Главная находка: Оценивать стиль с помощью той же LLM, которая его генерирует — ловушка. Если попросить Claude извлечь черты стиля автора, потом сгенерировать текст «в этом стиле», а потом спросить Claude же «похоже на автора?» — Claude скажет «да». Потому что обе операции (извлечение черт + проверка) оптимизируют одно и то же: следование инструкциям LLM-формата, а не реальный авторский стиль. Реальный автор в эксперименте набрал меньше баллов по этому тесту, чем «оптимизированный» промпт. Это не ошибка — это признак того, что метрика измеряет не то.
Среди четырёх проверенных подходов к имитации стиля простой few-shot (5 примеров текстов автора без инструкций) показал лучший результат по надёжной метрике. Сложные методы — извлечение абстрактного профиля стиля, контрастивные примеры — проигрывают или не дают преимущества. Короче: больше примеров реального текста — лучше. Умные конструкции с «описанием стиля» — хуже.
Схема метода
Это исследование-находка, не техника. Из него вытекают три практических принципа:
ПРИНЦИП 1: Few-shot для стиля
Дай модели 5+ фрагментов текста целевого автора → без абстрактного описания стиля
Лучший результат по надёжной оценке среди всех подходов
ПРИНЦИП 2: Не используй LLM для проверки LLM-стиля
Если Claude генерирует → не спрашивай Claude «похоже на X?»
Это круговая зависимость: найдёт то, что сама же оптимизировала
ПРИНЦИП 3: Контрастивный промпт (один из тестируемых методов)
Блок 1: примеры текстов целевого автора
Блок 2: примеры текстов ДРУГИХ авторов с пометкой «не так»
Блок 3: задача на генерацию
Все три принципа применяются в обычном чате, никакого кода.
Пример применения
Задача: Ты пишешь телеграм-посты для предпринимателя. Клиент хочет, чтобы тексты звучали «как он сам пишет». Стандартный подход — описать его стиль словами — не работает.
Промпт (контрастивный подход):
Вот примеры того, КАК ИМЕННО пишет Алексей:
[Пример 1 — реальный пост Алексея, 150-200 слов]
[Пример 2 — реальный пост Алексея, 150-200 слов]
[Пример 3 — реальный пост Алексея, 150-200 слов]
[Пример 4 — реальный пост Алексея, 150-200 слов]
[Пример 5 — реальный пост Алексея, 150-200 слов]
---
Вот примеры того, КАК ОН НЕ ПИШЕТ (другие авторы, другой стиль):
[Пример А — другой блогер или корпоративный стиль]
[Пример Б — ещё один контрастный пример]
---
Напиши пост на тему: [тема поста].
Ориентируйся строго на стиль из первых пяти примеров,
избегай стиля из контрастных примеров.
Результат: Модель создаст текст с поверхностными маркерами стиля автора — характерными словами, длиной предложений, тональностью. Это лучшее, что даёт промптинг. При этом текст всё равно останется «LLM-текстом» на глубоком уровне — опытный читатель может это почувствовать. Контрастные примеры помогают модели острее понять, чего избегать.
Почему это работает
Проблема: LLM не имеет «пустого» стиля. У каждой модели есть свой почерк — длина предложений, любимые конструкции, способ строить абзацы. Это не баг, это результат обучения на огромных данных. Промптинг меняет поверхностные признаки текста, но не меняет глубокий почерк модели.
Почему few-shot работает лучше абстракций: Когда ты даёшь реальные примеры текстов, модель подхватывает конкретные паттерны: как именно строятся предложения, какие слова идут рядом, где стоят паузы. Когда ты даёшь описание («пиши коротко, по-деловому, без воды») — модель интерпретирует это через свои представления о «кратком деловом стиле», а не через реальный стиль конкретного человека.
Почему LLM-судья ненадёжен для стиля: Если попросить модель «опиши стиль автора», а потом «оцени, похож ли этот текст на автора» — оба шага оптимизируют одно: извлечение признаков так, как это делает LLM. Реальный автор не оптимизирован под этот формат — поэтому его собственные тексты набирают меньше баллов, чем «оптимизированный» промпт. Это верный признак того, что метрика поломана.
Шаблон промпта
Few-shot шаблон (простой, надёжный)
Вот примеры текстов {имя автора}:
[Пример 1]
---
[Пример 2]
---
[Пример 3]
---
[Пример 4]
---
[Пример 5]
Напиши {тип текста} на тему: {тема}.
Пиши в том же стиле, что в примерах выше.
Не описывай стиль — просто используй его.
Плейсхолдеры:
- {имя автора} — чей стиль имитируем
- {тип текста} — пост, письмо, статья, комментарий
- {тема} — о чём текст
- [Примеры 1-5] — реальные тексты автора, лучше 100-200 слов каждый
Контрастивный шаблон (сильнее, но требует больше работы)
СТИЛЬ, КОТОРОМУ СЛЕДОВАТЬ — тексты {имя автора}:
[Пример 1]
---
[Пример 2]
---
[Пример 3]
---
[Пример 4]
---
[Пример 5]
СТИЛЬ, КОТОРОГО ИЗБЕГАТЬ — тексты других авторов:
[Контрастный пример 1]
---
[Контрастный пример 2]
ЗАДАЧА:
Напиши {тип текста} на тему: {тема}.
Ориентируйся на первую группу примеров. Избегай стиля второй группы.
Что подставлять в контрастные примеры: любой текст с заметно другим стилем — корпоративный vs живой, длинные предложения vs короткие, формальный vs разговорный. Контраст помогает модели понять границы.
🚀 Быстрый старт — вставь в чат:
Помоги мне использовать этот шаблон для моей задачи: {моя задача — имитировать стиль X для написания Y}.
Задавай вопросы, чтобы заполнить все поля.
[вставить шаблон выше]
LLM спросит образцы текстов целевого автора и уточнит задачу — потому что без реальных примеров few-shot не работает.
Почему это работает (механика)
Псевдокода здесь нет — работает простой принцип: конкретный паттерн всегда сильнее абстрактного описания. Когда ты говоришь «пиши кратко» — модель угадывает, что ты имеешь в виду. Когда ты показываешь 5 реальных коротких текстов — модель видит, насколько коротко и как именно строятся эти короткие предложения.
Контрастные примеры добавляют второй сигнал: «вот что точно не то». Это сужает пространство допустимых интерпретаций.
Ограничения
⚠️ Фундаментальный потолок: Даже лучший промпт не делает LLM-текст неотличимым от текста живого человека. Все проверенные методы остаются ниже уровня «случайный разный человек» по надёжной метрике. Это не проблема промпта — это ограничение инференса (работы модели без переобучения).
⚠️ LLM-судья для стиля ненадёжен: Если просишь модель оценить «похоже ли на автора X» — получаешь оценку того, насколько текст следует LLM-шаблону стиля, а не реальному стилю. Реальный автор может проиграть «оптимизированному» промпту по этой оценке.
⚠️ Метод профиля (извлеки стиль → генерируй по профилю) выглядит лучше, но не является: По LLM-судье он побеждает. По надёжной метрике — неотличим от других. Это ловушка для тех, кто проверяет LLM через LLM.
⚠️ Только английский: Исследование работало с англоязычными блогами. Русскоязычные паттерны могут вести себя иначе.
Как исследовали
Исследователи взяли блог-корпус из 681 тысячи постов от 19 тысяч авторов, отобрали 50 с достаточным объёмом текстов и проверили четыре способа имитации стиля: без персонализации (контроль), few-shot (5 примеров автора), извлечение профиля стиля, контрастивный подход. Сгенерировали 1000 текстов и измерили их тремя разными метриками.
Ключевая деталь дизайна: в промптах для генерации использовали нейтральные пересказы содержания («пост о принятии решений в кризис»), а не первые предложения целевого поста. Оказалось, что если взять первое предложение — оно уже несёт авторский стиль, и базовый результат без всякой персонализации резко улучшается на 28 процентных пунктов. Половина «успехов» в подобных исследованиях может быть просто этим артефактом промпта.
Самый интересный момент: LLM-судья уверенно объявил «профиль стиля» победителем с большим отрывом. Надёжная метрика (LUAR — специализированная система верификации авторства) нашла отличие в 0.024 пункта — статистически неразличимо. Команда показала, почему: и извлечение профиля, и оценка судьи делают одно и то же — спрашивают LLM про LLM-признаки текста. Реальный автор в этой системе «проигрывает» оптимизированному промпту. Это и есть доказательство, что метрика сломана.
Адаптации и экстраполяции
🔧 Как проверить стиль без LLM-судьи
Проблема: нельзя спрашивать Claude «это звучит как Х?» — это круговой тест.
Альтернатива: Покажи сгенерированный текст реальному человеку, который хорошо знает оригинального автора. Или используй слепую проверку — дай несколько текстов (настоящих и сгенерированных) вперемешку и попроси угадать что есть что.
🔧 Техника: Нарастить few-shot постепенно
Исследование проверяло фиксированные 5 примеров. Рабочая гипотеза: больше примеров = лучше.
Шаг 1: Начни с 3 примеров → проверь результат
Шаг 2: Добавь 2 длинных примера (200+ слов) → сравни
Шаг 3: Попробуй заменить общие примеры на примеры в похожем жанре (если пишешь пост — давай примеры постов, не статей)
Жанровое совпадение примеров и задачи лучше, чем просто «тексты автора». Это следует из логики исследования: модель подхватывает паттерн конкретного формата.
🔧 Инсайт для работы с клиентами
Если клиент говорит «напиши как я пишу» — не проси его описать свой стиль. Попроси прислать 5-7 своих текстов, которые ему нравятся. Это даст лучший результат, чем любое словесное описание — и исследование это подтверждает количественно.
Ресурсы
Название: Theory-Grounded Evaluation Exposes the Authorship Gap in LLM Personalization
Автор: Yash Ganpat Sawant (независимый исследователь)
Ключевые ссылки из исследования: - LUAR (Learning Universal Authorship Representations) — [Rivera-Soto et al., 2021, EMNLP] - Blog Authorship Corpus — [Schler et al., 2006] - LaMP benchmark — [Salemi et al., 2024, ACL] - LongLaMP — [Kumar et al., 2024]
Связанная работа того же автора: High-stakes personalization: Rethinking LLM customization for individual investor decision-making (arXiv:2604.04300, 2026)
