Крис Латтнер о Mojo: «Мы убираем барьеры между Python и железом»

The TWIML AI Podcast 7,9 тыс. 1 ч 5 мин 2 мин 19.06.2023
Главное

Mojo: новый «суперзаряженный» Python для эры ИИ 0:00

В мире разработки ИИ давно назрела проблема, которую Крис Латтнер, CEO и сооснователь Modular AI, называет «проблемой трех миров». Хотя Python стал стандартом для исследователей и построения моделей, его производительность и ограничения вынуждают разработчиков спускаться на уровень C++ и Cuda для работы с железом. Латтнер утверждает, что Mojo — это новая попытка объединить удобство Python с мощью системного программирования, создавая язык, способный масштабироваться от простых скриптов до высокопроизводительных ИИ-инференсов на любом «железе».

🛠 Проблема «трех миров» и решение Mojo 2:38

По мнению Латтнера, сегодня ИИ-разработка страдает от разрывов в стеке технологий:

Mojo задуман как надмножество (superset) Python. Это означает, что существующий код на Python будет работать в Mojo без изменений. Однако, в отличие от стандартного Python, Mojo является компилируемым языком. Это позволяет использовать типизацию (как в TypeScript) для достижения кратного прироста производительности. По словам Латтнера, добавление простых аннотаций типов может ускорить код в 10–20 раз, а при использовании специализированного «железа» показатели могут достигать экстремальных значений (Латтнер упоминает 35 000-кратное ускорение на примере алгоритма Mandelbrot как «cherry-picked» показатель, но считает реальным ожидание 100-кратного ускорения для многих задач).

🧠 Роль Modular AI и унифицированный движок 23:05

Modular AI строит не просто язык, а унифицированный движок для ИИ. Латтнер поясняет, что этот движок:

Латтнер отмечает, что компания Modular AI выступает в роли коммерческого партнера, который «поддерживает» этот стек, в отличие от Open Source проектов Google и Meta, которые для них являются скорее побочными продуктами.

🧱 Экосистема и совместимость 47:35

Главный страх при появлении новых языков — отсутствие экосистемы. Латтнер подчеркивает прагматичный подход Mojo:

🔮 Взгляд в будущее 1:04:07

Латтнер признает, что Mojo находится на ранней стадии разработки («подростковый возраст» ИИ-индустрии). В планах — дальнейшее развитие языка в открытом режиме вместе с сообществом. Основная цель — убрать сложность, которая мешает исследователям экспериментировать с новыми архитектурами (например, возвращение к RNN или развитие FFT) без необходимости переписывать низкоуровневые ядра.

💬 Цитаты

«Мы работали, обращаясь к пределу скорости «железа». Mojo — это не просто «быстрый Python», это способ раскрыть полный потенциал аппаратного обеспечения.»

Крис Латтнер 10:07

«ИИ-стек, на котором мы все зависим, находится в подростковом возрасте. Нам нужно дойти до уровня, где всё работает предсказуемо и легко поддается изменению.»

Крис Латтнер 35:46
👥 Спикеры
📚 Упомянутые книги
🔗 Упомянутые сайты и проекты
📖 Термины
GIL (Global Interpreter Lock)
Механизм в стандартном CPython, который предотвращает одновременное выполнение потоков Python, ограничивая многопоточную производительность.
MLIR (Multi-Level Intermediate Representation)
Компиляторная инфраструктура, разработанная Латтнером в Google, которая позволяет эффективно таргетировать различные аппаратные ускорители ИИ.
Superset (надмножество)
Язык программирования, который включает в себя весь синтаксис другого языка, добавляя новые возможности.
Kernel Fusion (слияние ядер)
Техника оптимизации компилятора, при которой несколько математических операций объединяются в одно ядро для ускорения выполнения на GPU/CPU.
📊 Цифры
🗓 Хронология
  1. 2016 Крис Латтнер начал глубоко заниматься технологиями ИИ.
  2. 2020 Дата предыдущего интервью Латтнера и Сэма Черрингтона.
  3. 2023 Modular AI вышла из режима stealth-разработки.
⚖️ Другая сторона
Искусственный интеллект Chris Lattner Mojo Python Modular AI LLVM