PMetal: фреймворк для выполнения LLM на Apple Silicon

PMetal — это фреймворк для высокопроизводительного выполнения локальных LLM и тонкой настройки моделей на Apple Silicon. Он объединяет GPU-ускорение с Metal и интеграцию с Apple Neural Engine, предлагая мощный набор инструментов для работы с машинами обучения.

Проект полезен тем, кто работает с моделями машинного обучения на устройствах Apple. Он выделяется среди альтернатив благодаря поддержке специфических технологий Apple и полноценному GUI на базе Tauri и Svelte для визуального управления моделями. В дополнение, доступен также терминальный интерфейс для удобного контроля и настройки работы. Запуск GUI осуществляется командой bun install && bun tauri dev из папки crates/pmetal-gui.

PMetal ориентирован на пользователей macOS и требует Rust версии 1.91 или выше. Обрати внимание, что проект находится в стадии активной разработки, и может потребоваться усилия для настройки окружения.

Проект **PMetal** (Powdered Metal) представляет собой комплексный SDK и фреймворк для машинного обучения, разработанный специально для платформы Apple Silicon. Он написан на языке Rust и включает в себя низкоуровневые ядра Metal для GPU, интеграцию с Apple Neural Engine и высокоуровневые API для обучения моделей. Проект позволяет пользователям оставаться в экосистеме Apple при использовании высококачественных моделей машинного обучения.

Как использовать PMetal

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

Графический интерфейс (GUI)

В PMetal есть полнофункциональное настольное приложение, построенное на Tauri и Svelte, которое помогает управлять моделями, запускать их обучение и обеспечивать вывод. Вы можете использовать его, выполнив следующие команды:

cd crates/pmetal-gui
bun install && bun tauri dev

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

Терминальный интерфейс (TUI)

Для работы в терминале доступен интерфейс TUI с 20 вкладками, предоставляющим доступ ко всем основным функциям PMetal:

pmetal tui

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

Командная строка (CLI)

PMetal также поддерживает мощный интерфейс командной строки, который позволяет выполнять уникальные команды для обучения, вывода, наложения моделей и многого другого. Примеры команд:

# Обучение с использованием LoRA
pmetal train \
  --model Qwen/Qwen3-0.6B \
  --dataset train.jsonl \
  --output ./output \
  --lora-r 16 --batch-size 4 --learning-rate 2e-4

# Вывод с использованием адаптера LoRA
pmetal infer \
  --model Qwen/Qwen3-0.6B \
  --lora ./output/lora_weights.safetensors \
  --prompt "Explain quantum entanglement" \
  --chat

Установка

PMetal доступен через предустановленные подписанные двоичные файлы на странице Releases. Также можно установить его через crates.io.

Если ты хочешь собрать проект из исходного кода, то выполни следующие команды:

git clone https://github.com/epistates/pmetal.git && cd pmetal
cargo build --release          # CLI + TUI
cd crates/pmetal-gui && bun install && bun tauri build  # GUI (опционально)

Поддерживаемое оборудование

PMetal автоматически определяет характеристики Apple Silicon и настраивает параметры ядра в зависимости от устройства. Поддерживаются разнообразные чипы, включая M1, M2, M3 и M4.

API и интеграция

PMetal предлагает SDK, который можно интегрировать в свои приложения на Rust. Он также имеет Python-расширения, которые позволяют использовать функции PMetal в Python-программах через PyO3.

Пример использования API на Python для обучения модели:

import pmetal

result = pmetal.finetune(
    "Qwen/Qwen3-0.6B",
    "train.jsonl",
    lora_r=16,
    learning_rate=2e-4,
    epochs=3,
)
print(f"Loss: {result['final_loss']}, Steps: {result['total_steps']}")

PMetal поддерживает множество архитектур моделей и методов обучения, включая LoRA и QLoRA, а также позволяет выполнять операции над моделями, такие как слияние, оценка и дистилляция модели.

Ограничения и особенности

Хотя PMetal обладает широкими возможностями, он в первую очередь ориентирован на устройства Apple Silicon. Это ограничивает его использование на других платформах. Также, как и любой другой фреймворк, он может потребовать значительного освоения для эффективного использования всех доступных функций, особенно для начинающих пользователей в области машинного обучения.

Радар проекта: 68 из 100 — крепкий проект

ИмпульсТемпЗрелостьСообществоСвежестьСтартПродакшенДовериеДокументацияЭкосистема68
  • Импульс 4 ≈ 7 звёзд в месяц
  • Темп разработки 100 1151 коммит за 12 недель
  • Зрелость 76 проекту 10 месяцев, 17 релизов
  • Сообщество 33 3 участника, 27 форков
  • Свежесть 93 последний коммит — 12 дней назад
  • Быстрый старт 75 есть: команда установки, сайт/демо, примеры
  • Готовность к продакшену 65 релиз v0.7.1, автосборка
  • Безопасность и доверие 85 своя лицензия (не из открытых), SECURITY.md, организация
  • Документация 100 README 36.5 тыс. знаков, 64 раздела, папка docs
  • Экосистема 53 3 подписчика на обновления, 20 тем
Как считаем

Только открытые данные GitHub на 14.11.2026, без оценок нейросети. Каждая ось — от 0 до 100, итог — среднее.

  • Импульс — звёзд в день: за время наших замеров, а пока их нет — за всю жизнь проекта; 200 в день — максимум.
  • Темп разработки — коммитов за последние 12 недель; 300 — максимум. Пока GitHub не досчитал статистику, ось не учитывается.
  • Зрелость — возраст проекта (3 года — максимум) и число релизов (30 — максимум), поровну.
  • Сообщество — участников с коммитами (200 — максимум) и форков (5000 — максимум), поровну.
  • Свежесть — дней с последнего коммита: сегодня — 100, полгода и больше или архив — 0.
  • Быстрый старт — в README есть команда установки, раздел «быстрый старт» или примеры использования, в репозитории — Docker и папка примеров, у проекта есть сайт или демо.
  • Готовность к продакшену — релизы, версия 1.0 и выше, автосборка (GitHub Actions), тесты, лицензия, журнал изменений.
  • Безопасность и доверие — открытая лицензия (своя — половина балла), политика безопасности (SECURITY.md), проект организации, правила для участников, не в архиве.
  • Документация — объём и структура README, папка docs или сайт, оценка «здоровья сообщества» GitHub.
  • Экосистема — звёзды (50 тыс. — максимум), подписчики на обновления (1000 — максимум), темы репозитория.

Открыть на GitHub: Epistates/pmetal →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте