⌂ все дашборды/Флот и узлы← System-Health-ZBOOKG8-2023PAL · Waiting-Sessions-HUB →

🎙️ Голос Антона в веса модели - что показали 3 разведки

DR26-08-04-ZB-12-2205 · синтез 05.08.2026, узел ZBOOKG8-2023PAL · потребитель: project-fine-tune-anton-fb-voice
Вопрос заказа: какие LLM реально впитывают личный авторский голос из корпуса 100-200 MB (RU+EN), чтобы модель писала голосом Антона по умолчанию, а не изображала стиль по промпту.
✅ ChatGPT47.7 KB · 40 источников
самый сильный отчёт
✅ Grok Heavy32.7 KB · 21 URL
сильный, честный список дыр
⚠️ Gemini27.0 KB · 12 источников
слабый: стар. данные, ошибка в модели
- claude.aiне собрана
браузер отвалился до Send
- GLMне собрана
везде гость, вход нужен bb@
⚠️ Кворум ДР = 4 рельсы. Собрано 3 - вывод стоит на трёх, и это записано честно, а не спрятано. «Не собрано» ≠ «рельса мертва».

Ответ в одну карточку

Метод - сошлись 3 из 3
Continued pretraining (CPT/DAPT) сырым текстом на BASE-чекпоинте → лёгкий SFT → DPO опционально
Базовая модель
Qwen3-base 8-14B · русская параллель-контроль: T-lite / RuAdapt-Qwen
Вендорские fine-tune API (OpenAI / Google / Anthropic / xAI)
Для этой цели не годятся - 3 из 3
Они принимают только пары «инструкция→ответ», сырого CPT не дают, веса не отдают. Корпус пришлось бы урезать в 10-100 раз - и вместе с ним выкинуть ровно ту массу текста, ради которой всё затевается.

Пайплайн целиком

чистый корпус  (дедуп → выкинуть чужое/репосты → PII-скраб → вес эпохи 2018-2023 выше)
   ↓
CPT / DAPT   QLoRA r64, ВСЕ линейные модули, на BASE, автор:generic = 90:10, seq 4k, 1 проход
   ↓
лёгкий SFT   5-20k пар (инструкция → его реальный текст) + ~10% generic bilingual
   ↓
DPO          ТОЛЬКО если после SFT замер всё ещё ловит «LLM-гладкость»
             chosen = его текст · rejected = ответ базовой модели на тот же промпт
Каждый следующий этап - меньше LR и меньше токенов. Чекпоинты не выбрасывать: лучший часто не последний.

Сравнение базовых моделей

Сведено по трём отчётам. VRAM - инженерные оценки (QLoRA-обучение / Q4-раздача), не гарантии вендора.
МодельВпитывает голосРусскийОбучить (QLoRA)Раздавать (Q4)Лицензия / вердикт
Qwen3-base 8-14Bвысоковысоко12-24 GB7-13 GBБРАТЬ Apache-класс; №1 у двух рельс из трёх
T-lite 7B (Qwen-производная)высокоочень высоко10-16 GB6-10 GBКОНТРОЛЬ в карточке прямо «для дальнейшего дообучения»
Ministral 3 8B Baseвысокосредне-высоко12-16 GB6-8 GBЗАПАСНОЙ Apache 2.0
T-pro ~32Bвысокоочень высокомульти-GPU20+ GBПОТОМ ступень качества, tooling слабее
Vikhr / Saigaсредне-низковысоко12-16 GB6-8 GBБЕНЧМАРК уже сильно post-trained → как эталон, не как старт
Llama 3.1 8B Baseвысокосредне-низко12-16 GB6-8 GBзрелый tooling, но русский не первого класса
Gemma 3 4B / 12Bвысокосредне8-25 GB3-11 GBгодится как дешёвый ablation
Llama 4 Scoutсредненизкомульти-GPU>55 GBМИМО русского нет в списке поддерживаемых
DeepSeek V3теоретическивысоконереальносотни GBМИМО 671B - операционно не наш размер
GLM-4.5-Airтеоретическисредне-высоко4×H1002×H100МИМО официальный рецепт LoRA требует 4×H100
Phi-4 14Bсредненизко20-28 GB10-12 GBМИМО в карточке: многоязычность не цель
YandexGPT / GigaChatснаружи никактоп по RUтолько облакотолько APIМИМО веса не отдают, lock-in

Вендорские сервисы дообучения

СервисДоступ частникуСырой CPTОтдают весаПотолок данныхВердикт под нашу цель
OpenAIспорно*нетнет512 MB на файл (JSONL)не годится: только SFT/DPO/RFT
Google Vertex / GeminiданетнетJSONL, рекомендуют 100-500 примеровне годится: корпус придётся резать в 100×
Anthropic Claudeнетнетнет-публичного self-serve FT нет - 3 из 3
xAI / Grokнетнетнет-публичного FT-продукта не найдено
Mistralданетчастично512 MB на файлSFT/DPO - да, сырой CPT - нет
Together AIдачерез full FTда**до 25 GBлучший облачный путь, если не хотим своё железо
Fireworksдачастичнода**до 3M примероврабочая обёртка, те же ограничения метода
Modalдада (сам крутишь)дасвои файлыпо сути аренда GPU с удобствами (~$4/час H100)
* Grok утверждает, что платформа FT у OpenAI закрыта для новых пользователей; ChatGPT, ходивший в те же доки, этого не пишет и приводит живые цены. Одиночный claim → проверить руками перед решением.
** «Отдают веса» подтверждают ChatGPT и Grok независимо; Gemini пишет «нет» и без ссылки - 2:1 против него.

Железо, деньги, сроки

ШагГдеВремяДеньги
Пилот - 4-8B, лучший FB-подкорпус, QLoRAдома, RTX 5060 Ti 16 GB1-3 дня данные + 0.5-2 дня обучение~0 (электричество)
Полный CPT 8-14B по всему корпусуаренда 1×H100 80 GB4-40 GPU-часов$20-120 за прогон · $150-400 с провалами
Качество без потолка 27-32B, full FT + reward-модель2-4×H1003-6 недель$500-5 000
Раздача готовой моделидома, Ollama / llama.cpp, Q4-Q5-0
Модель 8B в Q4 - это 6-10 GB видеопамяти, на 16-гиговой карте живёт спокойно. 14B в длинном контексте - уже впритык.

Как понять, что получилось - ДО слепого теста

ЗамерЧто ловитСигнал «работает»
Held-out perplexityподстроилось ли распределение под негоу обученной отчётливо ниже, чем у базовой, на его отложенном тексте
Authorship-классификаторглубина против поверхностигенерации помечаются как «он» так же часто, как настоящий held-out
Стилометрия (Burrows's Delta, служебные слова, пунктуация)средний слой почеркарасстояние до него ≪ расстояния до базовой модели
MAUVE внутри одного жанрадистрибутивный разрыввыше относительно его held-out выборки
LLM-судья по рубрикеритм, тайминг шутки, «LLM-гладкость»два независимых судьи вслепую - только как скрининг
Капабилити-набор до/послене сломались ли инструкции и рассуждениепросадка меньше заранее объявленного порога (предложено 5%)
Кривая распада голоса«звучит как он только первые два абзаца»оценка стиля каждые 100 токенов не падает
⚠️ Ловушка №1 всего проекта: классификатор обязан работать с замаскированными содержательными словами. Если он узнаёт Антона только по существительным - он выучил ТЕМЫ, а не голос, и весь замер врёт в нашу пользу.

Слепой A/B - строгий протокол

100 настоящих + 100 сгенерированных, спарены по эпохе, жанру, теме и длине · 8-15 судей, которые знают Антона · по одному тексту на экран, форс-выбор «настоящий / сгенерированный» + уверенность · разбор смешанной логистической регрессией (судья и тема - случайные эффекты) · критерий прохода объявлен ДО начала.
Проходит, если: 95% доверительный интервал точности накрывает 50% · верхняя граница ниже 60% · ни один жанр или длина не выше 65% · судьи не ловят пересказ приватных постов.
Дешёвый промежуточный вариант (Grok): 30-50 текстов, ≥5 судей, порог ≤55-60%. Годится как быстрый замер, финальный - по строгому.

Где рельсы разошлись - это развилки, а не шум

Расхождения не сглажены намеренно: в каждом случае решать инженеру, и вот на чём.
ВопросChatGPTGrokGeminiХод
Learning rate CPT-LoRA5e-6 - 2e-55e-5 - 1e-45e-6 - 2e-5Grok в 5-10× выше. Стартуем консервативно (1e-5), вверх - только ablation'ом
Сколько эпох0.5-1.5 прохода1-22-31 проход + чекпоинты 0.25/0.5/1.0. «2-3» = зубрёжка приватного
Куда мешать genericвнутрь CPT, 90:10 (работа Mix-CPT, ICLR 2025)только в SFT, ~10%для чистого DAPT «не важно»Работа есть только у ChatGPT → берём 90:10 внутри CPT
Full FT или LoRALoRA сейчас, full FT на финалfull FT даёт максимум (так делал Vikhr)full FT «не нужен»Прямое противоречие. LoRA r64-128 первым, full FT - верхняя ступень
Что влезет в 16 GBпилот 4-8Bпилот, полный - H100полный DAPT 7B за 12-48 чПланируем по консервативным двум, оптимизм Gemini - приятный бонус
⚠️ Качество отчёта Gemini ниже двух других - учитывать при чтении. Держим как третий голос в спорных местах, но не как источник цифр.

Честный контр-довод: а может, дообучение вообще не нужно

RAG + 5-20 его реальных постов в контекст + строгий декодинг даёт, по общему мнению трёх рельс, «80% результата за 5% усилий»: без GPU, без приватных рисков, обновляется добавлением файла.
Но: само число «80/5» никем не измерено - ChatGPT честно ставит «источник не найден», остальные повторяют как фигуру речи. Не цитировать как факт.
И всё же не закрывает задачу: критерий Антона - голос по умолчанию, без единого примера в промпте, и удержание голоса на длинном тексте. RAG по определению даёт голос «по требованию».
Правильный ход: RAG-baseline строится ПЕРВЫМ, за 2-5 дней, и становится полом, который любой fine-tune обязан перебить на том же наборе. Если RAG уже проходит слепой тест - обучать не надо вообще.

Что делать дальше

  1. Неделя 0, без GPU: собрать чистый корпус (дедуп → выкинуть чужое → PII → отложить hold-out по времени) и сразу обучить authorship-классификатор на его же отложенном тексте. Не отличает - проект закрывается дёшево, и это хорошая новость.
  2. Неделя 0, параллельно: RAG-baseline и замер на том же наборе. Это пол.
  3. Неделя 1: пилот на 16 GB - Qwen3-base 8B, лучший FB-подкорпус, QLoRA r64 all-linear, 1 проход.
  4. Неделя 2: метрики сдвинулись → полный CPT на арендованном H100 + лёгкий SFT. Не сдвинулись → чинить данные или ранг, а не докупать железо.
  5. DPO - только если после SFT замер всё ещё ловит «LLM-гладкость».
Чего в этой базе нет - честная граница
Тела отчётов: _originals/deep-research/DR26-08-04-ZB-12-2205-voice-finetune-{chatgpt,grok,gemini}.md
Синтез: 03-Insights/insight-DR-DR26-08-04-ZB-12-2205-voice-finetune-base-vs-method.md
Собрано и сведено: Claude Opus 5, узел ZBOOKG8-2023PAL, 05.08.2026 · рутина auto-hp17-260805-dr-voice-finetune-finish