Amplitude Seguros — Full Fine-Tuning (MLX)
Checkpoint de full fine-tuning (todos os parâmetros treináveis, não LoRA/PEFT) de
mlx-community/gemma-4-e2b-it-bf16
pra extração estruturada de dados de sinistro (segurado/placa/valor, ou
beneficiário/procedimento/valor) a partir de texto livre em português, no domínio de seguros.
Produzido como material didático da disciplina "Processamento de Dados e Fine-Tuning de Modelos" (UNIPDS), Módulo 4.4, pra comparar contra os adaptadores LoRA rank 4/8/16 do Módulo 4.3 com dados reais de treino, não estimativa.
Sumário
| Modelo base | mlx-community/gemma-4-e2b-it-bf16 (~4,63B parâmetros) |
| Método | Full fine-tuning (16 últimas camadas, mlx-lm) |
| Parâmetros treinados | 1.044,5M de 4.628,6M (22,567%) |
| Idioma | Português (pt-BR) |
| Domínio | Extração estruturada, sinistros de seguros (auto e saúde empresarial) |
| Licença | Gemma (herdada do modelo base) |
| Framework de treino | mlx-lm, exclusivo Apple Silicon |
| Uso pretendido | Educacional/demonstrativo — ver Uso e limitações |
Por que este checkpoint existe
Este full fine-tuning não é uma recomendação de produção — é uma demonstração deliberada, rodada até o fim de propósito, pra responder com dados reais (não opinião) uma pergunta que fica em aberto desde o início do curso: hoje, praticamente nenhuma API gerenciada de fine-tuning (Vertex AI/Gemini, OpenAI, Anthropic, Azure OpenAI, Mistral) oferece full fine-tuning de modelos fechados — todas usam LoRA/PEFT por padrão, quando oferecem fine-tuning. Este checkpoint mostra o outro lado da mesma decisão: como full fine-tuning genuíno se compara a LoRA quando existe acesso ao peso do modelo inteiro (caso de modelos abertos, como este). O resultado real (seção Avaliação) é exatamente por isso que o curso adota LoRA/PEFT como caminho padrão, com critério explícito de decisão, não por padrão de mercado sem justificativa.
Uso e limitações
Uso direto
Extração de três a quatro campos estruturados (segurado, placa, valor / beneficiário, procedimento, valor) a partir de texto livre em português no domínio de sinistros de seguros (auto e saúde empresarial), incluindo robustez a informação distratora no texto de entrada (testado e confirmado - ver Avaliação).
Fora de escopo
- Não é um modelo de uso geral. Foi treinado só pra extração estruturada num domínio estreito; capacidade conversacional geral, fora desse domínio, não foi testada nem é o objetivo.
- Não use em produção pra decisão real de seguros sem validação própria. O dataset de treino (200 exemplos) é sintético e fictício (case "Amplitude Seguros"), não dados reais de sinistro.
- Orçamento de treino intencionalmente curto (20 iterações) — suficiente pra demonstrar o ganho de full fine-tuning sobre LoRA nesta tarefa específica, não otimizado pra qualidade máxima.
- Português apenas. Não testado em outros idiomas.
Riscos e limitações conhecidas
Catastrophic forgetting. Full fine-tuning atualiza todos os pesos tocados no treino (aqui, as 16 últimas camadas); LoRA só a fração pequena que passa pelos adaptadores, deixando o resto congelado. Quanto mais parâmetros um treino toca, maior o risco teórico de o modelo esquecer comportamentos que não estavam no dataset de treino - por exemplo, responder adequadamente fora do domínio de extração. Este checkpoint não testa isso: o escopo do treino foi deliberadamente restrito (16 camadas, não o modelo inteiro) e a avaliação cobriu só a própria tarefa de extração, não capacidade geral. Duas referências empíricas, fora deste checkpoint, documentam o fenômeno:
- Biderman, D. et al. "LoRA Learns Less and Forgets Less." TMLR, 2024. arXiv:2405.09673 — comparando full fine-tuning contra LoRA em rank 16/64/256 por 16 épocas de treino de instrução: full fine-tuning cai de 0,67 (modelo base) pra 0,41 na época 16; as três variantes de LoRA nunca caem abaixo de 0,51.
- Luo, Y. et al. "An Empirical Study of Catastrophic Forgetting in Large Language Models During Continual Fine-tuning." arXiv:2308.08747 — quatro modelos BLOOMZ (1,1B a 7,1B parâmetros): esquecimento cresce com a escala do modelo na maioria das categorias testadas.
Como usar
pip install -U mlx-lm huggingface_hub[cli]
hf download ahirtonlopes/amplitude-seguros-full-finetune --local-dir ./mlx-full-finetune
python3 -m mlx_lm generate \
--model mlx-community/gemma-4-e2b-it-bf16 \
--adapter-path mlx-full-finetune \
--prompt "Extraia segurado, placa e valor do orçamento de oficina abaixo.
BOA VISTA REPAROS AUTOMOTIVOS CNPJ 21.098.765/0001-32 Rua dos Mecanicos 310 Segurado: Ricardo Alves Monteiro Placa do veiculo: JBR-9021 Data do sinistro: 09/06/2026 Valor das pecas: R\$ 1.850,00 Valor da mao de obra: R\$ 970,00 Valor total do orcamento: R\$ 2.820,00" \
--max-tokens 80
Requer Mac com Apple Silicon (mlx-lm não roda fora de macOS). Não tem Mac?
colab-full-finetune-training-notebook.ipynb
reproduz a mesma mecânica de full fine-tuning via Hugging Face, rodável de graça numa GPU T4 do
Google Colab, em escala menor (família Qwen, ~0,6 a 1,7 bilhão de parâmetros) - o Gemma 4 E2B
deste checkpoint (~5,12 bilhões de parâmetros reais) não cabe em full fine-tuning numa T4
gratuita. Já rodado de ponta a ponta numa GPU T4 real antes de publicar.
Treino
Dados
157 exemplos de treino, 30 de validação, 13 de teste - 200 exemplos reais (não sintéticos na
forma final, escritos à mão) do case fictício Amplitude Seguros (Auto + Saúde Empresarial),
preparados no Módulo 2.2 da disciplina. Split agrupado por entidade (mesma pessoa nunca aparece
em treino e teste ao mesmo tempo). Dataset embutido no
colab-lora-training-notebook.ipynb
e no notebook de full fine-tuning citado acima; não publicado como dataset HF separado.
Procedimento
Comando real, mlx-lm, rodado numa Mac com Apple Silicon em 2026-08-08:
python3 -m mlx_lm lora \
--model mlx-community/gemma-4-e2b-it-bf16 \
--train --data ./mlx-data \
--fine-tune-type full \
--iters 20 --batch-size 1 --learning-rate 1e-5 \
--adapter-path ./mlx-full-finetune
Hiperparâmetros (de adapter_config.json, real): otimizador Adam, num_layers=16 (mesmo
default usado pelos LoRA rank 4/8/16 do Módulo 4.3, pra comparação justa), max_seq_length=2048,
grad_accumulation_steps=1, grad_checkpoint=false, seed=0.
Reproduzir o treino (em vez de só baixar este checkpoint pronto): o comando acima funciona em qualquer Mac Apple Silicon, mas exige bem mais memória que LoRA (ver Avaliação)
- recomendado 24GB+ de RAM unificada. Duração desta rodada específica não foi registrada.
Avaliação
Métricas quantitativas
| Configuração | Parâmetros treinados | Pico de memória | Checkpoint | Val loss final |
|---|---|---|---|---|
| LoRA rank 4 | 0,074% (3,4M) | 10,787 GB | 13 MB | 1,246 |
| LoRA rank 8 | 0,147% (6,8M) | 10,833 GB | 27 MB | 0,895 |
| LoRA rank 16 | 0,295% (13,7M) | 10,930 GB | 52 MB | 0,725 |
| Full fine-tuning (este checkpoint) | 22,567% (1.044,5M) | 15,338 GB | 1.992 MB | 0,612 |
Full fine-tuning ganha em val loss (0,612 vs. 0,725 do melhor LoRA, 15,6% melhor), mas custa 153,5x mais parâmetro treinável que o LoRA rank 8, ~42% mais memória de pico, e gera um checkpoint 73,8x maior.
Avaliação qualitativa
Teste com exemplo construído de propósito com informação distratora (valor e placa de uma revisão anterior misturados no texto, antes do sinistro real): full fine-tuning extraiu os três campos corretamente, ignorando o distrator - exatamente igual às três variantes de LoRA testadas. Pra esta tarefa específica (extração estruturada, domínio estreito), o ganho de val loss do full fine-tuning nunca aparece como erro corrigido em inferência real: nenhuma das quatro configurações erra o teste com distrator. Conclusão do curso: o ganho de full fine-tuning é real e mensurável, mas não paga o custo extra pra esta tarefa - ver Módulo 4.4 da disciplina pra análise completa do critério de decisão.
Impacto ambiental
Treino local, de curta duração (20 iterações, 157 exemplos, batch size 1), numa única máquina Apple Silicon pessoal - ordens de grandeza menor que o treino de um modelo de fundação. Consumo de energia e emissões não foram medidos formalmente para esta rodada; não reportamos um número estimado pra evitar precisão falsa.
Licença
Este checkpoint é um derivado (full fine-tuning) de
mlx-community/gemma-4-e2b-it-bf16,
distribuído sob a licença Gemma da Google. Uso sujeito aos
mesmos termos e à Política de Uso Proibido do Gemma.
Citação
@misc{amplitude-seguros-full-finetune-2026,
title = {Amplitude Seguros -- Full Fine-Tuning (MLX)},
author = {Lopes, Ahirton},
year = {2026},
note = {Material didático, disciplina "Processamento de Dados e Fine-Tuning de Modelos" (UNIPDS), Módulo 4.4},
howpublished = {\url{https://huggingface.co/ahirtonlopes/amplitude-seguros-full-finetune}}
}
Modelo base: veja a citação recomendada em mlx-community/gemma-4-e2b-it-bf16.
Mais informações
- Curso: "Processamento de Dados e Fine-Tuning de Modelos" (UNIPDS), Módulo 4 (LoRA e PEFT) e Módulo 4.4 (Full Fine-Tuning vs. LoRA)
- Repositório: modulo09-processamento-de-dados-e-fine-tuning-de-modelos/modulo-04-lora-e-peft
- Alternativa não-Mac:
colab-lora-training-notebook.ipynb(LoRA) ecolab-full-finetune-training-notebook.ipynb(full fine-tuning, escala reduzida)
Autoria do model card
Ahirton Lopes, Ph.D. - GDE AI, Microsoft MVP, Senior Manager. Professor da disciplina "Processamento de Dados e Fine-Tuning de Modelos" (UNIPDS).