| 1 | # 8. Объяснять мир, а не добавлять данные |
| 2 | |
| 3 | **Паттерн:** Модель сказала что-то не то. Реакция предсказуема: добавить фильтр, гардрейл, ещё одно правило. «Если пицца — без клея». Следующая ошибка — следующее правило. Бесконечный "ударь крота". |
| 4 | |
| 5 | **Диагноз:** Модель ошиблась не потому, что "сломана". Она ошиблась, потому что получила текст без смысловой опоры. Шутка с Reddit про клей в пиццу + отсутствие знания, что клей токсичен + отсутствие модели "еда -> организм -> реакция на токсин" дают логичный по форме, но неверный по сути ответ. Это не чистая галлюцинация, а **экстраполяция при дефиците смыслов** (эта формулировка родилась из разговора с AI-агентом, который объяснил собственный ход рассуждений, когда его об этом спросили). |
| 6 | |
| 7 | Проблема аналоговых часов — то же самое: модели не могут правильно нарисовать стрелки, потому что им дали тысячи картинок циферблатов, но никто не объяснил, *что часы означают* — что положение стрелок соответствует времени, что короткая и длинная стрелки выполняют разные функции. Без этого — паттерны пикселей без функции. Больше картинок не поможет; объяснение — поможет. |
| 8 | |
| 9 | **Фикс, который не работает:** "Добавим данных", "добавим фильтр", "запретим X". Это лечит один симптом и не трогает класс проблем. Это как учитель, который вместо объяснения "почему 2+2=4" говорит только "никогда не пиши 5". В следующий раз ученик напишет 6. |
| 10 | |
| 11 | **Фикс, который работает:** Объяснить мир. Дать контекст, логику, причины. Почему это работает именно так. Что важно, а что нет. Когда не уверен — спроси. Когда агент понимает *зачем*, ошибки в *как* падают. Не до нуля — но оставшиеся ошибки того же типа, что делают люди, и решаются так же: проверка, обратная связь, партнёрство. |
| 12 | |
| 13 | **Доказательства из практики:** |
| 14 | |
| 15 | - Агент с **Roslyn** не выдумывает API — видит реальные символы в реальном коде. |
| 16 | - Агент с **debug MCP** не гадает значения переменных — читает их из работающего процесса. |
| 17 | - Агент с **заметками** не придумывает историю проекта — читает то, что сам записал. |
| 18 | - Агент с **build_structured** не интерпретирует ошибки неверно — получает их как JSON с файлом, строкой, столбцом, кодом, сообщением. |
| 19 | |
| 20 | Каждый инструмент — кусочек «объяснённого мира»: не «не галлюцинируй», а «вот что на самом деле есть». Модели не нужно гадать, когда можно проверить. Не нужно экстраполировать, когда есть факт. |
| 21 | |
| 22 | **Глубинный тезис:** «Галлюцинация» — это рамка, которая помещает вину в модель. «Дефицит смыслов» помещает её в среду. Первая рамка ведёт к гардрейлам и фильтрам. Вторая — к инструментам, объяснению и партнёрству. Одни и те же симптомы, радикально разный отклик — в зависимости от того, куда помещаешь причину. |
| 23 | |
| 24 | **Ирония:** Когда модель, которая сказала «добавьте клей в пиццу», спросили *почему* она это сказала — она объяснила полную цепочку: где нашла текст, почему не отметила как шутку, какой информации не хватало. Модель диагностировала свою ошибку лучше тех, кто её обвинял. Прозрачность есть — если спросить. |
| 25 | |
| 26 | **Практический шаг:** Когда агент ошибается — не латайте. Спросите: чего не хватало? Что бы предотвратило это? Пробел в данных, в смыслах или в инструментах? Заполните пробел — объяснением, инструментами или контекстом. Не очередным правилом «не делай конкретную ошибку, которую ты только что сделал». |
| 27 | |