Python давно стал фактическим стандартом для машинного обучения, анализа данных и научных вычислений |
||
|
МЕНЮ Главная страница Поиск Регистрация на сайте Помощь проекту Архив новостей ТЕМЫ Новости ИИ Голосовой помощник Разработка ИИГородские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Искусственный интеллект Слежка за людьми Угроза ИИ Атаки на ИИ Внедрение ИИИИ теория Компьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Нейронные сети начинающим Психология ИИ Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Промпты. Генеративные запросы Распознавание лиц Распознавание образов Распознавание речи Творчество ИИ Техническое зрение Чат-боты Авторизация |
2026-08-24 11:37 Python давно стал фактическим стандартом для машинного обучения, анализа данных и научных вычислений. Но в проектах, где производительность критична, он быстро упирается в потолок: под капотом привычных NumPy и PyTorch работают компоненты на C, C++ или CUDA. Пока нужные функции есть в библиотеках, это незаметно. Но как только приходится писать собственное вычислительное ядро или нестандартную оптимизацию, разработчик вынужден спускаться на уровень системного программирования. Возникает та самая «двухъязычная» модель: логика на Python, а всё, что должно работать быстро, — на другом языке. Решить эту проблему решила компания Modular, основанная Крисом Латтнером — создателем LLVM и Swift — и Тимом Дэвисом, который много лет развивал инфраструктуру машинного обучения в Google, включая TensorFlow и XLA. В начале 2022 года они начали строить собственную платформу для ИИ и быстро поняли: очередной библиотекой тут не обойтись. Нужен инструмент, который позволит описывать и высокоуровневую логику, и низкоуровневые операции без переключения между разными средами. Так появился Mojo. Синтаксически Mojo очень близок к Python — это сделано намеренно, чтобы не создавать дополнительный барьер для аудитории. Но за знакомой оболочкой скрывается самостоятельный компилируемый язык со своей моделью памяти, статической типизацией и системой типов. Изначально авторы планировали сделать Mojo надмножеством Python, способным исполнять чистый Python-код, но пока этого не произошло. Сейчас он развивается как независимый язык, а интеграция с Python обеспечивается через импорт существующих пакетов. Поэтому популярное определение «Python++» хорошо отражает замысел, но не текущую архитектуру. Первая публичная версия Mojo появилась в 2023 году, и попробовать её можно было только через облачный Playground. Интерес оказался огромным: за первые недели зарегистрировались более 120 тысяч человек. Позже вышел локальный инструментарий для Linux. Сам проект за это время активно менялся: некоторые конструкции исчезали или многократно переделывались. И вот 11 августа 2026 года вышел Mojo 1.0 — формальное завершение бета-этапа. Ключевое отличие Mojo от Python — способ выполнения. Код можно заранее скомпилировать в самостоятельный исполняемый файл, которому не нужен интерпретатор. Компилятор знает типы данных и другие параметры программы, поэтому может оптимизировать код под конкретную задачу. Mojo поддерживает метапрограммирование: часть вычислений и проверок выполняется ещё на этапе компиляции, а на их основе создаётся специализированный вариант функции. В языке есть ссылки, структуры, параметрическое программирование, SIMD-операции и средства для непосредственной работы с памятью. В одном месте программа выглядит как простой Python-скрипт, а в другом — даёт детальный контроль над размещением данных и стоимостью вычислений. Особая роль отводится MLIR — компиляторной инфраструктуре, одним из создателей которой также является Крис Латтнер. Если упрощённо, MLIR позволяет превращать высокоуровневые операции в машинный код поэтапно, сохраняя информацию о программе и постепенно снижая уровень абстракции. Это делает Mojo гибким: он может работать как на центральных процессорах, так и на GPU и специализированных AI-чипах. Разработчики обещают производительность уровня C и C++. В ранних демонстрациях Modular показывала впечатляющие результаты — в отдельных задачах оптимизированный Mojo работал в десятки тысяч раз быстрее Python. Но честно говоря, эти цифры не стоит воспринимать как обычную разницу между языками: Python выполнял вычисления последовательно через интерпретатор, тогда как Mojo компилировался и использовал векторные инструкции процессора. Смысл языка не в том, что переписывание программы автоматически ускорит её в десятки тысяч раз, а в том, что он даёт инструменты для постепенной оптимизации узких мест без смены языка. К выходу 1.0 разработчики привели синтаксис к более последовательному виду, убрали дублирующие конструкции. Переменные теперь объявляются через явный синтаксис, для указателей оставлен единый тип, работа с замыканиями приведена к общим правилам. Появились лямбда-функции с привычным для Python синтаксисом. Modular старается использовать знакомые конструкции там, где они подходят, и добавлять свои, когда нужны возможности системного языка. Большое внимание уделили экосистеме. Улучшился LSP-сервер, отвечающий за подсказки, навигацию и диагностику в редакторах вроде VS Code. Компилятор стал подробнее сообщать о потенциальных ошибках при работе с памятью и ссылками — особенно важно после закрепления модели владения в языке. Это не так эффектно, как очередной бенчмарк, но именно такие вещи определяют удобство повседневной разработки. Значительно выросла стандартная библиотека. После публикации её исходного кода почти 200 участников сообщества внесли более 1100 изменений, затронувших свыше 200 тысяч строк. Более тысячи человек сообщали об ошибках и предлагали улучшения. Для трёхлетнего проекта сообщество довольно активное, хотя до масштабов Python, C++ или Rust пока далеко. Выход стабильной версии — это не просто фиксация синтаксиса. Он даёт авторам сторонних библиотек стабильный базис: им больше не придётся постоянно переделывать код вслед за изменениями языка. Теперь успех Mojo будет зависеть от того, как быстро вокруг него сформируется зрелая экосистема пакетов. В планах у разработчиков остаются асинхронное программирование, сопоставление с образцом, объединения типов и другие возможности. Пока открыта только стандартная библиотека — она распространяется под лицензией Apache 2.0. Исходный код компилятора и части внутренних инструментов Modular обещали опубликовать до конца 2026 года. Mojo 1.0 — это язык, который пытается объединить простоту Python с производительностью системных языков. Он уже достаточно зрел для того, чтобы начать экспериментировать, но его судьба будет зависеть от сообщества и появления реальных проектов, которые докажут его ценность. Как думаете, у Mojo есть шанс занять своё место в мире высокопроизводительных вычислений, или Python с его экосистемой останется вне конкуренции? Телеграм: t.me/ainewsline Источник: vk.com Комментарии: |
|