Exame Final: Fine-Tuning de LLM Completo
Avaliação abrangente cobrindo todos os 10 módulos. 50 questões para testar seu domínio dos conceitos e práticas de fine-tuning de LLM.
Tempo limite: 90 minutos
Nota de aprovação: 80% (40/50 corretas)
Seção 1: Fundamentos (Questões 1-10)
Questão 1
Qual é a principal diferença entre fine-tuning e prompt engineering?
A) Prompt engineering é mais rápido para iterar
B) Fine-tuning modifica os pesos internos do modelo
C) Prompt engineering produz resultados melhores
D) Fine-tuning não requer nenhum dado
Mostrar Resposta
Resposta Correta: B
O fine-tuning modifica os pesos internos do modelo por meio de treinamento baseado em gradiente, enquanto o prompt engineering apenas altera o texto de entrada sem modificar o modelo em si.
Questão 2
Quando você deve preferir RAG ao invés de fine-tuning?
A) Quando você precisa mudar o estilo de escrita do modelo
B) Quando o conhecimento precisa ser atualizado frequentemente
C) Quando você quer que o modelo siga instruções específicas
D) Quando os recursos computacionais são ilimitados
Mostrar Resposta
Resposta Correta: B
RAG (Retrieval-Augmented Generation) é preferido quando o conhecimento precisa de atualizações frequentes, pois basta atualizar o banco de dados de recuperação sem re-treinar o modelo.
Questão 3
O que é transfer learning no contexto de LLMs?
A) Mover um modelo de uma GPU para outra
B) Usar o conhecimento do pré-treinamento para melhorar o desempenho em novas tarefas
C) Transferir dados entre conjuntos de dados
D) Converter modelos entre frameworks
Mostrar Resposta
Resposta Correta: B
Transfer learning aproveita o conhecimento adquirido pelo modelo durante o pré-treinamento em grandes conjuntos de dados para melhorar seu desempenho em tarefas específicas por meio do fine-tuning.
Questão 4
O que é esquecimento catastrófico?
A) Quando um modelo fica grande demais para caber na memória
B) Quando os dados de treinamento são perdidos
C) Quando um modelo perde conhecimento previamente aprendido após treinar com novos dados
D) Quando os gradientes se tornam zero
Mostrar Resposta
Resposta Correta: C
O esquecimento catastrófico ocorre quando o desempenho do modelo em tarefas já aprendidas piora após ser treinado com novos dados, essencialmente "esquecendo" o que aprendeu antes.
Questão 5
Qual cenário é MAIS adequado para fine-tuning ao invés de prompting?
A) Pedir para o modelo resumir um documento
B) Ensinar ao modelo o estilo de escrita específico de uma empresa
C) Fazer o modelo responder perguntas sobre eventos atuais
D) Fazer o modelo traduzir uma frase
Mostrar Resposta
Resposta Correta: B
O fine-tuning é ideal para internalizar estilos, formatos ou comportamentos específicos que são difíceis de transmitir apenas com prompts. O estilo de escrita de uma empresa é um comportamento aprendido que se beneficia do fine-tuning.
Questão 6
Qual é a principal vantagem do PEFT em relação ao fine-tuning completo?
A) Sempre produz resultados de melhor qualidade
B) Requer significativamente menos memória e computação
C) Funciona com qualquer arquitetura de modelo
D) Não requer nenhum dado de treinamento
Mostrar Resposta
Resposta Correta: B
Os métodos PEFT treinam apenas um pequeno número de parâmetros, reduzindo drasticamente os requisitos de memória e tempo de treinamento, muitas vezes mantendo qualidade comparável ao fine-tuning completo.
Questão 7
O que significa "parâmetros treináveis" no contexto de PEFT?
A) Todos os parâmetros do modelo
B) Apenas os parâmetros atualizados durante o treinamento
C) Parâmetros que não requerem cálculo de gradiente
D) Apenas os embeddings de entrada
Mostrar Resposta
Resposta Correta: B
Parâmetros treináveis são especificamente aqueles pesos que recebem atualizações de gradiente durante o treinamento. No PEFT, isso é um pequeno subconjunto do total de parâmetros do modelo.
Questão 8
Qual é o percentual típico de parâmetros treináveis no LoRA em comparação ao fine-tuning completo?
A) Cerca de 50%
B) Cerca de 25%
C) Menos de 1%
D) Cerca de 10%
Mostrar Resposta
Resposta Correta: C
O LoRA normalmente treina menos de 1% dos parâmetros originais do modelo (geralmente 0,1-0,5%), mantendo desempenho comparável ao fine-tuning completo.
Questão 9
O que determina a "capacidade" de um adaptador LoRA?
A) O tamanho do modelo base
B) O rank (r) das matrizes de baixa-rank
C) A taxa de aprendizado utilizada
D) O tamanho do conjunto de dados
Mostrar Resposta
Resposta Correta: B
O rank (r) determina quantos parâmetros o adaptador LoRA possui e, portanto, sua capacidade de aprendizado. Ranks maiores permitem adaptações mais complexas, mas exigem mais parâmetros.
Questão 10
Qual é o propósito do parâmetro alpha no LoRA?
A) Controlar a taxa de aprendizado
B) Escalar a contribuição dos pesos do LoRA
C) Definir o número de épocas de treinamento
D) Determinar o tamanho do batch
Mostrar Resposta
Resposta Correta: B
O alpha do LoRA é um fator de escala que controla quanto os pesos aprendidos do LoRA contribuem para a saída. O escalonamento efetivo é alpha/rank.
Seção 2: Implementação Técnica (Questões 11-25)
Questão 11
Qual formato de quantização o QLoRA utiliza principalmente?
A) INT8
B) Float16
C) NF4 (4-bit NormalFloat)
D) BFloat16
Mostrar Resposta
Resposta Correta: C
O QLoRA utiliza quantização NF4 (4-bit NormalFloat), projetada especificamente para ter o mesmo número de valores em cada bin de quantização para pesos distribuídos normalmente.
Questão 12
O que é "double quantization" no QLoRA?
A) Quantizar o modelo duas vezes
B) Usar dois esquemas de quantização diferentes
C) Quantizar as próprias constantes de quantização
D) Rodar a quantização em duas GPUs
Mostrar Resposta
Resposta Correta: C
A double quantization reduz ainda mais a memória ao também quantizar as constantes usadas no primeiro nível de quantização, economizando cerca de 0,4 bits adicionais por parâmetro.
Questão 13
Qual biblioteca fornece o BitsAndBytesConfig para quantização de 4 bits?
A) transformers
B) peft
C) bitsandbytes
D) accelerate
Mostrar Resposta
Resposta Correta: C
A biblioteca bitsandbytes fornece a funcionalidade de quantização, embora seja configurada pelo BitsAndBytesConfig do transformers.
Questão 14
Para que serve o gradient checkpointing?
A) Salvar o progresso do treinamento
B) Trocar computação por memória ao recomputar ativações
C) Verificar explosão de gradiente
D) Sincronizar gradientes entre GPUs
Mostrar Resposta
Resposta Correta: B
O gradient checkpointing economiza memória ao não armazenar todas as ativações durante o forward pass, recomputando-as durante o backpropagation. Isso troca computação extra por redução de memória.
Questão 15
Quais matrizes de peso são mais comumente alvo do LoRA em modelos transformer?
A) Apenas camadas de embedding
B) Apenas projeção de saída
C) Projeções de Query e Value (q_proj, v_proj)
D) Parâmetros de normalização de camada
Mostrar Resposta
Resposta Correta: C
As matrizes de projeção de query e value (q_proj, v_proj) são as mais comumente alvo, pois apresentam bons resultados com poucos parâmetros. Projeções de key e saída também podem ser incluídas.
Questão 16
O que faz o prepare_model_for_kbit_training()?
A) Converte o modelo para formato k-bit
B) Prepara modelos quantizados para treinamento, lidando com layer norms e casting
C) Carrega o modelo na memória da GPU
D) Divide o modelo entre vários dispositivos
Mostrar Resposta
Resposta Correta: B
Essa função do PEFT prepara um modelo quantizado para treinamento, convertendo layer norms para float32 e habilitando gradient checkpointing, necessários para treinamento estável.
Questão 17
Qual é o propósito do formato Alpaca no instruction tuning?
A) Um tokenizer específico
B) Um formato estruturado com campos de instrução, entrada e saída
C) Um algoritmo de compressão
D) Uma arquitetura de modelo
Mostrar Resposta
Resposta Correta: B
O formato Alpaca estrutura os dados de treinamento com três campos: instrução (o que fazer), entrada (contexto opcional) e saída (resposta esperada), facilitando o formatação de dados para instruções.
Questão 18
Qual é a principal diferença entre o formato ShareGPT e Alpaca?
A) ShareGPT usa XML
B) ShareGPT suporta conversas multi-turn
C) Alpaca suporta múltiplos idiomas
D) ShareGPT é menor
Mostrar Resposta
Resposta Correta: B
O formato ShareGPT suporta conversas multi-turn com mensagens baseadas em papéis (system, user, assistant), enquanto o Alpaca é projetado para pares de instrução-resposta de um único turno.
Questão 19
O que é o SFTTrainer na biblioteca TRL?
A) Uma arquitetura de modelo
B) Uma classe de treinamento para Fine-Tuning Supervisionado
C) Um carregador de dataset
D) Um wrapper de tokenizer
Mostrar Resposta
Resposta Correta: B
O SFTTrainer (Supervised Fine-Tuning Trainer) é uma classe de treinamento especializada na TRL que simplifica o fine-tuning com recursos como manipulação automática de chat templates e packing.
Questão 20
O que o "gradient accumulation" permite fazer?
A) Armazenar gradientes permanentemente
B) Simular batches maiores com memória limitada
C) Acelerar o treinamento
D) Reduzir o tamanho do modelo
Mostrar Resposta
Resposta Correta: B
O gradient accumulation permite simular batches efetivos maiores acumulando gradientes em múltiplos forward passes antes de realizar uma atualização de peso.
Questão 21
Qual taxa de aprendizado é tipicamente recomendada para fine-tuning com LoRA?
A) 1e-2 a 1e-3
B) 1e-4 a 1e-5
C) 1e-6 a 1e-7
D) 1.0
Mostrar Resposta
Resposta Correta: B
O fine-tuning com LoRA normalmente usa taxas de aprendizado entre 1e-4 e 1e-5, que é mais alta do que no fine-tuning completo, pois apenas um pequeno número de parâmetros é atualizado.
Questão 22
O que é DPO (Direct Preference Optimization)?
A) Uma técnica de pré-processamento de dados
B) Uma alternativa ao RLHF que otimiza preferências diretamente sem um modelo de recompensa
C) Um método de quantização
D) Uma arquitetura de modelo
Mostrar Resposta
Resposta Correta: B
O DPO otimiza diretamente o modelo de linguagem usando pares de preferência (escolhido/rejeitado) sem precisar treinar um modelo de recompensa separado, simplificando o pipeline de RLHF.
Questão 23
Que tipo de dado o DPO requer?
A) Apenas exemplos positivos
B) Pares de preferência (respostas escolhidas e rejeitadas)
C) Dados de classificação rotulados
D) Texto não rotulado
Mostrar Resposta
Resposta Correta: B
O DPO requer dados de preferência consistindo em pares onde uma resposta é preferida (escolhida) em relação a outra (rejeitada) para o mesmo prompt.
Questão 24
Qual é a principal inovação do ORPO em relação ao DPO?
A) Usa menos dados
B) Combina SFT e otimização de preferência em uma única etapa
C) Não requer preferências
D) Só funciona com modelos pequenos
Mostrar Resposta
Resposta Correta: B
O ORPO (Odds Ratio Preference Optimization) combina fine-tuning supervisionado e alinhamento de preferência em uma única etapa de treinamento, ao contrário do DPO que normalmente requer uma etapa SFT separada.
Questão 25
O que o parâmetro "beta" controla no DPO?
A) Tamanho do batch
B) A força da otimização de preferência versus manter-se próximo ao modelo de referência
C) Taxa de aprendizado
D) Número de épocas
Mostrar Resposta
Resposta Correta: B
O beta controla a penalidade de divergência KL, equilibrando o quanto o modelo otimiza pelas preferências versus manter-se próximo ao comportamento do modelo de referência (base).
Seção 3: Avaliação & Deploy (Questões 26-40)
Questão 26
O que a perplexidade mede?
A) Tamanho do modelo
B) O quão bem o modelo prevê o texto (quanto menor, melhor)
C) Velocidade de treinamento
D) Uso de memória
Mostrar Resposta
Resposta Correta: B
A perplexidade mede o quão bem um modelo probabilístico prevê uma amostra. Perplexidade menor indica que o modelo está melhor em prever o texto, ou seja, está menos "surpreso" pelos dados.
Questão 27
O que é TIES-Merging?
A) Uma técnica de treinamento
B) Um método para combinar múltiplos modelos que lida com conflitos de parâmetros
C) Um esquema de tokenização
D) Uma métrica de avaliação
Mostrar Resposta
Resposta Correta: B
TIES (Trim, Elect Sign & Merge) é uma técnica de mesclagem de modelos que lida melhor com conflitos entre parâmetros do que a média simples, resolvendo conflitos de sinal e removendo valores pequenos.
Questão 28
Qual ferramenta é comumente usada para mesclar adaptadores LoRA e modelos?
A) PyTorch
B) MergeKit
C) TensorFlow
D) NumPy
Mostrar Resposta
Resposta Correta: B
O MergeKit é um toolkit popular projetado especificamente para mesclar modelos de linguagem, suportando vários métodos como linear merging, TIES, DARE e SLERP.
Questão 29
Qual formato é comumente usado para inferência em CPU com llama.cpp?
A) ONNX
B) GGUF
C) PyTorch
D) TensorFlow SavedModel
Mostrar Resposta
Resposta Correta: B
GGUF (GPT-Generated Unified Format) é o formato padrão para modelos quantizados usados com o llama.cpp para inferência eficiente em CPU.
Questão 30
Para que o vLLM é otimizado principalmente?
A) Treinamento de modelos
B) Servir inferência de alta vazão
C) Pré-processamento de dados
D) Quantização de modelos
Mostrar Resposta
Resposta Correta: B
O vLLM é um mecanismo de inferência otimizado para servir LLMs com alta vazão, usando técnicas como PagedAttention para gerenciar memória e batches de solicitações de forma eficiente.
Questão 31
O que é PagedAttention no vLLM?
A) Uma técnica de treinamento
B) Um mecanismo de atenção que gerencia a memória do cache KV por meio de paging
C) Um método de tokenização
D) Uma arquitetura de modelo
Mostrar Resposta
Resposta Correta: B
O PagedAttention gerencia a memória do cache Key-Value como páginas de memória virtual, permitindo uso mais eficiente da memória e maior vazão na inferência.
Questão 32
Para mesclar pesos LoRA ao modelo base, qual método você deve usar?
A) model.save_pretrained()
B) model.merge_and_unload()
C) model.quantize()
D) model.train()
Mostrar Resposta
Resposta Correta: B
O método merge_and_unload() mescla os pesos do adaptador LoRA aos pesos do modelo base e remove o adaptador, resultando em um modelo padrão sem overhead do LoRA.
Questão 33
O que é um estudo de ablação no contexto de fine-tuning?
A) Remover o modelo da memória
B) Testar sistematicamente diferentes componentes para entender sua contribuição
C) Um tipo de quantização
D) Uma estratégia de deploy
Mostrar Resposta
Resposta Correta: B
Um estudo de ablação remove ou altera sistematicamente componentes (como rank do LoRA, taxa de aprendizado, tamanho do dataset) para entender sua contribuição individual ao desempenho do modelo.
Questão 34
Qual é o propósito da evaluation loss durante o treinamento?
A) Atualizar os pesos do modelo
B) Monitorar overfitting em um conjunto separado
C) Calcular gradientes
D) Salvar checkpoints
Mostrar Resposta
Resposta Correta: B
A evaluation loss em um conjunto de validação ajuda a detectar overfitting—quando a loss de treinamento diminui mas a de validação aumenta, o modelo está memorizando ao invés de generalizar.
Questão 35
O que o "early stopping" previne?
A) Treinamento lento
B) Overfitting ao parar quando a performance de validação não melhora
C) Explosão de gradiente
D) Estouro de memória
Mostrar Resposta
Resposta Correta: B
O early stopping monitora a performance de validação e interrompe o treinamento quando ela para de melhorar, evitando que o modelo faça overfitting nos dados de treinamento.
Questão 36
Qual métrica é mais comumente usada para avaliar modelos que seguem instruções?
A) BLEU
B) Taxa de vitória contra um baseline (avaliação humana ou GPT-4)
C) Taxa de erro de palavra
D) F1 score
Mostrar Resposta
Resposta Correta: B
Comparações de taxa de vitória (usando GPT-4 como juiz ou avaliação humana) são comuns porque capturam melhor a qualidade de respostas livres do que métricas tradicionais.
Questão 37
Para que serve o Weights & Biases (W&B) no fluxo de trabalho de fine-tuning?
A) Quantização de modelo
B) Rastreamento e visualização de experimentos
C) Servir inferência
D) Armazenamento de dados
Mostrar Resposta
Resposta Correta: B
O Weights & Biases é uma plataforma de rastreamento de experimentos que registra métricas de treinamento, hiperparâmetros e artefatos, facilitando a comparação de execuções e a reprodução de experimentos.
Questão 38
Qual é a abordagem recomendada ao fazer deploy de um modelo fine-tuned com LoRA para produção?
A) Manter o LoRA separado para flexibilidade
B) Mesclar ao modelo base para deploy mais simples, a menos que precise trocar adaptadores
C) Usar apenas versões quantizadas
D) Sempre re-treinar do zero
Mostrar Resposta
Resposta Correta: B
Para a maioria dos deploys em produção, mesclar o LoRA ao modelo base simplifica a stack. Mantenha-os separados apenas se precisar trocar entre múltiplos adaptadores dinamicamente.
Questão 39
Qual nível de quantização é tipicamente melhor para qualidade de inferência em produção?
A) 2-bit
B) 4-bit
C) 8-bit
D) 1-bit
Mostrar Resposta
Resposta Correta: C
A quantização de 8 bits (INT8) normalmente oferece o melhor equilíbrio entre velocidade/memória de inferência e retenção de qualidade. 4 bits funciona bem em muitos casos, mas pode degradar mais a qualidade.
Questão 40
O que é speculative decoding?
A) Usar um modelo rascunho pequeno para acelerar a geração propondo tokens verificados pelo modelo grande
B) Gerar múltiplas saídas em paralelo
C) Prever resultados de treinamento
D) Uma técnica de treinamento
Mostrar Resposta
Resposta Correta: A
O speculative decoding usa um modelo rascunho menor e mais rápido para propor múltiplos tokens, que o modelo maior então verifica em paralelo, acelerando a geração em 2-3x.
Seção 4: Boas Práticas & Conceitos Avançados (Questões 41-50)
Questão 41
Qual é o tamanho mínimo recomendado de dataset para fine-tuning de um modelo que segue instruções?
A) 10 exemplos
B) 100-500 exemplos de alta qualidade
C) Sempre 100.000+ exemplos
D) O tamanho do dataset não importa
Mostrar Resposta
Resposta Correta: B
100-500 exemplos de alta qualidade e diversidade podem ser suficientes para muitas tarefas de fine-tuning. Qualidade importa mais que quantidade—um dataset menor e de alta qualidade geralmente supera um maior e ruidoso.
Questão 42
O que é geração de dados sintéticos no fine-tuning?
A) Criar métricas de avaliação falsas
B) Usar modelos de IA para gerar dados de treinamento
C) Simular desempenho de GPU
D) Criar arquiteturas de modelo automaticamente
Mostrar Resposta
Resposta Correta: B
A geração de dados sintéticos usa modelos de IA (geralmente mais fortes, como o GPT-4) para criar exemplos de treinamento, que podem ser filtrados e curados para construir datasets de alta qualidade.
Questão 43
Qual é o benefício de usar um chat template durante o treinamento?
A) Tokenização mais rápida
B) Garante formatação consistente que corresponde ao uso do modelo na inferência
C) Reduz uso de memória
D) Melhora a quantização
Mostrar Resposta
Resposta Correta: B
Os chat templates garantem que os dados de treinamento sejam formatados da mesma forma que as entradas de inferência, incluindo tokens especiais para diferentes papéis. Formatos inconsistentes entre treinamento e inferência podem prejudicar o desempenho.
Questão 44
O que é contaminação de dados na avaliação de modelos?
A) Corrupção de dados
B) Quando dados de avaliação foram vistos durante o treinamento
C) Valores ausentes no dataset
D) Rótulos incorretos
Mostrar Resposta
Resposta Correta: B
A contaminação de dados ocorre quando dados de benchmark de avaliação aparecem nos dados de treinamento, inflando artificialmente as métricas de desempenho e tornando a comparação justa impossível.
Questão 45
Com qual rank de LoRA você deve começar para experimentação?
A) r=1
B) r=16 ou r=32
C) r=256
D) r=1024
Mostrar Resposta
Resposta Correta: B
Começar com r=16 ou r=32 é um bom equilíbrio entre capacidade e eficiência. Você pode ajustar para cima ou para baixo conforme os resultados—muitas tarefas funcionam bem com r=8, enquanto tarefas complexas podem precisar de r=64+.
Questão 46
Qual é a relação entre o rank e o alpha do LoRA na prática?
A) Alpha deve ser igual ao rank
B) Alpha é tipicamente 1,5-2x o rank
C) Alpha deve ser muito menor que o rank
D) Eles são independentes
Mostrar Resposta
Resposta Correta: B
A prática comum é definir o alpha em 1,5-2x o rank (ex: r=16, alpha=32). Isso porque o escalonamento efetivo é alpha/rank, e valores em torno de 2 funcionam bem na prática.
Questão 47
O que causa "NaN loss" durante o treinamento?
A) Dados ausentes
B) Instabilidade numérica, geralmente por taxa de aprendizado alta ou manipulação inadequada de precisão
C) Dados em excesso
D) Otimizador errado
Mostrar Resposta
Resposta Correta: B
A perda NaN (Not a Number) normalmente resulta de instabilidade numérica causada por taxas de aprendizado muito altas, gradientes explodindo ou manipulação inadequada de treinamento com precisão mista.
Questão 48
Qual é o propósito do período de warmup no treinamento?
A) Aquecer a GPU
B) Aumentar gradualmente a taxa de aprendizado para um treinamento estável
C) Pré-carregar dados
D) Compilar o modelo
Mostrar Resposta
Resposta Correta: B
O warmup aumenta gradualmente a taxa de aprendizado de um valor pequeno até o valor alvo, ajudando a estabilizar o treinamento nos estágios iniciais, quando os gradientes podem ser instáveis.
Questão 49
Ao fazer fine-tuning para um domínio específico (ex: médico), o que é mais importante?
A) Usar o maior modelo possível
B) Dados de alta qualidade e específicos do domínio, com formatação adequada
C) Treinar por muitas épocas
D) Tamanho máximo de batch
Mostrar Resposta
Resposta Correta: B
O fine-tuning específico de domínio depende criticamente da qualidade e relevância dos dados de treinamento. Um dataset menor, de alta qualidade e bem formatado para o domínio geralmente supera datasets gerais maiores.
Questão 50
Qual é o fator mais importante para determinar o sucesso do fine-tuning?
A) Tamanho do modelo
B) Tempo de treinamento
C) Qualidade e relevância dos dados
D) Tipo de GPU
Mostrar Resposta
Resposta Correta: C
A qualidade e relevância dos dados são os fatores mais críticos. Um dataset bem curado e relevante produzirá melhores resultados do que dados maiores, porém de menor qualidade, independentemente do tamanho do modelo ou do compute.
Interpretação dos Resultados
| Pontuação | Nível | Recomendação |
|---|---|---|
| 45-50 | Expert | Pronto para projetos de fine-tuning em produção |
| 40-44 | Proficiente | Forte entendimento, revise áreas específicas de fraqueza |
| 35-39 | Intermediário | Revise as seções avançadas antes de atuar em produção |
| 30-34 | Em desenvolvimento | Revise os módulos 4-8 para conceitos técnicos centrais |
| Abaixo de 30 | Iniciante | Complete todos os módulos com exercícios antes de refazer |
Certificação
Ao atingir uma pontuação de 80% ou mais, você demonstrou conhecimento abrangente dos conceitos, técnicas e melhores práticas de fine-tuning de LLM.
Competências-chave validadas:
- ✅ Entendimento de fine-tuning vs alternativas (RAG, prompting)
- ✅ Implementação de métodos PEFT (LoRA, QLoRA)
- ✅ Preparação de dados e controle de qualidade
- ✅ Configuração e otimização de treinamento
- ✅ Técnicas avançadas (DPO, ORPO)
- ✅ Avaliação e mesclagem de modelos
- ✅ Considerações para deploy em produção