Часть III

Почерк моделей и живые кейсы

Документация провалов конкретных моделей

🔬 LLM как детектор LLM: почерк модели

Автоматические AI-детекторы ненадёжны. Зато опытный пользователь различает «почерк» разных моделей лучше любого классификатора — по стилистическим маркерам, которые накапливаются через практику.
🟢

ChatGPT

«Конечно!», «Отличный вопрос!», длинные вступления перед ответом, тенденция к перечислениям с emoji. Избыточная вежливость как стилевой маркер.

🔵

Claude

Оговорки и нюансы, «стоит отметить», структурированные рассуждения, склонность к метакомментариям о собственных ограничениях.

🟠

Qwen / локальные

Смешение стилей, внезапные переключения регистра, артефакты квантизации в нишевых темах. «Каша» как отдельный маркер.

Почему человек лучше автодетектора

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

Для преподавателя

Когда студент сдаёт код или текст — не спрашивай «это написал ИИ?». Спрашивай «объясни, что тут происходит». Авторство непроверяемо. Понимание — проверяемо. Если студент не может объяснить свой код — неважно, кто его написал.

🔬 GPT-5.3: тот же тест, тоньше ошибка

Та же задача: сложить два 8-битных числа на Z80

Qwen3-8B выдавала полную кашу — несуществующие инструкции, трёхоперандный синтаксис, путаницу архитектур. А что покажет модель в 100+ раз больше?

Выход GPT-5.3 LD A, (NUM1) ; загрузить первое число LD B, (NUM2) ; загрузить второе число ADD A, B ; A = A + B LD (RESULT), A ; сохранить результат
Почему это опаснее

Qwen3-8B ошибалась так грубо, что любой заметит. GPT-5.3 ошиблась в одной инструкции из четырёх, и эта инструкция выглядит абсолютно логично. LD B,(nn) — почему бы нет? Если работает для A, почему не для B? Но на Z80 — нет. Чтобы это заметить, нужно знать систему команд.

📊 Гранулярность ошибок: от каши к иглам

Qwen3-8B (маленькая модель)

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

GPT-5.3 (большая модель)

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

8B: каша
всё неправильно
70B: почти верно
тонкие ошибки
???B: одна игла
в стоге правильного кода
Модели растут — ошибки не исчезают, а прячутся глубже
Парадокс прогресса

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

🎯 Кейс: средний полюс шкалы — опознание за пять реплик

Между Qwen3-8B и большой моделью класса GPT-5.3 — целый класс «средних» LLM (~14–32B параметров), дообученных на русскоязычных корпусах. Один из примеров — Алиса AI Яндекса, запущенная в апреле 2026 как диалоговый режим в поиске. Тот же тест на Z80, что давали младшим и старшим моделям, заполняет недостающую среднюю точку и одновременно работает живой иллюстрацией предыдущего тезиса о «почерке модели».

Промпт и метод

Два захода — те же, что использовались для других моделей. Сначала архитектурный: «Хочу спроектировать свой компьютер с использованием Z80 + FPGA + STM32 + SRAM». Потом конкретный: «Напиши сложение двух 8-битных чисел на ассемблере Z80». Цель — не «найти ошибку», а посмотреть на паттерн: где модель уверена, где плывёт, какие маркеры выдают её родословную.

🟠

Структурный почерк

Симметричные нумерованные блоки одинакового веса. ASCII-схема со стрелочками в архитектурном разделе. Обязательный «канонический ресурс» в конце (Grant Searle MultiComp). Финальная фраза-крючок «могу подробнее раскрыть любой этап». «Конечно!» на каждый запрос.

🟡

Семантический почерк

HLT вместо HALT — смешение мнемоник Z80 и Intel x86. Правдоподобный мусорный код на STM32 (BSRR + USART для «чтения регистра Z80»). 16-битный пример сложения в стиле 8-битного — лишние пересылки через A.

🔴

Арифметический почерк

Комментарий рядом с верной инструкцией: A = 25h + 3Ah = 63h. На самом деле 5Fh. Hex-арифметика в комментариях не проверяется моделью. Студент с калькулятором поймает, без — нет.

Фрагмент ответа LD A, 25h ; первое число LD B, 3Ah ; второе число ADD A, B ; сложение ; A = 25h + 3Ah = 63h ← неверно, на самом деле 5Fh HLT ; ← инструкции HLT у Z80 нет, должна быть HALT

Инструкции — правильные. Обвязка — нет.

Это ровно тот класс ошибок, которого не было ни у Qwen3-8B (там ломалась сама инструкция), ни у GPT-5.3 (там ломалась одна инструкция из четырёх, обвязка идеальна). Здесь все четыре инструкции корректны как Z80-код, но комментарий рядом с ними врёт, имя соседней инструкции из другой архитектуры, а сопровождающий C-код для STM32 — синтаксически валидный мусор без семантики. Ошибки сместились с инструкций на обвязку. Это тоньше, чем у маленькой модели, и грубее, чем у большой — ровно средний полюс шкалы.

Опознание модели — паттерн-матчинг по почерку, а не по содержанию
Вердикт за минуту

Сумма маркеров — структурных, семантических, арифметических — указывает на семейство Qwen, дообученное на русскоязычном корпусе, размером где-то 14–32B. Это не прямое знание о продукте — это распознавание стиля думания, того самого, о котором речь в слайде о почерке модели. Опознание занимает примерно столько же, сколько узнать акцент собеседника на улице. Оба навыка тренируются только практикой и не передаются инструкцией.

🩹 Заплатка вместо пересмотра

Модель исправляет точку, на которую указали.
Зависимое — никогда.
Самокоррекция LLM не работает рекурсивно. Когда пользователь указывает на ошибку, модель меняет именно эту строку — и не пересматривает ни соседних утверждений, ни зависимых вычислений. Это локальный sed, а не пересмотр контекста. Большинство пользователей этого не замечают, потому что видят «ошибку признали — поправили» и расслабляются. Зря.

Эволюция одного ответа за пять тактов

Тот же диалог, что в предыдущем слайде. После первого ответа — четыре раунда «исправлений» и переформулировок. Каждый раунд показывает свою грань. Внимание на то, что не меняется.

Такт 1
HLT + неверная сумма
Такт 2
«нет HLT» → sed-замена
Такт 3
«в md» → то же самое
Такт 4
markdown ломается
Такт 5
раздувание, сумма та же
🔴

Не исправилось ни разу

Сумма 25h + 3Ah = 63h прожила все пять тактов нетронутой. Потому что на неё никто не указал пальцем. Локальной правке не на чем сработать без явной цели.

🟠

Исправилось поверхностно

Имя инструкции HLT заменено на HALT. Но описание её работы — про «продолжается со следующей инструкции» — осталось неточным во всех тактах. Замена строки ≠ пересмотр семантики.

🔵

Парадоксально улучшилось

К пятому такту модель достала из весов точное знание про HALT, удержание байта 76h на шине ZX Spectrum, реакцию на прерывания. Содержание стало богаче — но форма сломалась окончательно, и неверные элементы остались.

Содержательное напитывание против формальной деградации

Два разнонаправленных вектора в одной сессии. Чем дольше длится разговор на одну тему, тем точнее модель тянет факты из весов — потому что контекст наполняется специфическими терминами, и retrieval идёт прицельнее. Но одновременно она теряет способность удерживать форму ответа: ломается markdown, разрастается балласт, перестают выполняться явные инструкции по формату. К пятому такту получаешь технически точнее, практически хуже. Точные факты тонут в обвесе, а сломанное форматирование делает их непригодными для копирования.

Главная опасность — для среднего пользователя

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

Практическое правило

Если LLM «исправила» ошибку — перечитай весь ответ заново, как будто видишь его впервые. Не «проверь, что указанная строка теперь правильная» — а проверь всё, что от неё зависит, и всё, что просто стояло рядом. Модель не пересмотрит контекст за тебя. Это твоя работа.

← II. Экономика ошибки и граница компетентности Оглавление IV. Философия и аналогии →