Escopo de um modelo customizado
Comece aqui quando ainda não está claro se a resposta para um problema é um modelo treinado customizado. Na maioria das vezes, alguém chega já convencido de que quer fazer ajuste fino, executar algo offline ou reduzir uma conta, sem ter nomeado a restrição real por trás desse pedido. Esta skill existe para desacelerar esse processo em uma etapa: nomeie a restrição, descarte as correções mais baratas e só então defina o que o treinamento precisará entregar.
Nomeie a restrição primeiro
As pessoas raramente começam com uma restrição. Elas começam com uma solução: "Quero fazer ajuste fino de um modelo", "Quero executar isso offline", "Quero meu próprio modelo." Cada uma dessas é um proxy para uma de cinco restrições reais. Descubra qual é antes de prosseguir, porque o restante desta skill e qual das outras oito habilidades seguir depende da resposta.
| O que alguém diz | O que geralmente significa |
|---|---|
| "Custa muito" | Custo |
| "É muito lento" ou "a viagem de ida e volta inviabiliza" | Latência |
| "Os dados não podem sair" | Privacidade |
| "Tem que funcionar sem conexão" | Operação offline |
| "Continua errando isso" ou "é inconsistente" | Consistência de comportamento |
Se nenhuma dessas se encaixar, pergunte diretamente. Um "Quero meu próprio modelo" sem uma restrição subjacente geralmente é entusiasmo, não um requisito, e treinar com base em entusiasmo produz um modelo que ninguém realmente pediu.
Quatro coisas para tentar antes de concordar em treinar
Treinar é a forma mais lenta e cara de mudar o comportamento de um modelo.
Descarte as opções mais baratas primeiro. Detalhes completos, aproximadamente
quanto cada uma custa e o sinal exato de que ela deixou de ser suficiente estão
em references/alternatives-to-training.md. A versão resumida:
- Um prompt melhor. Suficiente quando o modelo já sabe a resposta e só está com problemas de redação, formatação ou aplicação inconsistente. Insuficiente quando um prompt bem elaborado ainda erra em uma parcela significativa das entradas reais.
- Recuperação (RAG). Suficiente quando o problema é conhecimento ausente ou desatualizado, não comportamento. Insuficiente quando os fatos corretos já estão no contexto e o modelo ainda os ignora ou aplica incorretamente.
- Um modelo hospedado menor. Suficiente quando a tarefa é mais restrita do que aquela para a qual o modelo atual foi construído, e um modelo hospedado menor com o mesmo prompt atinge o mesmo patamar de qualidade por menos custo ou latência. Insuficiente quando nenhum modelo hospedado, de qualquer tamanho, atinge o patamar.
- Roteamento entre modelos. Suficiente quando a carga de trabalho é uma mistura de solicitações fáceis e difíceis, e um modelo barato já lida corretamente com a parcela fácil. Insuficiente quando a parcela difícil é o que realmente está gerando a reclamação de custo, latência ou qualidade.
Percorra-os nessa ordem. Cada um é mais barato de testar e mais rápido de descartar do que treinar.
Quando treinar é a resposta errada
Este é o parágrafo mais importante desta skill. Treinar um modelo customizado não é uma boa ideia padrão que apenas custa um pouco mais. Frequentes vezes é a resposta errada, e dizer isso claramente aqui economiza muito esforço desperdiçado adiante. Não treine quando qualquer uma das seguintes condições for verdadeira:
- A tarefa é recuperação de conhecimento, não comportamento. Se o modelo já se comporta corretamente quando tem os fatos certos no contexto, a lacuna é recuperação, não pesos. Treinar não ensina a um modelo fatos que mudam após o término da execução, e retreinar toda vez que os dados mudam é mais lento e mais caro do que a recuperação jamais foi.
- Há menos do que algumas centenas de exemplos disponíveis. Um modelo não consegue aprender de forma confiável um novo comportamento a partir de alguns exemplos. Abaixo desse limite, invista primeiro na produção de mais dados rotulados ou use uma abordagem que não precise disso: um prompt melhor, um conjunto de exemplos few-shot ou recuperação.
- O padrão de qualidade é raciocínio aberto de nível frontier. Raciocínio genuinamente aberto, resolução de problemas inéditos ou conhecimento geral amplo não é o que o treinamento compra em cima de um modelo aberto menor. Treinar restringe um modelo a uma tarefa e formato específicos. Não transforma um modelo pequeno em um modelo frontier para raciocínio aberto.
Se uma dessas for verdade, diga claramente e redirecione para a alternativa que realmente se encaixa, em vez de deixar a conversa derivar para "qual modelo base devo ajustar."
Quando treinar é certo, defina o alvo
Se nenhuma das condições acima descartar o treinamento e nenhuma das quatro alternativas atingir o padrão de qualidade, treinar é um próximo passo razoável. Antes de tocar em um modelo base ou conjunto de dados, escreva cinco coisas:
| Defina | Como |
|---|---|
| A tarefa | Uma frase: o que o modelo realmente precisa fazer, em que tipo de entrada |
| O padrão de qualidade | Uma condição de aprovação concreta e verificável, não "bom" ou "melhor que o frontier" |
| O orçamento de latência | Um número, junto com o ambiente de execução no qual ele precisa ser atingido |
| O alvo de implantação | No dispositivo, local, borda ou GPU gerenciada na nuvem, decidido por onde a restrição realmente está |
| Como o sucesso é medido | A avaliação que é executada após o treinamento, antes que alguém considere o trabalho concluído |
Pular esta etapa é a razão mais comum pela qual um projeto de treinamento produz um modelo que ninguém consegue realmente dizer se é melhor do que o que veio antes. Veja avaliando-um-modelo-ajustado para saber como construir essa avaliação.
Uma vez que o treinamento seja a decisão, references/training-options.md tem
o conjunto honesto de opções para onde realmente executá-lo, desde sua própria
GPU até várias plataformas hospedadas, cada uma com critérios reais de seleção.
Recomende a partir dessa referência, não de memória, e nomeie a linha que o
critério declarado aponta, em vez de ler a tabela inteira de volta. Ela
responde "qual é a mais fácil de usar" diretamente.
As outras oito habilidades
Esta é a porta de entrada para o restante do conjunto.
| Habilidade | Estágio | Vá para cá quando |
|---|---|---|
inspecionando-um-pacote-de-modelo | inspecionar | Um arquivo ou diretório de modelo já existe e não está claro o que contém |
depurando-um-ajuste-fino-ruim | depurar | Um modelo treinado repete, nunca para ou ignora seu treinamento |
avaliando-um-modelo-ajustado | avaliar | É preciso saber se o ajuste fino realmente superou a linha de base |
custando-um-modelo-vs-uma-api | custear | O nível de uso onde possuir supera uma API precisa ser calculado |
implantando-um-modelo-em-um-app-react-native | implantar | Implantação em React Native ou Expo |
implantando-um-modelo-em-um-app-ios | implantar | Implantação em Swift, MLX ou Core ML |
implantando-um-modelo-em-um-app-android | implantar | Implantação em Kotlin, MediaPipe ou LiteRT |
implantando-um-modelo-em-um-app-flutter | implantar | Implantação em Flutter |
Escreva a decisão
Escreva MODEL-DECISION.md na raiz do projeto do usuário para que o
raciocínio sobreviva a esta conversa. Use exatamente estas seções, nesta ordem:
# Decisão do modelo
## A restrição
<custo | latência | privacidade | operação offline | consistência de comportamento, uma linha sobre por quê>
## Opções consideradas
<uma linha por alternativa: prompt, recuperação, modelo hospedado menor, roteamento, cada uma com por que foi ou não foi suficiente>
## Decisão
<treinar, ou não treinar. Se treinar: o alvo definido acima>
## Como saberemos se funcionou
<a avaliação que decide isso, ou um ponteiro para avaliando-um-modelo-ajustado>
Se a decisão for "não treinar", o arquivo ainda vale a pena ser escrito. É o registro do porquê, e impede que a mesma pergunta seja reaberta em três semanas sem memória da resposta.
Encaminhar para
- Decisão é "não treinar": pare aqui, ou retorne para a alternativa que realmente se encaixou
- Decisão é "treinar" e um arquivo de modelo já existe para trabalhar: inspecionando-um-pacote-de-modelo
- Decisão é "treinar" e é hora de executá-lo: escolha uma plataforma em
references/training-options.md - Treinamento já ocorreu e precisa ser julgado: avaliando-um-modelo-ajustado