Transcription
Хорошо. Привет. Эм, очень приятно вас видеть, ребята. Эм, это, это так интересно видеть, как, как после такого долгого дня вы все еще пришли, и, э, я всегда очень польщен, когда, когда я пытаюсь что-то представить, и, и люди здесь. Это просто, э, я, я, если это заставляет вас чувствовать, что то, что вы делаете, имеет значение.
Итак, сегодня тема, о которой я хочу поговорить, это, типа, не делайте халтуру, четыре уровня зрелости ИИ-агентов. И что я пытаюсь сделать здесь, это я хочу, я хочу поговорить о чем-то, что, типа, многие люди мне об этом говорили, и существует, типа, проблема массового психоза. Итак, по сути, это что-то вроде, это как каждый человек чувствует, что, эм, вокруг всех вас есть, типа, эти гигантские наборы роботов, которые просто, типа, легко справляются со множеством вещей, и, и вы, типа, посредине, и вы так запутаны. Вы так запутаны, типа, что это, что, что мне делать? Должен ли я иметь, типа, 15 агентов, которые постоянно что-то делают, и я просто, типа, живу в этом, или, или я должен быть, типа, крестьянином и просто, типа, читать каждую строку кода? И это, это очень трудно, типа, принять решение. Я чувствую, что вы приходите в такое место, и вы всегда, типа, формальность просто, типа, овладевает вами. У вас, типа, паническая атака или что-то в этом роде. Но, типа, я думаю, я думаю, я хочу, я как бы хочу отстраниться от этого и скажу: "Ребята, давайте замедлимся. Давайте просто замедлимся. И давайте продумаем, типа, какие проблемы мы можем, типа, на самом деле решить, и я, типа, на самом деле помогу вам создать, типа, действительно полезных агентов." И я хочу позаботиться, типа, о каждом конце спектра, типа, вашей необходимости создавать вещи очень быстро, но в то же время, типа, вашей необходимости в определенный момент создавать вещи медленно и доводить их до продакшена. Итак, это, это, по сути, эм, цель.
Чтобы дать вам пример, типа, массового психоза, типа, есть много вещей, которые очень похожи. Итак, я дам вам, дам вам пример, типа, трех пользовательских интерфейсов. И это три Frontier Labs, и я гарантирую, что ни один из вас не сможет предсказать, какой из них какой. Э, один из них — factory, один из них — Codex, и один из них — Cursor. Я, я уверен, никто из вас не знает, какой из них какой. Даже я не знаю, какой из них какой. Но да, так что это, по сути, суть. Типа, все одинаково. Вы, вы хотите делать свое дело.
Итак, чтобы создавать агентов в частности, э, вот что, вот что я бы, я бы представил здесь. Что я хочу разбить эту проблему создания агентов на, типа, четыре разные части. Первая часть — это просто, типа, как-то найти способ, типа, посмотреть, имеет ли это вообще смысл, типа, работает ли это вообще. Это, типа, где вы используете фреймворк. Вторая часть — это, типа, когда вы на самом деле серьезны, типа: "Окей, я на самом деле хочу что-то здесь сделать." Теперь вы создаете вещи сами, типа, как, типа, конечный автомат, типа, создавая настоящего агента. Третья часть — это, типа, рабочий процесс UX, где вы используете Канбан, который, я предлагаю, является, типа, отличным, э, форм-фактором для работы с агентами. И четвертая часть будет, типа, развертывание в облаке. Итак, это, типа, в основном, прочитанный набросок того, типа, как мы хотим, э, работать с агентами. Но я думаю, это даст вам хорошую эвристику, типа, как вы, как вы бы, э, решили эту проблему.
Итак, первый уровень создания агентов — это, типа, буквально просто, типа, вы просто используете фреймворк. И я, я думаю, есть, типа, пара разных фреймворков, э, таких как LangChain, LangGraph. Типа, я, я бы не стал, я не использую их. Я, я, я работаю, типа, с клиентом. Я, я, я должен, типа, писать весь этот агентский опыт сам. Так зачем мне использовать фреймворк? Так что я не буду лучшим человеком, чтобы давать вам советы, но я думаю, что если вы пытаетесь найти PMF, если у вас есть проблема, типа: "Эй, у меня есть эта проблема, где я хочу иметь возможность, я не знаю, агрегировать электронные письма или делать что-то, типа, элементарное, и я думаю, что, типа, ИИ-агент, вероятно, будет полезен здесь. Мне, вероятно, не важна лучшая модель. Я просто, я просто хочу что-то, что работает." Любой из фреймворков агентов может дать вам что-то, что просто работает, типа, за полчаса. Вы можете просто написать код так. Это, это, это, это отличная вещь для начала. Это отличная вещь, чтобы увидеть, что агенты на самом деле работают и что вы можете создавать их сами.
Есть много подводных камней, связанных с, э, использованием фреймворков. И один из самых больших, я думаю, это то, что, типа, если вы действительно хотите довести вещи до продакшена, если вы действительно хотите создать что-то серьезное, очень быстро вы узнаете, что, типа, уровень настраиваемости, уровень, типа, футуристичности, уровень, эм, модульности, который вам нужен, вы просто, вы не найдете их во фреймворке. Я знаю много людей, которые не согласны со мной, и многие из этих людей ошибаются.
В любом случае, эм, так что второй уровень — это, типа, создание, создание ваших агентов самостоятельно, верно? Итак, вот как вы, вот как вы создаете, вы, типа, я чувствую, что, я чувствую, что это, типа, очень сложная проблема, типа, я не могу ее упростить. Так что я, я просто, типа, дам вам, типа, пять правил, типа, когда вы на самом деле пишете код для создания своих агентов, типа, есть, есть пять правил, которые вы могли бы использовать. Эм, и эти правила, типа, дадут вам общий набросок, типа, как, как создавать и писать, писать код для вашего собственного агента.
Итак, первое — это, типа, вы всегда хотите думать о каждом агенте как о, типа, конечном автомате. Эм, конечный автомат — это, типа, тема второго или первого курса, но, типа, конечный автомат — это, по сути, типа, каждый агент в конце концов является, типа, рекурсивным циклом. Это, это, по сути, типа, каждый, каждый, каждый цикл хайпа, что бы вы ни думали, это в конце концов, это все рекурсивный цикл while. Это цикл while с несколькими условиями. И независимо от того, что делает ваш агент, он, он всегда, неважно, это курсор-часы или что-то еще, это цикл while с несколькими условиями и несколькими конечными состояниями. И что вы хотите иметь возможность делать, это в любой момент времени вы хотите иметь, типа, ментальную модель того, в какой точке состояния он находится. Итак, допустим, вы хотите иметь возможность, типа, сказать, эм, окей, так что, допустим, вы хотите иметь возможность, э, я полагаю, прочитать несколько файлов и объяснить их, э, через код часов. Итак, он начинается с задачи пользователя сверху, где вы просите его, типа, прочитать несколько файлов. Он переходит в состояние, типа, чтения нескольких файлов и, типа, инструмента действия, где он читает файл, затем он понимает: о, я прочитал файл, это имеет смысл. И затем он вызовет инструмент завершения и просто, типа, завершит, и, и правильная, правильная вещь внизу, завершение задачи, это когда конечный автомат заканчивает работу. Э, вы можете сделать это очень сложным способом, где вы можете, типа, прогнать весь конечный автомат в течение, типа, 8-10 минут или даже, типа, часов, если захотите. Э, но по сути, каждый агент — это конечный автомат. Если вы можете визуализировать это как ментальную модель, то каждый раз, когда вы создаете агента, вам будет намного легче это обдумывать.
Эм, второе правило заключается в том, что каждая вещь, которую вы добавляете к агенту, рискует сделать его хуже. Я думаю, это самое трудное, что мы усвоили, и это был очень горький урок, который усвоили многие разработчики агентов, а именно то, что большие системные промпты, множество различных граничных случаев, множество различных, типа, причудливых if-else логик, все это для передовых моделей просто, просто делает их хуже. Просто, типа, просто, просто не мешайте модели — это, это урок, который мы усвоили, а именно то, что, типа, передовые модели настолько хороши в своей работе, что чем меньше инструкций вы им даете, тем лучше они на самом деле работают. Классический пример: если вы посмотрите репозиторий Codex, промпт для GPT-5 по сравнению с промптом для GPT-5.3 составляет 1/3 размера. Э, часть причины этого в том, что новые модели настолько хороши в своей работе, что давать им слишком много инструкций и более длинные системные промпты приводит к сенсорной перегрузке, когда они получают так много инструкций, что перегружаются и не могут понять, что делать правильно. Эм, так что я думаю, чем проще, тем всегда лучше, и это, типа, вы должны думать, что, типа, каждую вещь, которую я добавляю, я, я буду очень осторожен, чтобы я, я, надеюсь, Боже, я не делаю ее хуже, и просто всегда старайтесь ее сокращать. Мы, мы зашли так далеко, что буквально переписали весь клиент, потому что поняли, что было так много, э, мусора из старых, старых версий клиента. Код клиента был написан, я думаю, по крайней мере семь раз с нуля, я думаю. Эм, но опять же, эм, люди в команде могут знать лучше.
Эм, третье правило заключается в том, что вы хотите иметь возможность сделать агента легкой частью псевдо-RL конвейера. И это сложный момент, но по сути это означает, что всякий раз, когда вы создаете агента, вы хотите иметь возможность иметь что-то вроде CLI. Причина в том, что пока у вас есть что-то, что может очень хорошо создавать и тестировать агента в форме CLI, эм, вы хотите иметь возможность создавать вещи, которые очень легко создавать и тестировать с другими кодирующими агентами. Итак, прямо сейчас есть такая вещь, есть такой, типа, интерактивный танец, который происходит между ИИ и людьми, где, и в былые времена люди, типа, направляли ИИ, типа, делай это, и я думаю, что в этот момент мы находимся в точке, где людьми руководит ИИ. И это, я думаю, является частью того, где, типа, если вы как человек хотите иметь возможность создавать вещи таким образом, чтобы, типа, ИИ мог очень легко с ними работать. Итак, это может повлечь за собой написание, написание, вы знаете, agents.md, где вы используете правильные навыки. И создание, типа, CI CI или CD таким образом, чтобы, типа, агент, другие кодирующие агенты могли легко создавать вашего агента, тестировать его, вносить в него изменения, а затем тестировать его от начала до конца, является очень важной частью, потому что таким образом, если вы хотите внести изменения, вы можете просто позволить, позволить долго работающему агенту прогнать их в параллельном потоке. Он внесет все эти изменения, протестирует их, и у вас будет все это работать. Но, если его сложнее создавать и тестировать, вам также будет сложнее, типа, использовать агентов для работы над вашим агентом. Супер мета.
Эм, правило номер четыре: не будьте неряхами. Ребята, пожалуйста, ради Бога, не, не, не делайте халтуру, пожалуйста. Я думаю, что, я думаю, что есть, есть, типа, так много пропускной способности, которую вы можете получить, и так много токенов, которые могут проходить очень, очень быстро. Я думаю, что лучшие уроки, которые мы усвоили как, типа, настоящие инженеры, это то, что, типа, действительно стоит потратить некоторое время, просто, типа, обдумывая архитектуру, обдумывая дизайн и набросок того, что должен делать ваш агент, убедившись, что это на самом деле имеет смысл, и, и просто, типа, на самом деле хотя бы потратить некоторое время на чтение кода, даже если вы не пишете все вручную. Я думаю, что это, типа, для нас мы обнаружили, что это супер критично, потому что я думаю, что это, это, по крайней мере, архитектурная часть создания агента должна быть сделана человеком и должна быть сделана, типа, очень вдумчиво. Даже если вы используете, типа, агента для разговора с ним, потратьте много времени, типа, пытаясь продумать, типа, какой будет архитектура, какой будет конечный автомат. Не, не просто позволяйте, типа, э, другим моделям, типа, прогонять код.
Эм, и затем правило 50: Frontier Labs как бы хотят вас заблокировать. И это сложный момент. Многие люди не согласятся, но по сути происходит то, что часто, когда вы работаете с API Frontier Labs, API пытаются вас заблокировать, и они усложняют взаимозаменяемость. Итак, чтобы привести очень точный пример, новый набор моделей, которые вышли, скажем, Opus 4.6, э, Gemini 1.5 1 Pro, 5.3, у них есть такая вещь, называемая трассировкой рассуждений, и трассировки рассуждений — это, эм, часть кеша, и они также являются частью цикла вычислений во время тестирования рассуждений, который выполняет модель. И когда у вас есть разговоры и переписка с этими моделями, вы хотите отправлять трассировки рассуждений в точном, точном формате, который ожидается. Если вы этого не сделаете, ответ все равно будет работать, за исключением того, что производительность будет снижена, и вы никак не сможете об этом узнать. И многие люди как бы упускают огромные приросты производительности, которые приходят от новых моделей, потому что они просто, типа, не используют API точно так, как они должны использоваться. Эм, и есть асимметрии в API. Итак, некоторые могли бы возразить: "Эй, может быть, вы могли бы использовать Open Router." Но я не думаю, что этого достаточно. Я думаю, вы действительно хотите быть осторожными, что, типа, если вы используете разные Frontier Labs и разные, э, API Frontier Lab, типа, они, они заставляют вас очень тщательно продумывать, э, работает ли API правильно, и вы на самом деле его протестировали.
Эм, так что форм-фактор — это, типа, следующий шаг — это, типа, форм-фактор того, типа, как вы, типа, как вы визуализируете агентов, верно? Итак, я думаю, изначально я вернулся к, типа, одному из предыдущих слайдов, я пытался показать вам, ребята, типа, то, где, типа, Codex и, э, Cursor и другие, они все выглядели одинаково. И я думаю, у меня другое утверждение. Итак, для этого, э, э, 26 марта я сделал твит, э, где я сказал, что мы, люди, должны использовать Канбан. Итак, Канбан-доски, я думаю, если кто-то использовал Linear, что угодно, я, я все вы знакомы с Канбан-досками. Итак, мой аргумент в том, что Канбан-доски — это то, что нужно использовать. Ганс из аудитории был достаточно любезен, чтобы предложить мне свои мысли. Так что, большое спасибо. Итак, Канбан-доски — это, это, это идея, что, типа, если вы работаете с агентом, вы всегда ограничены выводом. Многие из вас работают с, типа, Kodak's или Alpha's, и это работает по 8-10 минут за раз. Ну, один из агентов работает 8-10 минут. Что вы делаете? Вы могли бы скроллить ленту, но вы можете скроллить только долго. Итак, затем вы запускаете другого агента, верно? Итак, таким образом у вас есть по крайней мере, типа, два или три агента, работающих параллельно все время, потому что вы ограничены выводом. И все они, типа, потенциально изменяют один и тот же источник. Итак, вы хотите изолировать то, что они изменяют, чтобы позаботиться о том, типа, изоляции состояния, а затем ограничении вывода, лучший форм-фактор UX для меня — это Канбан-доска, главным образом потому, что она заботится о том, чтобы дать вам, типа, она делает вас, типа, инженером-менеджером, который может смотреть на всех ваших агентов. И она дает вам, типа, обзор на уровне заголовков того, что они собой представляют, и это также помогает вам создавать, типа, потоки с ними, что, типа, окей, если эти две задачи закончатся первыми, то я сделаю другую задачу. И это помогает вам, типа, стать, типа, вы, вы, по сути, становитесь, типа, инженером-менеджером, и все ваши агенты — это ваши IC, и, и вы можете смотреть на них через это. Итак, я делал это заявление 26 марта, и 10 часов назад Clock Code выпустил то же самое. Так что, я считаю, я был прав.
Эм, эм, окей. Итак, да, вы можете использовать это через клиент Clock Code, где бы вы ни могли использовать клиент, что угодно, что вам подходит. Эм, так что, да, так что вы хотите думать о Канбане как, по сути, о менеджере по инженерии, которым вы бы были.
Затем есть, типа, последний шаг, типа, окей, у вас есть, у вас есть, типа, агент, вы его протестировали, вы его сделали, и у вас, у вас есть хороший форм-фактор UX, чтобы, типа, взаимодействовать с ним и смотреть на него. Что вы, что вы делаете тогда? Типа, как вы, как вы, как вы, как вы имеете агента, который просто, типа, полезен, он хорошо работает, но он, он масштабируется. Он действительно масштабируется для, типа, миллионов задач, миллионов пользователей. Если вы работаете в компании, в которой, скажем, 8000 человек, как вы, типа, как вы убедитесь, что, типа, все они могут, типа, очень легко взаимодействовать с этим? И я думаю, что вместо того, чтобы, вместо того, чтобы, типа, заставлять людей устанавливать и, типа, вы знаете, иметь эти сложные рабочие процессы на машинах и все такое, это просто, это просто так много мусора, и это так трудно, просто, типа, уберите это все, уберите это все. Сделайте тяжелую работу один раз. Просто перенесите все это в облако.
Эм, так что, есть много преимуществ облачных агентов, но главное из них в том, что, типа, вы можете полностью распараллелить и иметь, типа, отдельную машину для каждого из них. Нет, типа, локальных зависимостей, типа, в облаке, типа, агент может настроить окружение, выполнить все задачи UX, потому что прямо сейчас одна из самых недостающих частей, то, что многие люди не используют, что я использую довольно широко, это облачные агенты, потому что они действительно могут работать очень долго. Итак, я, я на своем телефоне часто отправлял задачи, которые выполнялись бы облачным агентом в течение, типа, 15-20 минут. Итак, допустим, это, типа, изменение UX, типа, эм, иди создай это расширение VS Code. И это расширение VS Code, я хочу, чтобы ты вошел сюда. Я хочу, чтобы ты нажал на настройки. Я хочу изменить настройки на, эм, э, выбрать эту команду. И затем я хочу, чтобы ты протестировал эту вещь в терминале. И облачные агенты настолько хороши, что они на самом деле вручную выполнят все клики тестирования Q&A, которое я только что описал, самостоятельно. Выяснят, работают ли они. И если они не сработают, он просто будет продолжать итерировать, продолжать пытаться. И эта вещь могла бы легко занять, типа, 50-60 минут. Но если вы отправляете, типа, много таких задач параллельно через свой телефон или через свой ноутбук или что угодно, что угодно, эм, я думаю, у вас, у вас есть, типа, эта действительно легко настраиваемая, расширяемая вещь. И это помогает вам масштабироваться очень быстро. И затем вы могли бы отправлять ему эти задачи, типа, работающие в, типа, облачной машине, типа, вы знаете, как мессия, и вы могли бы вернуться к своему ноутбуку, и затем это, типа, о, вы можете просто загрузить PR, и затем у вас все работает. Эм, другой аспект, типа, облачных, облачных агентов в том, что, типа, если вы работаете со многими разными людьми, эм, я думаю, что это просто, типа, помогает вам создать, типа, общую настройку, которую, типа, так много других людей могут разделять и так много людей могут изменять.
Эм, так что я думаю, что объединение этого, я думаю, было бы, типа, окончательным форм-фактором. Итак, мое, мое утверждение в том, что, типа, существует будущее, где, эм, большая часть UX работы с агентами будет Канбан, а затем большая часть фактических вычислений, э, связанных с, э, с агентами, будет в, в облаке.
Эм, я думаю, эти четыре уровня фреймворков — это просто, типа, некоторая последняя часть, типа, вы знаете, Канбан и развертывание в облаке. Типа, эти вещи — очень сложные и очень запутанные проблемы. И я думаю, что если бы я был вами, я бы просто, типа, использовал это как, типа, грубую эвристику и начал с, типа: окей, позвольте мне просто, типа, позвольте мне просто сделать самый минимум легкого, а затем просто, типа, в зависимости от того, сколько усилий я хочу приложить, я буду, типа, скользить вверх и вниз, эм, вверх и вниз по этим уровням.
Итак, да, это все от меня, и да, так что, эм, я, я сделал много смелых заявлений. Я чувствую, что, я думаю, я оставил много, типа, открытых вопросов здесь. Если у вас есть какие-либо вопросы, если у вас есть какие-либо мысли, это может вам навредить, вы очень можете связаться со мной, прислать мне любые вопросы, и, э, да, эм, было очень, очень любезно с вашей стороны уделить мне ваше время. Э, большое спасибо. Могу я сфотографировать вас? Хорошо. Окей. Хорошо, спасибо. И у вас, ребята, есть вопросы? Типа, у меня есть минутка. Хорошо, это О. Да. Как вы планируете внутри Канбана? Э, типа, я, я, я нахожу, типа, сбор требований туда-обратно, вы знаете, то, то, чтобы агент понял, что он хочет от меня, чтобы это было самой полезной частью. О, да, да, да, да. О, да, позвольте мне, позвольте мне показать вам. Позвольте мне показать вам. Итак, по сути, типа, я думаю, моя интерпретация, интерпретация, интерпретация Канбана заключается в том, что, типа, это просто, типа, если вы видите экран, типа, вы можете зайти в любую задачу, и она даст вам, типа, весь след задачи. Э, и в этот момент это, типа, так что, этот, этот интерфейс, на который вы смотрите, это, по сути, типа, эм, фактический CLI Codex. И я думаю, я бы, я бы, что я обычно делаю, это просто, типа, веду здесь разговор, а затем в определенный момент я знаю, что, типа, брат, ты можешь идти сам, делать свое дело. В этот момент я просто выйду и сосредоточусь на других вещах. И затем, переходит ли оно в другое состояние, когда ему либо нужен ваш обзор, либо оно просит вас >> Да. Да. Да. Итак, Итак, изначально это, типа, это как, допустим, я бы сказал, типа, если я говорю прочитать несколько файлов или что-то еще, верно? Эм, так что, это было бы, типа, изначально оно находится в состоянии выполнения, а затем, когда оно, э, когда оно, типа, нуждается в моем вводе, оно пройдет проверку. Эм, да. Хорошо. Спасибо.