Добавить в корзинуПозвонить
Найти в Дзене

Митчелл Хашимото (создатель HashiCorp и Ghostty) написал важный пост про агентное программирование

Он хорошо подсвечивает проблему, того, что будет происходить если использование агента не будет подкреплено пониманием происходящего. tldr; нас ждет медленный и бажный софт. Дальше вольный перевод. Я запустил агента в цикле оптимизации рендерера. Цель была снизить время рендеринга кадра. Для измерения были тесты. Агент снизил время с 88ms до 2ms, а количество аллокаций примерно со 150K до 500. Звучит хорошо, правда? Нет. Именно поэтому агентный психоз это большая проблема. В качестве эксперимента я переписал core render state из Ghostty на Go. У него были точно такие же структуры данных, как в Ghostty, и те же самые тесты валидации. Сначала я сделал намеренно наивный рендерер. Простой, корректный, но медленный. 88ms на кадр и 150 000 аллокаций. Ужасно. Потом я запустил Ralph loop, чтобы снизить время рендеринга. Я сказал агенту, что он не может менять входные структуры данных, публичный API и тесты, потому что они корректные. Всё остальное менять можно. Агент работал около четыр

Митчелл Хашимото (создатель HashiCorp и Ghostty) написал важный пост про агентное программирование. Он хорошо подсвечивает проблему, того, что будет происходить если использование агента не будет подкреплено пониманием происходящего. tldr; нас ждет медленный и бажный софт.

Дальше вольный перевод.

Я запустил агента в цикле оптимизации рендерера. Цель была снизить время рендеринга кадра. Для измерения были тесты.

Агент снизил время с 88ms до 2ms, а количество аллокаций примерно со 150K до 500. Звучит хорошо, правда? Нет. Именно поэтому агентный психоз это большая проблема.

В качестве эксперимента я переписал core render state из Ghostty на Go. У него были точно такие же структуры данных, как в Ghostty, и те же самые тесты валидации. Сначала я сделал намеренно наивный рендерер. Простой, корректный, но медленный.

88ms на кадр и 150 000 аллокаций. Ужасно.

Потом я запустил Ralph loop, чтобы снизить время рендеринга. Я сказал агенту, что он не может менять входные структуры данных, публичный API и тесты, потому что они корректные. Всё остальное менять можно.

Агент работал около четырёх часов. Я потратил на эксперимент примерно $350.

Результат?

88ms => 1.5ms

150K аллокаций => примерно 500

Впечатляет? Нет.

Моя ручная реализация того же рендерера работает на том же бенчмарке примерно за 20µs, то есть 0.020ms, и делает 0 аллокаций в update path.

Вот в чём проблема агентного психоза и отсутствия системного понимания. Если ты не понимаешь систему, ты примешь это за невероятный результат. Если понимаешь систему, то сразу увидишь лучшие решения и сможешь получить примерно в 75 раз большую пропускную способность.

Люди, которые слепо доверяют результатам агентов, находятся в первой группе. Они слишком много пьют из фонтана посредственности.

Стандартный дисклеймер: я постоянно использую AI. Мне нравится AI. Мысль не в том, что AI плохой. Мысль в том, что нельзя слепо принимать результаты.

Думайте. Анализируйте. Учитесь.

Telegram | YouTube | Сообщество