Перейти к основному содержимому
Назад к блогу
Tutorial

Fine-tuning do LLaMA 3 na Nuvem: Passo a Passo

13.03.2026
11 min чтения

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:**

  • Seu domínio é especializado (médico, jurídico, técnico)
  • Você precisa de um estilo de resposta específico
  • O modelo base não segue bem suas instruções
  • 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

  • Selecione **A100 80GB** (para 70B com LoRA) ou **RTX 4090** (para 8B com QLoRA)
  • Template: **PyTorch 2.x**
  • Volume: 100GB+
  • 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.

    Encontrar GPU para fine-tuning →

    LF

    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.

    GPU BenchmarksInference OptimizationCUDAHardware

    Готовы экономить?

    Сравните цены на GPU облака и найдите лучшего провайдера для вашего случая.

    Начать Сравнение

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

    Tutorial

    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.

    15.03.202610 min
    Read More
    Tutorial

    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.

    11.03.202612 min
    Read More
    Tutorial

    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.

    10.03.202614 min
    Read More