Об этом проекте
MLX — это фреймворк для машинного обучения на чипах Apple, разработанный командой исследователей машинного обучения Apple. Он предоставляет Python API, близко следующий NumPy, а также полнофункциональные API на C++, C и Swift, которые повторяют интерфейс Python. Библиотеки более высокого уровня, такие как `mlx.nn` и `mlx.optimizers`, следуют соглашениям PyTorch для построения сложных моделей.
Ключевые возможности включают:
- **Привычные API**: Python API в стиле NumPy, а также версии на C++, C и Swift.
- **Компонуемые преобразования функций**: поддержка автоматического дифференцирования, векторизации и оптимизации графов вычислений.
- **Ленивые вычисления**: массивы материализуются только при необходимости.
- **Динамическое построение графов**: графы вычислений строятся динамически, что позволяет избежать медленных повторных компиляций при изменении форм.
- **Несколько устройств**: операции выполняются на CPU и GPU.
- **Унифицированная память**: массивы находятся в общей памяти, что позволяет выполнять операции на нескольких устройствах без передачи данных.
MLX предназначен для исследователей машинного обучения и нацелен на удобство использования и эффективность при обучении и развертывании. Он вдохновлен NumPy, PyTorch, Jax и ArrayFire.
Установка производится через pip на macOS (`pip install mlx`), также есть варианты для Linux с CUDA (`mlx[cuda]`) или только с CPU (`mlx[cpu]`). Репозиторий примеров MLX включает обучение трансформеров для языковых моделей, генерацию текста LLaMA с тонкой настройкой LoRA, генерацию изображений Stable Diffusion и распознавание речи Whisper.
Документация, краткие руководства и рекомендации по внесению вклада доступны в репозитории. Проект является открытым исходным кодом и благодарит участников.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.