Почему нейросети так сложно починить
Есть такой термин в разработке — whack-a-mole. Отсылка к классическому аркадному аттракциону: кроты вылезают из дырок, ты бьёшь по одному молотком — вылезает другой. В разработке так называют ситуацию когда фикс одной проблемы порождает другую.
С ИИ-кодогенерацией это случается постоянно и у всех.
Типичный сценарий: просишь Cursor поправить баг в системе инвентаря. Он правит. Запускаешь — баг исчез, но сломалась логика стаков предметов которую он не видел в контексте. Просишь починить стаки — ломается сортировка. Чинишь сортировку — возвращается исходный баг в другом месте.
Проблема не в том что модель "плохая". Проблема в том что у неё нет глобального понимания системы — только контекстное окно. Она оптимизирует локально, не видя что происходит на три файла левее. Каждый фикс корректен в изоляции и ломает что-то за её горизонтом видимости.
Лечится это не "лучшими промптами", а архитектурой. Чем лучше система разбита на независимые модули с чёткими контрактами — тем меньше у модели шансов задеть что-то за пределами её контекста. Небольшой изолированный модуль с понятным интерфейсом — это именно тот масштаб на котором AI работает хорошо.
Проблема в том что спроектировать такую систему нельзя делегировать той же нейросети. Это решение принимается до того как написана первая строчка кода, и требует понимания всей системы целиком — того чего у модели по определению нет.
Поэтому при переходе на AI-кодогенерацию писать код становится проще. Но понимать как его организовать — теперь важнее чем раньше.
#мнение #ии
Post #1904
972
- 🔥 17