Fine-Tuning do Gemma 4 com Unsloth
Unsloth é uma biblioteca open source que torna o fine-tuning de LLMs até 2x mais rápido ao usar 60% menos memória. Isso é alcançado através de kernels CUDA personalizados e loops de treinamento otimizados — sem perda de precisão em comparação com o treinamento padrão.
O Gemma 4 é totalmente suportado no Unsloth, incluindo todas as quatro variantes (E2B, E4B, 26B MoE, 31B). Este guia cobre instalação, preparação de dataset, configuração de treinamento e exportação do seu modelo com fine-tuning.
Por Que Fazer Fine-Tuning com Unsloth?
Treinamento 2x Mais Rápido
Kernels Triton personalizados otimizam camadas de atenção, MLP e embeddings. Fine-tuning que leva 10 horas com métodos padrão leva ~5 horas com Unsloth.
60% Menos Memória
Gradient checkpointing inteligente e gerenciamento de memória permitem fazer fine-tuning de modelos maiores em GPUs menores. O modelo E4B pode ter fine-tuning em uma única RTX 3090.
Zero Perda de Precisão
As otimizações do Unsloth são matematicamente equivalentes ao treinamento padrão. Você obtém a mesma qualidade de modelo com menos computação — sem aproximações ou concessões.
Exportação Fácil
Exporte modelos com fine-tuning para GGUF (para Ollama/llama.cpp), SafeTensors (para vLLM) ou envie diretamente para o Hugging Face — tudo com um comando.
Instalação
Instale o Unsloth com pip. Requer Python 3.10+ e PyTorch 2.0+:
pip install unslothInício Rápido: Fine-Tuning do E4B
Um exemplo mínimo para fazer fine-tuning do Gemma 4 E4B com LoRA em seu próprio dataset:
from unsloth import FastLanguageModel
model, tokenizer = FastLanguageModel.from_pretrained(
model_name="google/gemma-4-e4b-it",
max_seq_length=4096,
load_in_4bit=True,
)
model = FastLanguageModel.get_peft_model(
model, r=16, lora_alpha=16,
target_modules=["q_proj", "k_proj", "v_proj", "o_proj"],
)
# Train with your dataset
from trl import SFTTrainer
trainer = SFTTrainer(
model=model, tokenizer=tokenizer,
train_dataset=dataset,
max_seq_length=4096,
)
trainer.train()Preparando Seu Dataset
O Unsloth suporta múltiplos formatos de dataset para fine-tuning do Gemma 4:
unslothPage.datasets.formats.0.title
Conversas com turnos de usuário/assistente. Melhor para fine-tuning de chatbot e assistente.
unslothPage.datasets.formats.1.title
Texto bruto para pré-treinamento contínuo ou adaptação de domínio.
unslothPage.datasets.formats.2.title
Pares escolhidos/rejeitados para treinamento baseado em preferências.
Requisitos de Hardware para Fine-Tuning
unslothPage.hardware.desc
| unslothPage.hardware.headers.model | unslothPage.hardware.headers.gpu | unslothPage.hardware.headers.time |
|---|---|---|
| E2B LoRA | RTX 3060 (12 GB) | ~15 min / 1K steps |
| E4B LoRA | RTX 4060 Ti (16 GB) | ~25 min / 1K steps |
| E4B QLoRA | RTX 3060 (12 GB) | ~30 min / 1K steps |
| 27B MoE LoRA | RTX 4090 (24 GB) | ~60 min / 1K steps |
| 27B MoE QLoRA | RTX 4070 Ti (16 GB) | ~90 min / 1K steps |
Exportando Seu Modelo
Após o fine-tuning, exporte para seu formato preferido:
# Save to GGUF for Ollama
model.save_pretrained_gguf("gemma4-custom", tokenizer, quantization_method="q4_k_m")
# Save to SafeTensors for vLLM
model.save_pretrained_merged("gemma4-custom-merged", tokenizer)
# Push to Hugging Face
model.push_to_hub_merged("your-username/gemma4-custom", tokenizer)FAQ Unsloth + Gemma 4
O que é Unsloth?
Unsloth é uma biblioteca de fine-tuning open source que torna o treinamento de LLMs 2x mais rápido e usa 60% menos memória através de kernels CUDA personalizados. Suporta Gemma 4, Llama, Mistral e outras famílias de modelos populares.
Posso fazer fine-tuning do Gemma 4 E4B em uma GPU de consumidor?
Sim. Com o QLoRA 4-bit do Unsloth, você pode fazer fine-tuning do E4B em uma RTX 4060 (8GB). LoRA requer uma RTX 3090 (24GB). Modelos maiores precisam de GPUs profissionais (A100/H100) ou instâncias em nuvem.
O que é LoRA vs QLoRA?
LoRA (Low-Rank Adaptation) adiciona pequenas matrizes treináveis ao modelo mantendo os pesos base congelados. QLoRA quantiza adicionalmente o modelo base para 4 bits, reduzindo drasticamente a memória. Ambos produzem resultados de qualidade similar.
Quantos dados eu preciso para fine-tuning?
Para adaptação de domínio, 1K-10K exemplos de alta qualidade são frequentemente suficientes. Para instruction tuning, 5K-50K pares de conversa funcionam bem. A qualidade importa mais que a quantidade — 1K exemplos excelentes superam 100K ruidosos.
Posso mesclar os pesos LoRA no modelo base?
Sim. O Unsloth suporta a mesclagem de pesos LoRA no modelo base para implantação sem a sobrecarga do adaptador. Exporte como um único modelo mesclado em formato GGUF ou SafeTensors.
O Unsloth suporta o modelo MoE?
Sim, o Unsloth suporta o fine-tuning do modelo MoE Gemma 4 26B A4B. Devido à arquitetura MoE, o LoRA é tipicamente aplicado às camadas compartilhadas e ao roteamento de especialistas, exigindo mais VRAM do que modelos densos de contagem similar de parâmetros ativos.
unslothPage.faq.items.6.q
unslothPage.faq.items.6.a
unslothPage.faq.items.7.q
unslothPage.faq.items.7.a
unslothPage.faq.items.8.q
unslothPage.faq.items.8.a
unslothPage.faq.items.9.q
unslothPage.faq.items.9.a
Comece o Fine-Tuning do Gemma 4
Instale o Unsloth, prepare seu dataset e crie um modelo Gemma 4 personalizado em horas.