Dados Sintéticos para Treinamento
Por Que Dados Sintéticos?
- Custo: Dados reais de alta qualidade são escassos e caros de anotar
- Controle: Distribuição, dificuldade, formato exatamente como desejado
- Privacidade: Sem dados pessoais, sem risco de vazamento
- Escalabilidade: Gerar milhões de exemplos automaticamente
- Domínios específicos: Código, matemática, raciocínio — poucos dados reais de alta qualidade
Risco principal: Se o modelo gerador tem um viés, o modelo treinado herda esse viés.
Self-Instruct
- arXiv: 2212.10560 | ACL 2023
- Autores: Wang et al. (Allen AI)
- Mecanismo: LLM gera instruções → gera instâncias → filtra → fine-tunes a si mesmo
- Resultado: GPT-3 com Self-Instruct aproxima InstructGPT com fração do custo
- Impacto: Base para Alpaca, WizardLM e toda geração seguinte de dados sintéticos
Alpaca
- Paper: "Stanford Alpaca: An Instruction-Following LLaMA Model"
- Autores: Taori et al. (Stanford CRFM) — 2023
- Processo: Self-Instruct com GPT-3.5-turbo → 52K instruções · $500 de custo
- Modelo: LLaMA 7B fine-tuned
- Impacto: Demonstrou que fine-tuning barato funciona; licença não-comercial
WizardLM — Evol-Instruct
- arXiv: 2304.12244
- Mecanismo: Toma instruções simples e as "evolui" (mais profundas, mais específicas, mais restritas) usando LLM como mutação
- Resultado: Instruções muito mais complexas que Self-Instruct simples
- WizardCoder: Aplicação para código (Python, C++, Java)
- WizardMath: Aplicação para matemática
Orca — Process Supervision com GPT-4
- arXiv: 2306.02707 (Orca 1) · 2311.11045 (Orca 2) — Microsoft 2023
- Inovação: Explica o raciocínio passo a passo (system prompt especializado)
- Dados: ~1M exemplos de chain-of-thought completo com GPT-4
- Resultado: Orca 13B supera Vicuna 13B e LLaMA-65B em muitas tarefas
Orca-Math
- arXiv: 2402.14830
- Dados: 200K problemas matemáticos gerados via Agent-Instruct
- Mecanismo: Agentes especializados geram e verificam problemas
- Resultado: Phi-2 (2.7B) com Orca-Math supera GPT-3.5-turbo em GSM8K
Microsoft Phi Series — "Textbooks Are All You Need"
- Phi-1: arXiv:2306.11644 (2023)
- 7B tokens de código sintético estilo "textbook" gerado por GPT-4
- 1.3B parâmetros supera modelos treinados em >100B tokens de código
- Achado chave: Qualidade "educacional" do dado importa mais que volume
- Phi-1.5: arXiv:2309.05463
- 30B tokens sintéticos + 20B web filtrado
- 1.3B parâmetros; raciocínio comum e matemática
- Phi-2: 2.7B parâmetros; dados de código sintético + curado NLP
- Supera Mistral 7B em muitos benchmarks
- Phi-3-Mini: arXiv:2404.14219
- "Phi-3 Cookbook": dados sintéticos de qualidade didática
- 3.8B parâmetros, 128K contexto; performance de modelo 7B
- Phi-4: arXiv:2412.08905 (2024)
- Síntese de dados multiestágio: curadoria → síntese → síntese de síntese
- 14B parâmetros; melhor em STEM que modelos 3× maiores
OpenHermes — Dados Sintéticos Gerais
- OpenHermes 2.5: 900K instruções sintéticas de alta qualidade
- Geradas com Mistral, LLaMA 2 e outros modelos
- Curadoria rigorosa; estado da arte open-source em instrução
Métodos de Geração para Matemática
MetaMathQA
- arXiv: 2309.12284
- Mecanismo: Reformulação dos problemas de treino via GPT-4 (reversão, forward reasoning)
- Dados: Augmentation de MATH e GSM8K
- Resultado: LLaMA-2 70B com MetaMathQA supera modelos muito maiores
OpenMathInstruct
- 1: 1.8M pares (Mixtral 8x7B → Llama 3)
- 2: Versão expandida com Llama 3
- Fonte: Resolução múltipla de problemas MATH e AMC/AIME com seleção pelo melhor
NuminaMath TIR (Tool-Integrated Reasoning)
- Dados: 860K problemas de competições matemáticas
- Abordagem: Escreve código Python → executa → incorpora resultado no raciocínio
- Vencedor: MATH Olympiad (competition math) track do NeurIPS 2024
Self-Rewarding Language Models
- arXiv: 2401.10020 (Meta 2024)
- Mecanismo: Modelo avalia as próprias respostas (LLM-as-Judge sobre si mesmo) para gerar dados de preferência iterativamente
- Resultado: Melhora a cada iteração sem feedback humano adicional
- Limitação: Vieses se auto-reforçam se não houver ground-truth externo
Constitutional AI Synthesis (Anthropic)
- Mecanismo: Modelo critica as próprias respostas contra princípios → gera dados de preferência
- Dados resultantes: Pares (harmfulresponse, revisedresponse) para DPO/RLHF
- Escala: Evita necessidade de anotação humana massiva para alinhamento
Magpie — Dados de Instrução de Alta Qualidade
- arXiv: 2406.08464
- Mecanismo: Faz o modelo gerar suas próprias instruções sem seed
- Vantagem: Alinhado ao estilo de resposta do próprio modelo base
Tabela Comparativa de Abordagens
| Método | Gera | Custo | Risco de Viés | Quando Usar |
|---|---|---|---|---|
| Self-Instruct | Instruções diversas | Baixo | Médio | Bootstrap inicial |
| Evol-Instruct | Instruções difíceis | Médio | Médio | Raciocínio complexo |
| Orca / CoT | Cadeias de raciocínio | Alto (GPT-4) | Baixo | Raciocínio passo a passo |
| Phi Textbooks | Texto didático | Alto | Baixo | SLMs eficientes |
| Self-Rewarding | Dados de preferência | Baixo | Alto | Iterações de alinhamento |
| MetaMath | Variações de problemas | Médio | Baixo | Matemática |
Para o Kode
- Fase SFT: Gerar via GPT-4o ou Claude exemplos de code review, refactoring, debugging
- Formato: Instruction = contexto do repo + pergunta; Response = código + explicação em CoT
- Volume: 50K–200K exemplos sintéticos de alta qualidade > 1M de baixa qualidade (lição do Phi)
- Verificação automática: Só incluir exemplos onde o código gerado passa nos testes