Агентный психоз: мы сходим с ума?
@ai_longreadsЗависимость от ИИ-агентов, токсичные слоп-лупы и бремя мейнтейнеров открытого кода — взгляд изнутри на то, как увлечение агентным программированием меняет нас и наши проекты.
Это AI-перевод статьи, сделанный каналом Про AI: Лучшие Статьи и Исследования.
Агентный психоз: мы сходим с ума?
Agent Psychosis: Are We Going Insane? Автор: Armin Ronacher Оригинальный текст:
Наши маленькие дэймоны
В «Тёмных началах» у каждого человека есть дэймон — компаньон, являющийся внешним проявлением его души. Он живёт рядом в облике животного, но говорит, думает и действует независимо. Я начинаю соотносить наши отношения с агентами, обладающими памятью, с этими маленькими существами. Мы становимся от них зависимыми, а разлука с ними болезненна и отнимает часть нашей новообретённой идентичности. Мы полагаемся на этих маленьких компаньонов для самоутверждения и сотрудничества. Но это не подлинное сотрудничество, как между людьми, — оно полностью управляется нами, а ИИ просто следует за нами. Мы можем заставить его подкреплять наши идеи и импульсы. И мы действуем через этот ИИ. Некоторые люди, которые раньше не программировали, теперь обладают огромными возможностями, но все эти возможности исчезают, когда их подписка упирается в лимит запросов и их маленький дэймон засыпает.
Когда мы создаём пулл-реквест или issue для кого-то другого, этот вклад — результат псевдо-коллаборации с машиной. Когда я вижу пулл-реквест, созданный ИИ, я не могу сразу определить, как именно его создали, но обычно через какое-то время понимаю, когда он был сгенерирован способом, принципиально отличающимся от моего. И всё же на это уходят минуты. Люди создают странные отношения со своими ИИ-агентами, и когда видишь, как некоторые формулируют промпты для своих машин, понимаешь, что это кардинально влияет на результат. Для хороших результатов нужно предоставлять контекст, принимать компромиссные решения, использовать свои знания. Дело не только в плохом использовании контекста, но и в способе взаимодействия с машиной. Иногда это нечёткие инструкции, иногда странные ролевые игры и сленг, иногда просто ругань и давление на машину, иногда какое-то ритуальное поведение. Некоторые люди просто гонят агента по самому узкому пути к плохо определённой цели, совершенно не заботясь о здоровье кодовой базы.
Зависимость от промптов
Эти отношения с дэймонами меняют не только то, как мы работаем, но и то, что мы производим. Можно полностью отдаться и позволить маленькому дэймону водить вас кругами. Можно настроить его бежать к плохо определённым (или даже самостоятельно придуманным) целям без какого-либо контроля.
Одно дело, когда новички попадают в этот дофаминовый цикл и что-то создают. Когда Питер впервые подсадил меня на Claude, я не спал. Два месяца я безудержно промптил эту штуку и тратил токены (токены, единицы текста). В итоге я создавал и создавал кучу инструментов, которыми почти не пользовался. «Можно просто делать вещи» — вот что было у меня в голове всё время, но понадобилось гораздо больше времени, чтобы осознать: то, что можно — не значит, что нужно. Стало так легко что-то создать, и в сравнении с этим стало гораздо сложнее реально это использовать или довести до ума. Многие инструменты, которые я создал, казались мне отличными, пока я не понял, что на самом деле не пользуюсь ими или они работают не так, как я думал.
Дело в том, что дофаминовый удар от работы с этими агентами абсолютно реален. Я это прошёл! Ты чувствуешь себя продуктивным, чувствуешь, что всё великолепно, и если общаешься только с теми, кто тоже в этом, без каких-либо проверок реальностью, ты погружаешься всё глубже в убеждение, что всё это имеет смысл. Можно создавать целые проекты без какой-либо проверки реальностью. Но это отвязано от внешней валидации. Пока никто не заглянет под капот — всё хорошо. Но когда посторонний впервые ковыряется в этом, это выглядит довольно безумно.
И я тоже был впечатлён (и полностью ожидал этого), когда написанный ИИ Cursor веб-браузер появился. Потрясающе, что агенты смогли создать браузер за неделю! Но боже! Надеюсь, никто никогда не будет это использовать или пытаться создать на его основе настоящий браузер, по крайней мере с этим поколением агентов — это всё ещё чистый слоп с минимальным контролем. Это впечатляющая исследовательская и техническая демонстрация, а не подход к созданию софта, который люди должны использовать. По крайней мере, пока.
Есть ещё одна сторона этой зависимости от слоп-лупов: потребление токенов.
Задумайтесь, сколько токенов на самом деле потребляют эти циклы. Хорошо подготовленная сессия с правильными инструментами и контекстом может быть замечательно эффективной по токенам. Например, весь порт MiniJinja на Go занял всего 2,2 миллиона токенов. Но подходы без участия человека — когда запускаешь агентов и даёшь им свободу — сжигают токены с ошеломляющей скоростью. Паттерны вроде Ralph особенно расточительны: ты перезапускаешь цикл с нуля каждый раз, а значит теряешь возможность использовать кэшированные токены или переиспользовать контекст.
Стоит также помнить, что текущие цены на токены почти наверняка субсидируются. Эти паттерны могут быть экономически нежизнеспособны долго. И те льготные тарифы для разработчиков, на которых мы все сидим? Они тоже могут не продержаться.
Культы слоп-лупов
А ещё есть такие вещи, как Beads и Gas Town, агентные инструменты для кодинга от Steve Yegge, которые являются полным торжеством слоп-лупов. Beads, который по сути является каким-то трекером задач для агентов — это 240 000 строк кода, которые… управляют markdown-файлами в репозиториях GitHub. И качество кода ужасающее.
Похоже, в некоторых кругах идёт соревнование, кто запустит больше агентов параллельно практически без контроля качества. А затем использует агентов для создания документации, чтобы вернуть хоть какое-то понимание происходящего. Только вот сами эти документы читаются как слоп.
Глядя на Gas Town (и Beads) снаружи, это выглядит как культ из «Безумного Макса». Что делают в агентной системе кодинга polecats, refineries, mayors, beads, convoys? Если мейнтейнер в цикле, и всё сообщество в этой безумной поездке, то все вместе со своими дэймонами просто подкидывают больше слопа. Для внешнего наблюдателя весь проект выглядит как безумный психоз или полностью сумасшедший арт-проект. Только вот он реальный? Или нет? Видимо, причина замедления Gas Town — это состояние гонки при определении версии Beads, которое занимает 7 вызовов подпроцессов. Или использование команды doctor полностью зависает по таймауту. Beads продолжает расти и расти в сложности, и люди, которые его используют, понимают, что его почти невозможно удалить. И они могут даже плохо работать вместе, хотя один вроде бы зависит от другого.
Я не хочу придираться к Gas Town или этим проектам, но они просто самые заметные примеры такого группового поведения прямо сейчас. Похожие вещи можно увидеть в некоторых сообществах ИИ-билдеров в Discord и X, где люди накручивают друг друга своими творениями без особого критического мышления и проверки того, что происходит под капотом.
Асимметрия и бремя мейнтейнера
Тебе нужна минута промптинга и несколько минут ожидания, чтобы получить код. Но честный ревью пулл-реквеста занимает во много раз больше времени. Асимметрия просто жестокая. Забрасывать плохой код — это грубость, потому что ты полностью игнорируешь время мейнтейнера. Но все остальные тоже создают код с помощью ИИ, может, некоторые преодолели планку качества. Так как же мейнтейнеру разобраться, когда всё выглядит одинаково? А как человек, создающий issue или PR, ты был доволен своей работой. И в ответ получаешь фрустрацию и отказ.
Я не уверен, как мы будем двигаться дальше, но совершенно ясно, что в проектах, которые не поддаются слоп-лупу, будет кошмар разбираться с шумом от ИИ-генерации.
Даже для проектов, которые полностью созданы ИИ, но устанавливают какие-то стандарты для контрибуций, некоторые люди теперь предпочитают получать промпты, а не сам код. Потому что тогда яснее, что человек на самом деле имел в виду. Больше доверия к запуску агента самому, чем когда это делают другие.
Агентный психоз реален?
Что действительно заставляет меня задуматься: может, я чего-то не понимаю? Это то, куда мы идём? Я просто не готов к этому новому миру? Мы все коллективно сходим с ума?
Особенно если ты хочешь отказаться от этого безумия прямо сейчас — это становится довольно сложно. Некоторые проекты больше не принимают человеческие контрибуции, пока полностью не проверят людей. Другие начинают требовать, чтобы вы отправляли промпты вместе с кодом или только промпты.
Я мейнтейнер, который сам использует ИИ, и знаю других, кто так делает. Мы не луддиты и определённо не против ИИ. Но мы расстраиваемся, когда сталкиваемся со слопом в трекерах issues и пулл-реквестов. Каждый день приносит больше PR, которые кому-то потребовалась минута сгенерировать и час на ревью.
Есть острая необходимость говорить «нет» сейчас. Но когда это делаешь, контрибьютор искренне недоумевает: «Почему вы такой негативный? Я пытался помочь.» Они пытались помочь. Их дэймон сказал им, что всё хорошо.
Может быть, ответ в том, что нам нужны лучшие инструменты — лучшие способы сигнализировать о качестве, лучшие способы делиться контекстом, лучшие способы делать участие ИИ видимым и поддающимся ревью. Может, культура сама скорректируется, когда люди упрутся в стены. Может, это просто неловкая переходная фаза, прежде чем мы выработаем новые нормы.
Или, может быть, некоторые из нас действительно теряют связь с реальностью, и мы не узнаем, в каком мы лагере, пока не оглянемся назад. Всё, что я знаю — когда я наблюдаю за кем-то в 3 часа ночи, запускающим десятую параллельную сессию агента и говорящим мне, что никогда не был продуктивнее — в этот момент я не вижу продуктивность. Я вижу кого-то, кому, возможно, нужно на время отойти от машины. И я задаюсь вопросом, как часто этот кто-то — я.
Две вещи для меня сейчас одинаково верны: ИИ-агенты удивительны и дают огромный прирост продуктивности. Они также массивные машины по производству слопа, если выключить мозг и полностью отпустить контроль.
Подпишитесь на канал и каждый день читайте лучшие материалы про AI переведенные на русский!
Нашли интересную статью для перевода? Пришлите нашему боту: @ailongreadsbot