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

Источник: https://www.youtube.com/watch?v=-8TbsCUuwQQ
Канал: The TWIML AI Podcast
Опубликовано: 19.06.2023

---

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

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

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

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

*   **Верхний уровень:** Python — идеален для написания кода моделей, но медленен и ограничен «глобальной блокировкой интерпретатора» (GIL).
*   **Средний уровень:** C++ — «темная сторона» Python, где спрятана производительность, но которая требует сложной разработки.
*   **Нижний уровень:** Cuda или специфические языки для ускорителей (TPU, GPU) — область, доступная лишь узким специалистам.

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

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

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

*   Работает как замена для стандартных исполняющих сред TensorFlow и PyTorch, обеспечивая ускорение в 3–5 раз на обычных CPU (Intel, AMD).
*   Не требует переписывания моделей: достаточно заменить библиотеку в Docker-контейнере.
*   Решает проблему «хрупкости» абстракций, из-за которой внедрение модели в продакшн сегодня может занимать до трех месяцев.

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

### 🧱 Экосистема и совместимость
[[JUMP:47:35]]

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

*   **Прямая интеграция:** Mojo может импортировать любую библиотеку Python (NumPy, Pandas, Matplotlib) без необходимости писать обертки.
*   **Поэтапный переход:** Разработчик может оставить большую часть кода на обычном Python, переведя в Mojo только критически важные для производительности участки.
*   **Системная безопасность:** В Mojo внедрены концепции владения и времени жизни (lifetimes/ownership), заимствованные из Rust и Swift, что обеспечивает безопасность памяти без потери скорости.

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

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