Pular para o conteúdo
Técnicas

Few-Shot vs Zero-Shot: Quando Usar Cada Um

Adicionar exemplos a um prompt pode transformar o resultado — ou desperdiçar tokens. Veja como zero-shot, one-shot e few-shot se comparam e quando usar cada um.

Comparação entre as abordagens de prompting zero-shot e few-shot

Peça a um modelo para "ordenar estes tickets de suporte por urgência" e ele vai fazer alguma coisa. Se essa alguma coisa bate com o formato exato que o seu painel espera é outra questão. A distância entre uma instrução vaga e uma confiável costuma se resumir a você ter mostrado ou não algum exemplo ao modelo. Essa única escolha, exemplos ou nenhum exemplo, é a diferença entre prompting zero-shot e few-shot, e saber qual usar te poupa muita tentativa e erro.

Os três sabores de "shot"

A palavra "shot" aqui significa apenas um exemplo. Um shot é uma demonstração da tarefa, geralmente escrita como uma entrada emparelhada com a saída que você quer de volta.

  • Zero-shot não dá exemplo nenhum ao modelo. Você descreve a tarefa em linguagem comum e confia que o modelo já sabe fazer. A maior parte do que você digita numa janela de chat é zero-shot.
  • One-shot inclui um único exemplo antes do seu pedido real. Essa única demonstração ancora o formato e o tom.
  • Few-shot empilha vários pares de entrada e saída, geralmente de dois a cinco, para o modelo inferir o padrão a partir das próprias demonstrações.

O few-shot às vezes é chamado de aprendizado em contexto, porque o modelo "aprende" a tarefa com os exemplos dentro do prompt, sem nenhum retreinamento. Nada nos pesos do modelo muda. Você está apenas guiando-o com um padrão que ele pode copiar. Essa ideia vem direto da pesquisa que mostrou que modelos grandes conseguem pegar tarefas novas só com um punhado de demonstrações.

Um prompt zero-shot fica assim:

Classifique o sentimento desta avaliação como positivo, negativo ou neutro. Avaliação: A entrega atrasou, mas o produto funciona bem. Sentimento:

Uma versão few-shot da mesma tarefa mostra o padrão primeiro:

Classifique o sentimento como positivo, negativo ou neutro. Avaliação: Amei demais, melhor compra do ano. Sentimento: positivo Avaliação: Quebrou depois de dois dias e o suporte me ignorou. Sentimento: negativo Avaliação: Faz o que promete, nada de mais. Sentimento: neutro Avaliação: A entrega atrasou, mas o produto funciona bem. Sentimento:

Repare que o modelo agora tem um molde para imitar. Ele vê rótulos de uma palavra, então devolve uma palavra.

Onde o zero-shot desmorona

O zero-shot vai bem até você precisar de consistência. A falha que você vai encontrar com mais frequência é o desvio de formato: o modelo responde certo, mas embrulha a resposta de um jeito diferente toda vez. Digamos que você queira dados de produto extraídos de descrições bagunçadas para linhas limpas. Uma tentativa zero-shot pode produzir isto na primeira chamada:

O Acme Pro pesa 2,3 kg e custa 49 dólares.

...e isto na seguinte:

  • Nome: Acme Pro
  • Preço: R$ 49
  • Peso: 2,3 kg

Os dois estão "certos". Nenhum é parseável pelo mesmo script. Quando você joga a saída em uma planilha, um banco de dados ou outro prompt, essa variação é um bug.

O few-shot resolve removendo a adivinhação. Mostre três exemplos exatamente no formato que você quer, e a quarta resposta entra na linha:

Extraia o nome do produto, o preço e o peso como valores separados por barra vertical. Texto: O ventilador Nimbus é silencioso e sai por 32 dólares, pesando 1,1 kg. Saída: ventilador Nimbus | 32 | 1.1 Texto: Nosso liquidificador Titan custa 89 dólares e marca 3,4 quilos na balança. Saída: liquidificador Titan | 89 | 3.4 Texto: O Acme Pro pesa 2,3 kg e custa 49 dólares. Saída:

O modelo devolve Acme Pro | 49 | 2.3 toda vez, porque você não deixou espaço para ele improvisar. Esse é o truque inteiro: exemplos restringem o espaço de saída.

Escolhendo entre eles

Comece pelo zero-shot. É mais rápido de escrever, mais barato de rodar, e para tarefas comuns que o modelo já viu milhares de vezes os exemplos não acrescentam nada. Resumir um artigo, responder a uma pergunta factual, traduzir uma frase: isso raramente precisa de demonstrações.

Passe para o few-shot quando uma destas for verdadeira:

  • Você precisa de um formato de saída específico. Colunas fixas, um formato JSON específico, um vocabulário controlado de rótulos. Exemplos fixam isso mais rápido do que um parágrafo de instruções.
  • A tarefa é incomum ou específica de um domínio. Classificar cláusulas jurídicas por nível de risco, ou etiquetar notas de química, não é algo para o qual o modelo tenha fortes prioris. Mostre a ele como é o "alto risco" no seu mundo.
  • O zero-shot já está inconsistente. Se você rodou o prompt cinco vezes e obteve três estruturas diferentes, esse é o seu sinal. Adicione exemplos da estrutura que você realmente quer.

O one-shot fica no meio. Use-o quando um único exemplo basta para travar o formato, mas a tarefa em si é fácil. Custa quase nada e muitas vezes resolve o desvio de formato sozinho. Se as boas bases de um prompt zero-shot claro ainda são novidade para você, o guia de fundamentos de engenharia de prompt cobre os hábitos de escrever instruções que tornam os exemplos ainda mais eficazes.

Fazendo seus exemplos valerem o que custam

Exemplos ruins ensinam padrões ruins ao modelo, então a qualidade das suas demonstrações importa mais do que a quantidade. Algumas regras mantêm-nos úteis:

  • Deixe-os representativos. Escolha exemplos que espelhem as entradas reais que você espera, incluindo as complicadas. Se metade dos seus dados tem campos faltando, mostre um exemplo com campo faltando e como lidar com ele.
  • Mantenha-os variados. Três exemplos quase idênticos ensinam ao modelo um caso estreito. Espalhe-os pela gama de resultados para ele ver casos positivos, negativos e extremos, em vez de três variações da mesma resposta.
  • Congele a formatação. Todo exemplo deve usar estrutura idêntica: mesmos rótulos, mesmo espaçamento, mesma pontuação, mesma capitalização. Inconsistência nos seus exemplos vira inconsistência na saída. É aqui que a maioria dos prompts few-shot silenciosamente dá errado.
  • Ordene com intenção. Os modelos podem dar mais peso ao último exemplo, então coloque o caso mais limpo e típico perto do fim.
Dica: Quando um exemplo produz saída errada, não adicione mais três para abafá-lo. Corrija ou substitua aquele que ensinou o erro. Uma demonstração enganosa pode pesar mais que vários bons exemplos.

Fique de olho na conta de tokens

Cada exemplo que você adiciona pega carona no prompt em toda chamada. Dez demonstrações podem quadruplicar o tamanho de um pedido, e você paga por esses tokens toda vez, tenha a tarefa precisado deles ou não. Em um trabalho de alto volume, isso soma rápido.

De dois a cinco exemplos costuma ser o ponto ideal. Além disso, você tende a ver retornos decrescentes: o modelo já pegou o padrão lá no exemplo três, e do quatro ao dez os exemplos basicamente só custam dinheiro. Teste com um conjunto pequeno e só aumente se a precisão estiver mesmo deixando a desejar. Se você se pegar colando as mesmas demonstrações em prompt após prompt, salve-as em algum lugar reaproveitável, como uma biblioteca de prompts, em vez de redigitar, e apoie-se em um otimizador de prompts para enxugar os exemplos maiores do que precisam ser.

Combinando shots com raciocínio

O few-shot mostra toda a sua envergadura quando você o combina com raciocínio. Em vez de mostrar pares simples de entrada e saída, você mostra ao modelo exemplos que incluem as etapas de raciocínio entre a pergunta e a resposta. Essa é a ponte para o chain-of-thought prompting, em que cada demonstração percorre a lógica antes de chegar a um resultado. O modelo copia não só o seu formato, mas o seu jeito de pensar o problema, que é por que o few-shot com chain-of-thought lida com matemática e lógica de várias etapas muito melhor do que qualquer uma das técnicas sozinha.

Quando você estiver confortável empilhando exemplos e raciocínio juntos, o guia de engenharia de prompt avançada vai mais fundo em estruturar esses prompts híbridos para confiabilidade em escala. Comece simples, adicione exemplos só quando a tarefa pedir e deixe a saída te dizer quando você já tem o suficiente.

Referências

Coloque em prática. Aplique o que você acabou de ler com nossa ferramenta gratuita: Otimizador de Prompts →
Por Entusiasta de IA e usuário avançado

Jordi Benitez usa ferramentas de IA no dia a dia há anos. Não é pesquisador nem tem título acadêmico: apenas um usuário avançado que passou horas suficientes fazendo prompts no ChatGPT, Claude, Gemini e modelos de imagem para saber o que realmente funciona, e criou o GetEasyPrompt para compartilhar isso em linguagem simples.

FAQ

Perguntas frequentes

O zero-shot dá ao modelo uma tarefa sem nenhum exemplo. O few-shot inclui alguns pares de entrada e saída para o modelo copiar o padrão. O one-shot é o caso especial de exatamente um exemplo.
Quando você precisa de um formato ou estilo específico, quando a tarefa é incomum ou quando os resultados do zero-shot são inconsistentes. Os exemplos prendem o modelo exatamente ao que você quer.
Não. Em tarefas simples e comuns, os exemplos só aumentam o tamanho e o custo sem ajudar. Comece com zero-shot e adicione exemplos apenas quando o resultado precisar de direção.

Escreva seu próximo prompt em segundos

Transforme uma ideia solta em um prompt claro e estruturado que qualquer IA consegue seguir. Grátis, privado e sem precisar de conta.

Abrir o Otimizador de PromptsVer todas as ferramentas