Mojo — новый язык программирования для всех разработчиков ИИ

Mojo – первый взгляд – это информационная статья.

Эта статья информативна для

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

тогда зачем ждать, это для вас, идите вперед и изучите статью о Mojo — расширенном наборе Python, в тысячи раз быстрее, чем Python, он сочетает в себе производительность C и удобство использования Python. Это изобретение нового языка для решения существующих проблем в области ИИ.

Счастливого исследования Mojo…

Изобретатель Крис Латнер воспылал страстью к ИИ…

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

Благодаря способности Python создавать сложные приложения с использованием простого и удобочитаемого синтаксиса, Python считается одним из самых популярных языков программирования. Однако, когда мы используем Python, самой большой проблемой является скорость. Важным элементом программирования является скорость. Прекрасная способность Python создавать сложные приложения с простым синтаксисом не может отмахнуться от недостатка скорости.

По сравнению с python, есть другие языки программирования, такие как C или C++, которые имеют невероятную скорость и более высокую производительность. Хотя Python является наиболее широко используемым языком программирования для ИИ, если вам нужна скорость, большинство людей предпочитают C, Rust или C++. Но все может измениться с появлением нового языка программирования Mojo Lang.

Mojo может быть волшебным языком программирования в мире ИИ для всех разработчиков ИИ для создания различных моделей, таких как Искусственный Узкий Интеллект, Искусственный Общий Интеллект или Искусственный Супер Интеллект.

Изобретатель утверждает, что он в 35000 раз быстрее, чем Python, в 3 раза быстрее, чем TensorFlow, в 2,5 раза быстрее, чем PyTorch во всех инфраструктурах искусственного интеллекта процессоров и графических процессоров. Также как надмножество Python. Нет необходимости добавлять подключаемый модуль, все они поддерживаются совместимым с вставкой процессом, доступным в модульном механизме вывода.

Mojo сочетает в себе производительность C и удобство использования Python, открывая беспрецедентную программируемость аппаратного обеспечения ИИ и расширяемость моделей ИИ.

облачный ноутбук работает на машине Intel на AWS. Работает на процессорах Intel и AMD. Однако этот ноутбук работает и на других типах процессоров. Модульный унифицированный механизм искусственного интеллекта справляется со всеми сложными развертываниями ваших моделей, просто чтобы они работали.

Mojo заявлен как надмножество Python, базовый язык полностью совместим с Python и позволяет вам взаимодействовать с экосистемой Python и использовать такие библиотеки, как Numpy, Pandas и т. д.

В настоящее время популярные фреймворки, используемые для разработки больших языковых моделей (LLM), включают, среди прочего, библиотеку TensorFlow, PyTorch и Hugging Face’s Transformers. Язык Mojo поддерживает эти основные фреймворки, используя метод совместимости с Drop-in, доступный в механизме модульного вывода, который, как снижение производительности замены, сегодня обеспечивает экономию средств для реальных производственных конвейеров. Эту производительность можно обобщить для всех архитектур ЦП. Вся эта производительность достигается без дополнительных плагинов, инструментов или трюков, она просто работает. Эта функция может побудить выбрать Mojo в основном среди других в индустрии искусственного интеллекта и сделает моджо подходящим для создания даже массивных больших языковых моделей, таких как серия GPT, T5, BERT и т. д.

Mojo Lang создан Крисом Латнером, создателем языка программирования Swift и инфраструктуры компилятора LLVM. Он был разработан для программирования на оборудовании ИИ, таком как графические процессоры с CUDA. Этого можно добиться с помощью многоуровневого промежуточного представления (MLIR) для масштабирования типов оборудования без каких-либо сложностей.

Mojo и python — похожие языки с различиями

  1. Mojo быстрее, чем Python, о котором говорилось выше.
  2. Добавление типов
  • В Mojo встроено ключевое слово struct, похожее на класс Python. Разница в том, что структура статическая, а класс динамический.
  • Mojo имеет ключевые слова внутри структуры, такие как var, которая является изменяемой, и let, которая неизменяема.
  • def используется в python для определения функции, в Mojo вместо def используется fn, и это строгая функция.
  • В Mojo встроен тип данных SMID с одной инструкцией и несколькими данными, который представляет собой вектор, в котором одна инструкция может выполняться параллельно на нескольких элементах базового оборудования.
  • Если тип структуры Mojo, используемый в реализации Python, может повысить производительность в 500 раз по сравнению с Python.

3. Параллельные вычисления

  • Mojo имеет встроенную функцию распараллеливания для реализации многопоточной функции. Это может увеличить скорость в 2000 раз быстрее, чем Python. Параллельная обработка недоступна в python и очень сложна в реализации.

4. Оптимизация тайлинга

  • Встроенный в Mojo инструмент оптимизации листов позволяет более эффективно кэшировать и повторно использовать данные. Это помогает использовать память, которая близка друг к другу, и повторно использовать ее.

5. Автонастройка

  • Mojo также позволяет автоматически настраивать код, чтобы автоматически находить оптимальные параметры для целевого оборудования.

Чтобы узнать, как это работает, посмотрите демонстрацию Джереми Ховарда

Mojo можно превратить в дань уважения отцу ИИ «Джону Маккарти», который ввел термин «искусственный интеллект» в 1950-х годах.

Программирование Mojo — фрагмент

Mojo разработан как надмножество Python, поэтому многие языковые функции, с которыми вы знакомы, и концепции, которые вы знаете в Python, напрямую переносятся в Mojo. Например, программа «Hello World» в Mojo выглядит точно так же, как и в Python:

print(“Hello Mojo!”)

Интеграция с Python

Модули Python, которые вы знаете и любите, легко использовать в Mojo. Вы можете импортировать любой модуль Python в свою программу Mojo и создавать типы Python из типов Mojo.

Импорт модулей Python

Чтобы импортировать модуль Python в Mojo, просто вызовите Python.import_module() с именем модуля:

from PythonInterface import Python
# This is equivalent to Python's `import numpy as np`
let np = Python.import_module("numpy")
# Now use numpy as if writing in Python
array = np.array([1, 2, 3])
print(array)p

Да, это импортирует Python NumPy, и вы можете импортировать любой другой модуль Python.

Расширения для базового системного программирования

Python не предназначен и не подходит для системного программирования, но Mojo подходит. В этом разделе описывается, как выполнить базовое системное программирование в Mojo.

let и var декларации

Точно так же, как Python, вы можете присваивать значения имени, и он неявно создает переменную области действия внутри функции. Это обеспечивает очень динамичный и простой способ написания кода, но также создает трудности по двум причинам:

1. Системные программисты часто хотят объявить это значение неизменяемым.

2. Системные программисты хотят получить сообщение об ошибке, если они опечатаются в имени переменной в задании.

Чтобы поддержать это, Mojo поддерживает объявления let и var, которые вводят новое значение среды выполнения с областью действия: let является неизменяемым, а var — изменяемым. Эти значения используют лексическую область видимости и поддерживают затенение имен:

def your_function(a, b):
  let c = a
  # Uncomment to see an error:
  # c = b # error: c is immutable
  if c != b:
    let d = b
    print(d)
your_function(2, 3)

Нравится пробовать моджо. Mojo все еще находится в стадии разработки, но его можно попробовать в Playground на базе JupyterHub. Пожалуйста, посетите https://www.modular.com/get-started