MLX-LoRA-Studio
A native Mac App for LLM fine-tuning on Apple Silicon — fully on-device, fully open source.
What is it?
What it is
A native macOS app for fine-tuning large language models (LLMs) on Apple Silicon, providing a graphical interface for training algorithms like SFT, DPO, and PPO with features such as live metrics, synthetic data generation, and Hugging Face adapter upload.
Why it exists
To simplify LLM fine-tuning on Macs by offering a one-click, local, and private workflow that handles environment setup, resource management, and training without requiring manual Python dependencies or cloud infrastructure.
Who should use it
Researchers, developers, and ML enthusiasts interested in local LLM fine-tuning on Apple Silicon without cloud dependencies.
Who should avoid it
Users with Intel-based Macs, those requiring cloud-based training, or with insufficient hardware (e.g., <16GB RAM).
How it works
A quick walkthrough in plain English
How MLX-LoRA-Studio works
Step 1 of 3
You interact with it
Open MLX-LoRA-Studio, send a request, or connect it to your stack.
Features
Advantages
- Native macOS app for Apple Silicon with a native SwiftUI interface
- Fully local and private workflow with no cloud dependency
- One-click fine-tuning with a graphical interface for all steps
- Supports 9 advanced training algorithms and multiple adapter types
- Live observability with real-time metrics and memory monitoring
- Synthetic data generation using local models for training data
- Easy Hugging Face adapter upload with metadata and license options
- Algorithm Guide for informed method selection and hyperparameter tuning
- Automatic Python environment management (discovery or provisioning)
- Self-contained app bundle with no external dependencies
- MIT-licensed open-source code for community contribution
- First open-source release enabling local LLM fine-tuning on Mac
Disadvantages
- macOS 14+ and Apple Silicon only (no cross-platform support)
- High RAM requirements (16GB minimum, 24GB+ recommended for large models)
- First release may have notarization issues (quarantine flag required)
- Depends on MLX framework, limiting compatibility to Apple Silicon
- Resource-intensive for very large models (e.g., 70B requires ~110GB for LoRA)
- Synthetic data generation relies on local model performance
- No support for Intel-based systems
- Initial setup requires manual quarantine flag removal via terminal
Installation
FAQ
How do I install and launch MLX LoRA Studio on a Mac?
Download the latest DMG from the Releases page, drag **MLX LoRA Studio.app** into **/Applications**, then run the terminal command `sudo xattr -dr com.apple.quarantine "/Applications/MLX LoRA Studio.app"` to clear the quarantine flag. Launch the app from /Applications (or Spotlight). On first run the app will discover or provision a Python environment automatically.
What models and datasets can I fine‑tune with the app?
The app works with any MLX‑compatible model that you have already pulled into your Hugging Face cache, such as `mlx-community/Meta-Llama-3-8B-Instruct-4bit`. For datasets you can use any Hugging Face dataset that is compatible with the training pipeline, e.g. `mlx-community/JOSIE-v2-Instruct-5K`. The model and dataset fields in the Train tab accept the Hugging Face identifiers.
Which training algorithms are available and when should I use them?
MLX LoRA Studio exposes nine algorithms: SFT, DPO, CPO, ORPO, GRPO, Online DPO, XPO, RLHF Reinforce, and PPO. Use SFT for standard supervised fine‑tuning, DPO/CPO/ORPO for preference learning, and GRPO/Online DPO/XPO/RLHF/PPO for reinforcement‑learning style training. The Algorithm Guide tab explains the use‑case, key hyperparameters, and failure modes for each method.
How does the app estimate memory usage and what hardware do I need?
The sidebar shows a live memory card with wired + active memory, and a memory estimate below the Train form shows the expected cost for the current configuration. Minimum requirements are macOS 14+ on Apple Silicon, 16 GB RAM (24 GB+ recommended for ≥13 B models), ~5 GB disk for the app plus model cache, and a bundled Python environment. ResourceGuard will refuse to start a run that would exceed available memory.
How do I publish my trained adapter to Hugging Face?
After a run finishes, open the run in the Runs tab and click **Upload to HF**. The upload flow lets you set the repository name, visibility, license, and model‑card metadata, and provides a token source (env var, keychain, or paste). A single **Push** button starts the upload and shows progress and the final URL.
Featured in Videos
YouTube tutorials and walkthroughs for MLX-LoRA-Studio
Alternatives
Similar projects ranked by category, topics, and text overlap.