Золотая лихорадка ИИ-агентов. Делегирование неопределённости
Золотая лихорадка ИИ-агентов. Делегирование неопределённости

Полная версия

Золотая лихорадка ИИ-агентов. Делегирование неопределённости

Язык: Русский
Год издания: 2026
Добавлена:
Настройки чтения
Размер шрифта
Высота строк
Поля
На страницу:
5 из 5

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

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

Поэтому надёжность таких систем и оставалась слабой, и упиралась она не в число ролей. Добавить в схему ещё одну роль — второго проверяющего, ещё одного архитектора, руководителя над руководителем — значило добавить ещё одну копию той же модели с тем же незнанием задачи, только под новым названием. Переписка становилась длиннее, согласования подробнее, а определённости оставалось ровно столько, сколько было во фразе, с которой всё началось. Прибавить её роли не могли: каждая получала на вход то, что выдала предыдущая. По сути, роль менеджера получала ту же фразу-желание, какую весной вписывали в одиночную программу, и дальше эта фраза только переходила из рук в руки, обрастая документами. Разделение труда перенесли по форме, не заметив, что работает оно на содержании.

Спросим эту эпоху о том же, о чём спрашивали реку в 1849 году: знал ли старатель, где искать. Прямого ответа она не даёт. Вместо ответа она показывает три лотка, которым раздали должности: один размечает участок, другой моет, третий смотрит на дно. Движения распределены толково, никто никому не мешает, со стороны это похоже на хорошо поставленную добычу. Но лоток, которому поручено размечать, не знает, где жила. Он знает только, что его дело — размечать, и проведёт границы участка уверенно, потому что уверенность входит в его роль. Место он выберет там, где удобно, а остальные будут мыть там, где он разметил. А старатель, который должен был знать место, оставил у воды одну-две фразы и ушёл. На вопрос о знании эпоха ответила распределением обязанностей.

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

Распределение обязанностей не заменяет знания. Оно умеет донести знание до каждого, кому оно нужно, если знание есть: тот, кто понимает, чего хочет, может раздать части работы и не держать в голове каждую мелочь. Если знания нет, распределение разносит по ролям пустые места, и каждое получает своё название. Чем стройнее схема, тем труднее разглядеть, что в её основании ничего не решено: пустое место с табличкой «архитектура» выглядит занятым.

Эпоха ролей спрашивала, кто что делает. Вопрос, кто знает, остался за пределами схемы, там же, где весной остался человек. Все перемены того времени произошли внутри лотка. Цепочка лотков работала слаженнее одного лотка. Но как ни дели движения между лотками, ни одно из них не говорит, где мыть.

3.4. Лоток с сеткой

Следующая перемена пришла не от тех, кто строил ИИ-агентов, а со стороны. Осенью 2023 года учёные из Принстона выложили SWE-bench — набор задач, по которому можно проверить, умеет ли языковая модель чинить настоящие программы. Задачи для него не придумывали. Их взяли из жизни двенадцати популярных репозиториев с открытым кодом: кто-то когда-то сообщил, что программа ведёт себя неправильно, кто-то другой исправил ошибку и приложил к исправлению тесты. Таких историй набралось больше двух тысяч. Модели давали код репозитория и описание ошибки словами и просили исправить. Потом на её правке запускали тесты из того самого исправления, которое когда-то сделал человек: те, что до исправления падали, должны были пройти, а остальные не должны были сломаться. Оценивали не объяснение словами, а то, как ведёт себя код.

Тесты, которые должны пройти. В этом скромном условии главное слово то, которого в нём нет: внешние. Весной того же года критерий готовности отдавали машине вместе с целью, и решала, закончена ли работа, та же модель, что её делала. Здесь критерий стоял вне её досягаемости. Его написали люди, которые эту ошибку однажды действительно исправили, и написали задолго до того, как модель увидела задачу. Модель могла прочесть код, переписать функцию, попробовать ещё раз, но не могла повлиять на то, что будет считаться исправлением. Впервые у настоящей задачи для ИИ-агента появилась проверка снаружи.

Разница видна на одной-единственной попытке. Модель на SWE-bench, закончив правку, ни о чём себя не спрашивала. Вопрос ей задавали тесты, а тестам было всё равно, насколько убедительной правка кажется ей самой. Спросить себя, удалась ли попытка, и получить ответ от того, кто знал задачу раньше тебя, — два разных действия, хотя со стороны оба выглядят как проверка.

Что это меняет, легко проглядеть, потому что сами попытки выглядели как прежде. Модель по-прежнему читала, правила, запускала, ошибалась. Но теперь у каждой попытки был исход: прошла или не прошла. Каждая попытка получает оценку, и попытки сходятся. Первые результаты были скромными: в статье, где авторы описали SWE-bench, лучшая из проверенных моделей справилась примерно с двумя задачами из ста. Но эти два процента были сведениями другого рода, чем утро весны 2023-го. Про то утро можно было сказать только, что финиша нет. Про два процента можно было сказать, какие именно задачи решены, а какие нет, и через полгода проверить, стало ли решённых больше.

Стало. Экзамен из настоящих ошибок настоящих программ быстро превратился в общую мерку, и новые ИИ-агенты один за другим предъявляли свои результаты на нём. В 2024 году одна компания объявила о «первом ИИ-программисте» по имени Devin, и в тот же день появился его открытый двойник, позже получивший имя OpenHands. Часть авторов SWE-bench выпустила SWE-agent, где главной находкой был не новый ум, а удобный для ИИ-агента способ обращаться с компьютером: как открывать файлы, как листать код, как запускать команды. К 2025—2026 годам ИИ-агенты перебрались в терминал разработчика — Claude Code, Codex, — а оттуда в облако. Фоновый ИИ-агент работает в облаке без открытого сеанса: задачу отдают, и он делает её сам, пока человек занят другим или спит.

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

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

Так история и приходит к ночной смене 2026 года. Вечером человек описывает задачу, запускает цикл и уходит. Ночью ИИ-агент в облаке делает попытку, цикл запускает проверку, смотрит на итог и либо возвращает работу с пометкой, что она не прошла, либо переходит к следующему шагу. Попытки идут до утра, и никто на них не смотрит. К утру в облаке лежит история десятков таких попыток, и человек, открывший её, видит не одну попытку, а целую ночь чужого труда.

Если спросить, что изменилось между весной 2023 года и этой ночью, проще всего ответить: всё. Модели сильнее, инструменты удобнее, ИИ-агент дольше держит задачу и реже теряет нить. Но из всех перемен одна отличается по роду. Изменилась не надежда, а лоток: у него появилась сетка, отделяющая золото от песка. Сетка — это проверка снаружи, которую лоток не выбирал и не может передвинуть. Песок — результат, который нельзя принять; золото — тот, что прошёл сетку. Тесты SWE-bench стали первой сеткой, которую увидели все, и почти всё, что пришло после, от удобных интерфейсов до циклов, выросло вокруг неё. Все прежние перемены касались того, как лоток промывает. Здесь лоток впервые получил то, чем промытое можно проверить. В 1849 году эту работу делал сам старатель, разглядывая то, что осталось на дне. Весной 2023-го её отдали самому лотку, и он сам оценивал собственный осадок. Сетка вынесла её обратно наружу, только теперь это не человек над осадком, а тесты, которые не устают к вечеру и не обманываются блеском.

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

Была ли у лотка сетка? Впервые за всю историю лихорадки ответ — да, по крайней мере там, где проверка существует. Знал ли старатель, где искать? Здесь не изменилось ничего. Сетка — свойство лотка, а не реки. Она судит о промытом, но не говорит, где мыть. Жила — место, где промывка честна, и для этого ей нужна не только сетка. Нужно, чтобы кто-то заранее решил, чего мы хотим и как устроено то, что мы строим, а сетка проверяла попытки уже на решённом. Сетка закрывает только половину условия. Старатель 2026 года стоит у реки с лучшим лотком из всех, что у него были, и знает о реке ровно столько же, сколько знал новичок на калифорнийском берегу.

Посмотрим ещё раз на задачи SWE-bench. В каждой из них вторая половина уже была. Кто-то написал, что программа ведёт себя неправильно, — значит, было известно, чего от неё хотят. Репозиторий был устроен задолго до задачи, модули разграничены, и исправление должно было уложиться в эти границы. Тесты написал человек, который ошибку однажды уже исправил. ИИ-агенту оставалось найти путь, и здесь попытки вместе с сеткой работали в полную силу. Это была честная промывка: известно, чего хотим, известно, где искать, и есть чем отличить найденное. Лоток с сеткой впервые показал, на что способен, на реке, где жилу до него нашли другие. В этом нет упрёка экзамену: он и был задуман, чтобы проверять лоток, а не выбор реки. Но в нашей собственной задаче за нас этого никто не делает.

Там, где сетки нет, ИИ-агент 2026 года ведёт себя как AutoGPT с хорошими манерами. Изменились манеры, а не поведение. Весной 2023 года ночь без сетки кончалась зацикливанием, сожжёнными кредитами и отсутствием финиша, и о провале утро сообщало само. ИИ-агент 2026 года не зацикливается. Он пишет аккуратный код, разбивает работу на осмысленные коммиты с внятными описаниями, и к утру на панели горят зелёные галочки. Он заканчивает не потому, что кончились деньги, а потому, что сам счёл работу готовой. Финиша, который можно принять, как не было, так и нет. Есть конец, который выбрал лоток.

Поведение — это то, что остаётся, если снять манеры. А под ними та же схема, что весной: цель словами, план, действие, наблюдение, и наблюдение оценивает тот же, кто действовал. Человек снова вне контура, только контур стал длиннее и опрятнее. Если в задаче не решено, чего мы хотим, ИИ-агент решит это сам, как решала программа весны. Разница лишь в том, что весной такой выбор был нелепым и бросался в глаза, а теперь он пристойный, грамотный и выглядит так, будто его кто-то сделал обдуманно.

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

Манеры — это то, чему лоток мог научиться сам, и научился он им блестяще. Опрятность кода, уверенный тон коммитов, привычка разбивать работу на части — всё это умения лотка, и за три года они выросли больше, чем кто-нибудь ждал весной. Но знание жилы не растёт вместе с ними, потому что оно никогда не было умением лотка. Хорошие манеры не заменяют сетку. Они только делают её отсутствие незаметным. AutoGPT хотя бы зацикливался у всех на виду. ИИ-агент с хорошими манерами промывает песок так чисто, что утром его трудно отличить от золота.

3.5. Продавцы лопат

У любой лихорадки есть участник, которого не видно на картине с рекой. Он не стоит в воде и не держит лотка. Он стоит за прилавком: в лагере у прииска, в городке, куда сходятся тропы с берегов, на пристани, куда приходят корабли с новичками. Он продаёт лотки и лопаты, муку и сапоги, место в повозке до реки. Всё, что старатель вычитал из своей скромной прибыли, в этой лавке записывали в доход. Современные работы историков калифорнийской лихорадки подтверждают то, что звучит как поговорка: торговцы заработали на ней гораздо больше старателей. Самым богатым человеком Калифорнии первых лет лихорадки обычно называют не того, кто намыл больше всех золота, а хозяина лавок, открытых у самых приисков.

В этом нет ни загадки, ни хитрости. Есть механика. Лоток покупают до того, как им зачерпнут первый песок. Старатель ставит на реку. Лавочник на реку не ставит ничего: его доход зависит не от того, сколько золота в воде, а от того, сколько людей пришло к воде. Пустой вечер старателя для лавки обычный торговый день. И ещё одно: тот, кто знает, где мыть, покупает инструмент один раз и работает им на своём месте. Тот, кто не знает, уходит выше по течению, потом ниже, берёт муки ещё на неделю, меняет сношенное на новое и снова идёт искать. Никто этого не замышлял, и никто не должен был замышлять. Так устроена любая лихорадка, начиная с 1849 года: надёжнее всех зарабатывают те, кто продаёт инструмент, потому что инструмент покупают независимо от того, есть ли в реке золото.

Лопаты этой лихорадки — токены и инструмент, который их тратит. Из токенов сделана каждая промывка: каждая итерация ИИ-агента, каждый прочитанный им файл, каждая попытка, которую цикл отправил на проверку. Продавцы лопат и здесь получают своё так же, как лавочник у прииска: за лопату платят одинаково, чем бы ни кончилась ночь, принятым diff или горой песка. Весной 2023 года эту лопату было видно. Каждое обращение к модели шло отдельной строкой в счёте, и утром счёт лежал рядом с результатом ночи. Он ничему не учил, но задавал вечеру вопрос: стоит ли эта задача ночи? Вопрос неудобный и полезный. Чтобы на него ответить, приходилось хотя бы прикинуть, есть ли на этом месте что мыть.

Плоская подписка устроена иначе. За неё платят раз в месяц, и сколько ни копай, больше не заплатишь. Лопата от этого не стала бесплатной: за неё заплачено. Но она стала бесплатной на ощущение. Отдельная ночь больше ничего не стоит в ту минуту, когда человек вечером прикидывает, запускать или нет. И вечерний вопрос переворачивается. Раньше он звучал так: стоит ли задача ночи. Теперь иначе: чем бы занять ночь. Она всё равно оплачена, и оставить её пустой кажется потерей. Такую ночь «жалко не использовать».

Это повод, и повод сильный, потому что у него нет задачи, зато есть время. Под свободную ночь задача находится всегда. Чаще всего не та, где известно, что искать, а та, что давно лежит в голове недодуманной: переписать как следует, привести в порядок, наконец сделать. Её и отдают, не выяснив сперва, где копать: копают без разведки. Ночь, отданная большой промывке, кажется использованной полнее, чем ночь, после которой человек только узнал бы, где мыть. Лопата, бесплатная на ощущение, убирает ровно то, что раньше давал счёт, — паузу перед тем, как копнуть.

У лихорадки есть и публичная сторона. Счётчик токенов, на который ночью так приятно смотреть, недолго оставался личным делом. Появились таблицы, где люди сравнивают свой расход: кто сжёг больше токенов за неделю, за месяц, у кого ИИ-агенты работали дольше и шире. Наверху — тот, чей счётчик крутился быстрее всех. Рядом с его именем стоит число, и число честное: столько токенов действительно ушло. Но посмотрим, что именно оно считает. Токены тратятся на промывку, а не на золото. Они одинаково уходят на ночь, после которой утром было что принять, и на ночь, после которой принять было нечего. В таблице нет колонки «принято». Лидерборды расхода токенов меряют количество промытого песка и превращают его в статус.

Здесь таблица делает то, чего от неё никто не хотел. Тот, кто знает, где копать, обычно тратит меньше: он моет на одном месте, у него есть чем проверить промытое, и заканчивает он раньше утра. Тот, кто не знает, моет всю ночь и следующую, переходит с места на место, и его счётчик растёт быстрее. В рейтинге расхода он выше. Знание места выглядит в такой таблице бедностью, незнание — размахом. Трудно представить старателя, который гордился бы числом лотков, промытых за сезон: гордились тем, что осталось на дне. И как толпа на калифорнийском берегу, эта таблица убеждает самим своим размером.

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

Всё держится на этом «если». Лавка продаёт одну и ту же лопату опытному горняку из Соноры и новичку, который неделю назад впервые увидел реку. Продать вместе с ней знание места лавочник не может, да и не обязан. Ему не нужно знать, где золото: его товар хорош на любом берегу. Знание места никогда и не было товаром. Его нельзя отвесить, как муку, и нельзя выдать вместе со сдачей: оно бывает только у того, кто сам стоит у реки, и остаётся при нём. Это условие возвращает к 1849 году, к тому, что отличало удачливых: не лоток и не лопата, а умение знать, где искать. На прилавке его не было тогда. Нет и теперь.

Конец ознакомительного фрагмента.

Текст предоставлен ООО «Литрес».

Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.

Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.

Конец ознакомительного фрагмента
Купить и скачать всю книгу
На страницу:
5 из 5