Skip to content

Vercel создал язык для ИИ. Почему?

Vercel только что запустил Zero, системный язык, где весь toolchain общается на JSON для агентов ИИ. Но в мире, где LLM уже освоили Rust и Python, является ли это необходимой инновацией или решением в поисках проблемы?

Stork.AI
Hero image for: Vercel создал язык для ИИ. Почему?
💡

Кратко / Главное

Vercel только что запустил Zero, системный язык, где весь toolchain общается на JSON для агентов ИИ. Но в мире, где LLM уже освоили Rust и Python, является ли это необходимой инновацией или решением в поисках проблемы?

Больше, чем язык: AI-нативный Toolchain

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

Язык Zero от Vercel радикально переосмысливает это взаимодействие. Весь его toolchain выводит структурированный JSON для каждой диагностики, устраняя разрыв между человеческой читаемостью и машинной обрабатываемостью. Это включает точные детали, такие как серьезность, код ошибки, точное местоположение, ожидаемые и фактические значения, а также встроенные предложения по исправлению, предлагая детализированный, машиночитаемый обзор проблем с кодом.

Toolchain Zero явно предоставляет опцию JSON для каждого вывода, гарантируя, что компиляторы, линтеры и другие компоненты предоставляют данные, отформатированные для потребления ИИ. Диагностика в этой структуре JSON детализирует не только сообщение об ошибке, но также ее `severity`, уникальный `code` и точное `location` в исходном файле. Кроме того, она включает действенные поля `help` для LLM и рейтинг `fix safety`, указывающий, требуется ли человеческий обзор.

Рассмотрим команду `zero fix --json`, яркий пример этого AI-нативного подхода. При вызове она не просто выявляет проблемы; она генерирует всеобъемлющий, машиночитаемый «план» в формате JSON. Этот план описывает конкретные изменения, оценивает `safety levels`, определяет `mode` и детализирует действия `applies edit` и `self-host repair policy`, предоставляя LLM весь необходимый контекст для прямого и надежного выполнения исправлений кода, без необходимости обширного обучения или человеческого вмешательства.

Код, который не может лгать: Возможность 'World' в Zero

Zero отстаивает явный принцип, требуя от разработчиков четко объявлять побочные эффекты функции. Центральное место в этом занимает возможность `world`, обязательная аннотация для любой операции I/O. Это включает доступ к файлам, сетевые вызовы или даже просто вывод в консоль. Ее присутствие немедленно сигнализирует о побочном эффекте I/O; ее отсутствие гарантирует функцию без I/O, предлагая немедленную ясность как для человека, так и для читателей ИИ.

Эта система возможностей обеспечивает надежную безопасность на этапе компиляции. Компилятор активно отклоняет недоступные возможности для данной цели, предотвращая сбои во время выполнения. Например, попытка доступа к файловой системе внутри функции, скомпилированной для цели WebAssembly (WASM), которая не имеет прямого взаимодействия с файловой системой, вызывает ошибку на этапе компиляции. Это предотвращает неожиданности и обеспечивает предсказуемые среды выполнения перед развертыванием.

Помимо I/O, Zero распространяет явность на обработку ошибок. Функции, которые могут завершиться сбоем, используют ключевое слово `raises`, в то время как `check` явно распространяет потенциальные ошибки, отражая строгие концепции безопасности Rust, но с отчетливой, дружественной к ИИ реализацией. Этот всеобъемлющий подход гарантирует, что код «не может лгать» о своем поведении, что является критически важным атрибутом для надежной генерации и исправления кода, управляемого ИИ.

Впечатляющая демонстрация, сомнительная предпосылка

Демонстрация Zero от Vercel оказалась впечатляющей. LLM, без предварительного обучения языку, успешно отладила код Zero, используя только структурированный JSON-вывод инструментария. Это продемонстрировало видение того, как ИИ-агенты автономно понимают и устраняют ошибки программирования, что является ключевым обещанием ИИ-ориентированного инструментария.

Однако предпосылка о том, что ИИ *нуждается* в новом языке для этой возможности, требует тщательного изучения. Устоявшиеся системные языки, в первую очередь Rust, годами предлагали генерируемые компилятором JSON-выводы ошибок, хотя, возможно, и не с такой всеобъемлющей, глубокой интеграцией, как у Zero, во все компоненты инструментария. Фундаментальная концепция машиночитаемой диагностики не является совершенно новой.

Что еще более важно, основное предположение об ограничениях LLM может быть ошибочным. Современные большие языковые модели демонстрируют замечательную способность анализировать и действовать на основе традиционных, удобочитаемых для человека ошибок компилятора и трассировок стека. Они извлекают выгоду из огромных обучающих наборов данных, включающих миллиарды строк кода и связанных сценариев отладки на существующих языках. Zero должен преодолеть этот огромный дефицит данных, чтобы доказать свою необходимость, особенно когда LLM уже отлично справляются с такими языками, как Python, JavaScript и Rust. Для получения дополнительной информации посетите официальный сайт Zero Programming Language.

Взгляд в будущее, но не в настоящее

Zero, несомненно, представляет собой мощное доказательство концепции. Vercel успешно продемонстрировал, как язык и его инструментарий, созданные с нуля для ИИ-агентов, могут открыть совершенно новые парадигмы отладки. Его структурированный JSON-вывод, напрямую потребляемый LLM, и явная возможность `world` для четкой маркировки операций ввода-вывода предлагают убедительный взгляд на будущую разработку, ориентированную на ИИ.

Несмотря на это убедительное видение, Zero сталкивается с огромным препятствием на пути к внедрению. Разработчики, создающие критически важные или сложные системы, уже полагаются на глубоко укоренившиеся, зрелые экосистемы, такие как Rust, Zig и Go. Эти устоявшиеся языки могут похвастаться обширными, проверенными в боях библиотеками, надежными инструментами и активными сообществами, которых Zero в настоящее время не хватает. Отказ от таких прочных основ в пользу зарождающегося языка, даже с его функциями, дружественными к ИИ, остается монументальной задачей для большинства инженерных команд.

Zero, возможно, не получит широкого распространения, но его наследие может оказаться преобразующим. Язык подталкивает существующие инструментарии к развитию, заставляя их предоставлять более богатые, более структурированные выводы для ИИ-агентов. Смелый эксперимент Vercel эффективно прокладывает путь к тому, как все языки программирования могут в конечном итоге адаптироваться к будущему, управляемому ИИ, влияя на принципы проектирования, а не полностью заменяя существующие решения.

Часто задаваемые вопросы

Что такое Vercel Zero?

Zero — это новый системный язык программирования от Vercel, разработанный для сотрудничества человека и ИИ. Весь его инструментарий выводит структурированный JSON, чтобы помочь ИИ-агентам читать, отлаживать и исправлять код без предварительных обучающих данных.

Чем Zero отличается от Rust или Zig?

Хотя Zero также является системным языком, его ключевое отличие — это ориентированный на ИИ инструментарий, который выводит структурированный JSON. Он также имеет явную систему возможностей 'world' для управления побочными эффектами ввода-вывода во время компиляции.

Действительно ли ИИ нужен новый язык программирования, такой как Zero?

Это центральный вопрос дискуссии. Сторонники утверждают, что структурированные данные из инструментария Zero делают ИИ более надежным. Скептики указывают, что LLM уже хорошо справляются с отладкой удобочитаемых языков, таких как Rust и Python.

Что такое возможность 'world' в Zero?

Возможность 'world' — это ключевое слово, используемое для явной пометки функций, выполняющих операции ввода-вывода (например, доступ к файлам или сетевые вызовы). Это позволяет компилятору применять правила, например, предотвращая использование API файловой системы сборками WebAssembly.

One weekly email of tools worth shipping. No drip funnel.

one email per week · unsubscribe in two clicks · no third-party tracking

Часто задаваемые вопросы

Что такое Vercel Zero?
Zero — это новый системный язык программирования от Vercel, разработанный для сотрудничества человека и ИИ. Весь его инструментарий выводит структурированный JSON, чтобы помочь ИИ-агентам читать, отлаживать и исправлять код без предварительных обучающих данных.
Чем Zero отличается от Rust или Zig?
Хотя Zero также является системным языком, его ключевое отличие — это ориентированный на ИИ инструментарий, который выводит структурированный JSON. Он также имеет явную систему возможностей 'world' для управления побочными эффектами ввода-вывода во время компиляции.
Действительно ли ИИ нужен новый язык программирования, такой как Zero?
Это центральный вопрос дискуссии. Сторонники утверждают, что структурированные данные из инструментария Zero делают ИИ более надежным. Скептики указывают, что LLM уже хорошо справляются с отладкой удобочитаемых языков, таких как Rust и Python.
Что такое возможность 'world' в Zero?
Возможность 'world' — это ключевое слово, используемое для явной пометки функций, выполняющих операции ввода-вывода . Это позволяет компилятору применять правила, например, предотвращая использование API файловой системы сборками WebAssembly.
🚀Узнать больше

Будьте в курсе трендов ИИ

Откройте лучшие инструменты ИИ, агенты и MCP-серверы от Stork.AI.

P.S. Сделали что-то полезное? Опубликуйте на Stork — $49

Все статьи