Fine-Tuning de LLM em Casa: Passo a Passo com MLX (2026)
📌 Resposta rápida
Tutorial completo de fine-tuning de LLMs em Apple Silicon com MLX: LoRA, QLoRA, datasets, training, deploy. Faça seu próprio modelo customizado em casa.
TL;DR: Em 2026, fazer fine-tuning de LLM em casa é viável com Apple Silicon + MLX framework. Mac Studio M4 Max 128GB faz full fine-tune de 13B e LoRA de 70B. Mac Mini M4 Pro 48GB basta pra LoRA em 7B-14B (aprender). Guia com código, datasets e workflow completo.
🧠 O Que é Fine-Tuning e Quando Vale a Pena
Fine-tuning é pegar um modelo pré-treinado (Llama 3.1 8B, por exemplo) e continuar treinando ele com SEUS dados. O modelo aprende seu estilo, domínio específico, ou comportamento desejado sem perder o conhecimento geral.
Vale a pena quando: você tem dados proprietários (emails, documentação interna), precisa de tom/formato consistente, ou está criando produto com "personalidade" específica. Não vale quando: problema é resolvível via RAG (só buscar info), ou dataset é muito pequeno (<500 exemplos).
Mac Studio M4 Max 128GB (para fine-tuning sério)
Em 2026, MLX amadureceu o suficiente pra fine-tuning sério em Apple Silicon. Mac Studio M4 Max 128GB é o único hardware consumer que faz full fine-tune de 13B sem offload. Para LoRA até 70B, funciona bem.
✅ Prós
- +128GB unificada — cabe full fine-tuning de modelos até 13B
- +MLX-LM framework nativo — 2x llama.cpp em Apple
- +LoRA em 30B-70B viável (12-24h por epoch)
- +Silencioso mesmo sob carga de training
❌ Contras
- -R$ 40k é investimento sério
- -MLX ainda atrás de PyTorch+CUDA em features
- -Fine-tuning é processo demorado (dias/semanas)
Mac Mini M4 Pro 48GB (LoRA em modelos pequenos)
Se você quer APRENDER fine-tuning sem gastar R$ 40k, Mac Mini M4 Pro 48GB é onde começar. Faz LoRA em Llama 3.1 8B em 3-6h, Phi-4 14B em 6-12h. Bom pra validar conceito antes de investir em Studio.
✅ Prós
- +Suficiente pra LoRA em modelos 7B-13B
- +Consumo baixo durante training (30-45W)
- +Ideal pra experimentar fine-tuning sem comprometer R$ 40k
- +Mesmo MLX framework do Studio
❌ Contras
- -Não roda LoRA em 32B+ confortavelmente
- -Training mais lento que Max (~2-3x)
- -Full fine-tuning nem pensar
MacBook Pro M4 Max 64GB (fine-tuning portátil)
Pra consultor/pesquisador em IA que viaja, MacBook Pro M4 Max 64GB é o único laptop que faz LoRA em 32B em 2026. Training longo (dias) melhor no Studio — MacBook é pra experimentação.
✅ Prós
- +64GB unificada — LoRA em até 32B
- +Tela 16" 120Hz — melhor pra desenvolvimento
- +Bateria 15h em uso normal (não training)
- +Mesmo M4 Max do Studio, mobile
❌ Contras
- -Em training contínuo, bateria dura 2-3h
- -Ventoinha ativa sob carga (bem audível)
- -Caro se uso é só local — Mac Studio + MacBook Air seria mais barato
📊 LoRA vs QLoRA vs Full Fine-Tuning
| Método | RAM necessária | Tempo (8B) | Qualidade | Uso típico |
|---|---|---|---|---|
| LoRA | ~1.5x modelo | 3-8h | 90% | Maioria dos casos |
| QLoRA (4-bit) | ~0.6x modelo | 4-12h | 85% | Orçamento apertado |
| Full FT | ~4x modelo | 12-48h | 100% | Casos especiais |
LoRA é o padrão em 2026: treina só 1-5% dos parâmetros (matrizes de baixa-dimensão), resultado quase idêntico ao full, muito mais rápido e acessível. 99% dos projetos usa LoRA.
🛠️ Setup MLX no Mac (15 min)
# Instalar Python 3.11+ via Homebrew
brew install python@3.11
# Virtual env
python3.11 -m venv ~/mlx-env
source ~/mlx-env/bin/activate
# MLX e MLX-LM
pip install mlx mlx-lm
# Hugging Face CLI (pra baixar modelos)
pip install huggingface_hub
huggingface-cli login
# Testar
python -c "import mlx.core as mx; print(mx.metal.is_available())"
# → True (confirmou Metal funcionando) 📚 Preparar Dataset
MLX-LM espera formato JSONL com pares instruction/response:
# dataset.jsonl (1 exemplo por linha)
{"text": "<|user|>Como escrever email formal?<|assistant|>Comece com 'Prezado(a) [Nome]'..."}
{"text": "<|user|>Resume esse texto<|assistant|>..."}
{"text": "<|user|>Responde no tom do meu negócio<|assistant|>..."} Formato varia por modelo (Llama 3.1 usa `<|begin_of_text|>`, Phi usa `<|system|>`, etc). MLX-LM documentação tem templates.
Dividir em train/valid
mkdir -p data
# 90% treino, 10% validação
head -n 9000 dataset.jsonl > data/train.jsonl
tail -n 1000 dataset.jsonl > data/valid.jsonl 🔥 LoRA Fine-Tuning (código real)
# Llama 3.1 8B com LoRA (Mac Mini M4 Pro 48GB funciona)
mlx_lm.lora \
--model meta-llama/Llama-3.1-8B-Instruct \
--data ./data \
--train \
--iters 1000 \
--batch-size 4 \
--learning-rate 1e-4 \
--lora-layers 16 \
--save-every 100 \
--adapter-path ./adapters/my-model
# Progresso:
# Iter 100: loss 2.34, tokens/sec 450
# Iter 500: loss 1.12, tokens/sec 460
# Iter 1000: loss 0.89, tokens/sec 455 Parâmetros chave:
- --iters 1000: número de iterações. Começa com 500 pra teste, aumenta se loss não estabilizou.
- --batch-size 4: maior = melhor, mas limitado por RAM. Em M4 Pro 48GB com 8B, 4-8.
- --learning-rate 1e-4: padrão. Se loss explode, diminui pra 5e-5. Se não cai, aumenta.
- --lora-layers 16: quantas camadas aplicar LoRA. 16 é padrão, mais = mais capacidade mas mais lento.
🧪 Testar o Modelo Fine-tunado
mlx_lm.generate \
--model meta-llama/Llama-3.1-8B-Instruct \
--adapter-path ./adapters/my-model \
--prompt "Responde no meu tom: <sua pergunta>" \
--max-tokens 500 🚀 Exportar pra Ollama (usar em produção)
# Merge adapter no base model
mlx_lm.fuse \
--model meta-llama/Llama-3.1-8B-Instruct \
--adapter-path ./adapters/my-model \
--save-path ./my-llama-tuned
# Converter pra GGUF (formato Ollama)
pip install llama-cpp-python
python -m llama_cpp.convert_hf_to_gguf ./my-llama-tuned \
--outfile my-llama-tuned.gguf \
--outtype q4_k_m
# Criar Modelfile
cat > Modelfile <<EOF
FROM ./my-llama-tuned.gguf
SYSTEM "Você é meu assistente personalizado..."
EOF
# Registrar no Ollama
ollama create my-llama-tuned -f Modelfile
ollama run my-llama-tuned Pronto — seu modelo fine-tunado agora roda via Ollama como qualquer outro, integra com OpenClaw, LM Studio, etc.
⏱️ Benchmarks Reais de Training
| Hardware | Llama 8B LoRA (1000 iters) | Phi-4 14B LoRA | Qwen 32B LoRA |
|---|---|---|---|
| Mac Mini M4 Pro 48GB | 8h | 12h | Não cabe |
| MacBook Pro M4 Max 64GB | 4h | 6h | 20h |
| Mac Studio M4 Max 128GB | 3h | 4h | 14h |
| RTX 4090 (referência) | 1.5h | 2.5h | Não cabe (24GB) |
| 2x RTX 3090 48GB (ref) | 2h | 3h | 10h |
🎯 Casos de Uso Práticos
Fine-tune pra seu estilo de escrita
Coleta 500-2000 exemplos dos seus emails/textos → LoRA em Llama 3.1 8B → agora OpenClaw escreve no seu tom.
Fine-tune pra domínio específico (ex: direito, medicina)
Dataset de 5-50k exemplos de textos jurídicos/médicos → LoRA em Qwen 32B → modelo especialista.
Fine-tune pra formato estruturado (JSON, XML)
Dataset de input→output JSON consistente → LoRA → modelo sempre responde formato esperado.
Fine-tune pra idioma/dialeto
Dataset em PT-BR coloquial → LoRA → modelo fala como brasileiro (sem expressões PT-PT).
⚠️ Pitfalls Comuns
- Dataset muito pequeno — <500 exemplos raramente dá resultado útil
- Overfitting — modelo decora dataset e perde generalização. Use validação.
- Learning rate errado — muito alto: loss explode. Muito baixo: não aprende.
- Template errado — cada modelo tem chat template específico. Respeitar.
- Dados de má qualidade — garbage in, garbage out. Revisar dataset antes.
💡 Qual Hardware Escolher?
- Aprender fine-tuning (R$ 13k): Mac Mini M4 Pro 48GB ← recomendado pra começar
- Fine-tuning sério (R$ 40k): Mac Studio M4 Max 128GB
- Consultor viajando (R$ 29k): MacBook Pro M4 Max 64GB
- Alternativa NVIDIA (R$ 25k): PC com RTX 4090 — ver GPU para IA local
❓ Perguntas Frequentes
Posso fazer fine-tuning de LLM em Mac? ▼
Sim, via MLX framework (Apple). Em 2026, MLX-LM suporta LoRA em modelos 7B-70B, QLoRA 4-bit, e full fine-tuning em modelos pequenos (até 13B no Mac Studio 128GB). Para training puro, funciona. Para produção de modelos frontier, PyTorch+CUDA ainda é superior.
MLX vs PyTorch — qual usar? ▼
MLX para Apple Silicon: aproveita Metal nativamente, mais simples, otimizado pra memória unificada. PyTorch para NVIDIA: ecossistema maduro, CUDA, compatibilidade com todas as libs. Se você está no Mac, use MLX. No PC, PyTorch. Só evite forçar o contrário.
Quanto tempo leva fine-tuning de Llama 3.1 8B? ▼
LoRA com 10k exemplos de dataset: Mac Studio M4 Max 128GB faz em 3-5h. Mac Mini M4 Pro 48GB em 8-12h. RTX 4090 24GB em 1-2h (mais rápido). Full fine-tuning: Mac Studio 12-24h, RTX 4090 4-6h. Custo em cloud A100: R$ 80-200.
Dataset de quantos exemplos preciso? ▼
LoRA: 1.000-10.000 exemplos já geram resultado visível. Para mudança de comportamento sutil (tom, estilo), 500-2.000 basta. Para ensinar conhecimento novo, 5.000-50.000 ajuda. Full fine-tuning precisa 50k+ exemplos. Qualidade > quantidade sempre — 1k exemplos limpos > 10k ruidosos.
Fine-tuning vale a pena vs usar só RAG? ▼
Depende do objetivo. RAG (retrieval-augmented generation): melhor pra conhecimento atualizado, documentos específicos. Fine-tuning: melhor pra estilo/comportamento, formato consistente, tasks muito específicas. Muitos casos usam ambos: fine-tune pra tom + RAG pra dados.
📚 Artigos Relacionados
⚠️ Este artigo contém links de afiliado. Ao comprar através deles, você apoia o melhor.dev sem pagar a mais por isso. Nossas análises são editorialmente independentes.