Индустрия искусственного интеллекта долгое время развивалась на основе программного обеспечения, тесно связанного с конкретными производителями аппаратного ускорения. Mojo призван разорвать эту зависимость и предложить разработчикам единую платформу для работы с различными вычислительными системами.

На этой неделе компания Modular представила финальный релиз языка Mojo 1.0, готовый к использованию в промышленных проектах. Разработчики позиционируют Mojo как многофункциональный язык программирования, основная цель которого заключается в стандартизации и унификации разрозненного программного экосистема в сфере искусственного интеллекта.

С помощью Mojo разработчики получают возможность писать код, который работает на графических процессорах, центральных процессорах, специализированных микросхемах ASIC и других платформах обработки данных. В сочетании с платформой MAX для запуска нейросетей язык значительно упрощает создание ИИ-решений, инструментов и компонентов без необходимости привязываться к экосистеме Nvidia CUDA или AMD ROCm.

CUDA является доминирующей платформой в современной ИИ-индустрии, однако она принадлежит Nvidia и оптимизирована под её оборудование. Конкурирующие производители ускорителей нуждаются в открытой и независимой альтернативе, которую можно адаптировать под различные архитектуры.

Крис Латтнер, известный разработчик LLVM, компилятора Clang, языка Swift и технологии MLIR, с 2023 года работает над совершенствованием Mojo. Проект развивался в стартапе Modular, который был приобретён Qualcomm в июне текущего года. Латтнер высоко оценил роль CUDA в развитии отрасли, однако подчеркнул, что современный рынок требует решений, выходящих за рамки единственной платформы.

Mojo объединяет простоту синтаксиса Python с надежным управлением памятью, как в языке Rust, и системными возможностями, ради которых программисты традиционно используют C, C++ или CUDA. Благодаря инфраструктуре MLIR язык может в полной мере использовать специальные функции ИИ-ускорителей, повышать быстродействие и снижать затраты на вычисления.

Релиз 1.0 включает синтаксис лямбда-функций в стиле Python для компактного написания встроенных функций, усовершенствованный протокол Language Server Protocol для работы с текстовыми редакторами, включая VS Code, а также набор инструментов Mojo AI Skills для поддержки ИИ-ассистентов разработчиков. Статус версии 1.0 означает, что коллектив обязуется соблюдать обратную совместимость языка и рекомендует использовать Mojo в производственных приложениях.

Основная библиотека Mojo уже доступна на условиях лицензии Apache 2.0 с исключениями, характерными для LLVM. Компания Modular запланировала открыть исходный код компилятора в 2026 году. По намекам на веб-сайте проекта, это событие может быть объявлено на конференции ModCon, которая состоится на следующей неделе.

Выпуск открытого исходного кода компилятора и инструментальной базы может развеять опасения, которые возникли в сообществе после того, как Qualcomm приобрела Modular. Некоторые члены сообщества волновались, что компания-производитель полупроводников может потерять беспристрастность и отдать предпочтение своему оборудованию перед конкурирующими решениями. Латтнер подтвердил, что Nvidia и AMD являются важными партнёрами и не ожидает препятствий со стороны этих компаний.