Fine-tuning do LLaMA 3 na Nuvem: Passo a Passo
Fine-tuning do LLaMA 3 na Nuvem: Passo a Passo
O Que é Fine-tuning?
Fine-tuning é o processo de adaptar um modelo de linguagem pré-treinado (como o LLaMA 3) para uma tarefa ou domínio específico. Em vez de treinar do zero, você continua o treinamento com seus próprios dados, ajustando os pesos do modelo.
**Quando usar:**
LoRA vs QLoRA vs Full Fine-tuning
| Método | VRAM necessária | Velocidade | Qualidade | Custo |
|---|---|---|---|---|
| Full fine-tuning | 160GB+ (70B) | Lento | Máxima | Muito alto |
| LoRA | 40–80GB | Médio | Muito boa | Alto |
| QLoRA | 16–24GB | Médio | Boa | Acessível |
**Recomendação para 2026:** QLoRA na maioria dos casos. Você perde <2% de qualidade comparado ao full fine-tuning com uma fração do custo.
Requisitos de GPU por Tamanho de Modelo
| Modelo | QLoRA | LoRA | Full FT |
|---|---|---|---|
| LLaMA 3 8B | 12GB | 24GB | 80GB |
| LLaMA 3 70B | 48GB | 80GB | 4×80GB |
| Mistral 7B | 10GB | 20GB | 70GB |
Passo a Passo com HuggingFace + PEFT no RunPod
1. Setup no RunPod
2. Instalar Dependências
```bash
pip install transformers peft datasets bitsandbytes accelerate trl
```
3. Código de Fine-tuning com QLoRA
```python
from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig
from peft import LoraConfig, get_peft_model, prepare_model_for_kbit_training
from trl import SFTTrainer, SFTConfig
import torch
Configuração 4-bit
bnb_config = BitsAndBytesConfig(
load_in_4bit=True,
bnb_4bit_quant_type="nf4",
bnb_4bit_compute_dtype=torch.bfloat16,
)
model = AutoModelForCausalLM.from_pretrained(
"meta-llama/Meta-Llama-3-8B-Instruct",
quantization_config=bnb_config,
device_map="auto",
)
model = prepare_model_for_kbit_training(model)
lora_config = LoraConfig(
r=16, # rank: 8-64, maior = mais parâmetros
lora_alpha=32, # escala: geralmente 2x o rank
target_modules=["q_proj", "v_proj", "k_proj", "o_proj"],
lora_dropout=0.05,
task_type="CAUSAL_LM",
)
model = get_peft_model(model, lora_config)
model.print_trainable_parameters()
Output: trainable params: 6,815,744 || all params: 8,037,408,768 || trainable%: 0.085
trainer = SFTTrainer(
model=model,
train_dataset=dataset,
args=SFTConfig(
output_dir="./llama3-finetuned",
num_train_epochs=3,
per_device_train_batch_size=4,
gradient_accumulation_steps=4,
bf16=True,
logging_steps=10,
save_steps=100,
),
)
trainer.train()
```
4. Estimativa de Custo
| Modelo | GPU | Tempo (1k exemplos) | Custo |
|---|---|---|---|
| LLaMA 3 8B QLoRA | RTX 4090 | ~1,5h | ~$0,66 |
| LLaMA 3 8B LoRA | A100 40GB | ~45min | ~$0,89 |
| LLaMA 3 70B LoRA | A100 80GB | ~8h | ~$15,12 |
5. Avaliando o Modelo
```python
from peft import PeftModel
base_model = AutoModelForCausalLM.from_pretrained("meta-llama/Meta-Llama-3-8B-Instruct")
model = PeftModel.from_pretrained(base_model, "./llama3-finetuned/checkpoint-best")
```
Use benchmarks como **MT-Bench** ou seu próprio conjunto de avaliação para comparar com o modelo base.
6. Salvando e Deployando
```python
Mesclar LoRA com o modelo base para deploy mais simples
merged_model = model.merge_and_unload()
merged_model.save_pretrained("./llama3-merged")
Subir para HuggingFace Hub:
merged_model.push_to_hub("seu-usuario/llama3-finetuned")
```
Resumo Final
QLoRA tornou o fine-tuning de LLMs acessível para qualquer pessoa com um orçamento modesto. Com menos de $20 você pode adaptar o LLaMA 3 8B para seu caso de uso específico.
Lucas Ferreira
Senior AI Engineer
Ex-NVIDIA, spent 3 years benchmarking data center GPUs. Now helps teams pick the right hardware for their ML workloads. Ran inference benchmarks on every GPU generation since Volta.
Pronto pra economizar?
Compare preços de GPU cloud e encontre o melhor provedor pro seu caso de uso.
Começar a CompararArtigos Relacionados
Como Usar o RunPod: Tutorial Completo para Iniciantes
Passo a passo completo: criação de conta, escolha de GPU, templates, conexão via SSH e Jupyter, upload de dados, treinamento e download de resultados.
Como Usar Vast.ai: Tutorial Completo
Tutorial passo a passo para comecar a usar Vast.ai. Aprenda a criar conta, escolher GPU, configurar instancia e otimizar custos.
RunPod para Iniciantes: Guia Passo a Passo
Aprenda a usar RunPod do zero. Tutorial completo com screenshots mentais, dicas de economia e exemplos praticos para treinamento e inferencia.