O One-Shot Prompting (ou Prompting com Um Exemplo) é o ponto intermediário perfeito entre o Zero-Shot (apenas instruções) e o Few-Shot (múltiplos exemplos). Ele consiste em fornecer exatamente um único exemplo de entrada e saída esperada antes de apresentar o problema ou a pergunta final que você deseja que a LLM resolva.
A Escala de “Shots” na Engenharia de Prompt
Para entender o One-Shot, vale compará-lo com as outras abordagens de instrução:
- Zero-Shot PromptingO Zero-Shot Prompting (ou Prompting sem Exemplos) é a forma mais direta e intuitiva de interagir com uma LLM. Consiste em solicitar que o modelo execute uma tarefa apenas fornecendo instruções explícitas, sem dar nenhum exemplo prévio de entrada e sa... More (0 Exemplos): Você pede para a IA realizar a tarefa apenas com instruções diretas, sem nenhum exemplo.
- Prompt: “Classifique o sentimento do texto: ‘O produto chegou atrasado, mas o suporte resolveu rapidamente”.
- Saída/Resposta da LLM: “Neutro / Misto”.
- One-Shot Prompting (1 Exemplo): Você dá um único exemplo de referência para guiar o formato ou o tom de resposta.
- Prompt:
- Texto: “O atendimento foi terrível.” Sentimento: Negativo;
- Texto: “O produto chegou atrasado, mas o suporte resolveu rapidamente.” Sentimento:
- Prompt:
- Few-Shot PromptingO Few-Shot Prompting (ou Engenharia de Prompt com Poucos Exemplos) é uma das técnicas mais simples e diretas para orientar o comportamento de uma LLM. Em termos simples, consiste em fornecer no próprio prompt alguns exemplos de entrada e saída espera... More (2 a 5 Exemplos): Você fornece um pequeno conjunto de exemplos padronizados (geralmente entre 2 e 5) para que o modelo identifique o padrão por In-Context Learning (Aprendizado no Contexto).
Como Funciona na Prática?
No One-Shot, a estrutura do prompt é dividida de forma clara em três partes:
- A Instrução Geral: O comando do que deve ser feito.
- O Exemplo (O “Shot”): Um par completo de
Entrada EsperadaSaída Desejada. - A Entrada Real: A pergunta ou dado sobre o qual o modelo deve atuar.
Exemplo Prático: Padronização de JSON
Imagine que você precisa converter relatórios de erros em formato JSON para integrar a um sistema.
Markdown
[Instrução]
Converta o log de erro textual em um objeto JSON válido.
[Exemplo (Shot)]
Entrada: "Erro 404 às 14:32 no servidor de autenticação ao tentar conectar o usuário 102."
Saída:
{
"codigo": 404,
"horario": "14:32",
"servico": "autenticacao",
"usuario_id": 102
}
[Entrada Real]
Entrada: "Erro 500 às 09:15 no banco de dados principal ao tentar cadastrar o usuário 884."
Saída:
Code language: JavaScript (javascript)
Resposta gerada pela LLM:
JSON
{
"codigo": 500,
"horario": "09:15",
"servico": "banco_de_dados_principal",
"usuario_id": 884
}
Code language: JSON / JSON with Comments (json)
Por que usar One-Shot em vez de Zero-Shot?
Mesmo sendo apenas um exemplo, a diferença de desempenho entre Zero-Shot e One-Shot pode ser gigantesca em certos cenários:
- Elimina a Ambiguidade do Formato: Explicar em texto como você quer uma estrutura (“crie um objeto JSON com chaves em minúsculo e valores numéricos para ID“) costuma ser vago. Mostrar um único exemplo ensina a sintaxe exata instantaneamente.
- Define o Nível de Detalhamento: Se você pedir um resumo em Zero-Shot, o modelo pode gerar 2 linhas ou 3 parágrafos. Ao dar um exemplo de resumo com 3 tópicos, a LLM entende a métrica e a densidade de informação desejadas.
- Economia de Tokens: Comparado ao Few-Shot (que gasta muitos tokens enviando 4 ou 5 exemplos na janela de contextoO termo Context Window (ou Janela de Contexto) é um dos limites físicos e técnicos mais importantes no funcionamento de qualquer Grande Modelo de Linguagem. Para entender a janela de contexto, pense nela como a memória RAM da IA enquanto ela conversa... More), o One-Shot consome pouquíssima cota de tokens e entrega quase a mesma precisão em tarefas de formatação e tom.
O Risco de Overfitting/Super-Alinhamento
O maior perigo do One-Shot Prompting é escolher um exemplo ruim ou excessivamente específico:
- Viés do Exemplo único: Como o modelo tem apenas um ponto de referência, ele pode tentar copiar características do exemplo que deveriam ser variáveis.
- Exemplo do problema: Se o seu único exemplo de JSON usar a chave
"status": "erro", o modelo pode achar que todas as saídas devem ter a palavra"erro", mesmo que a nova entrada seja um log de sucesso.
Regra de ouro: Escolha um exemplo representativo, neutro e impecável do ponto de vista sintático. Se a tarefa tiver muitos casos de borda (edge cases), passe para o Few-Shot PromptingO Few-Shot Prompting (ou Engenharia de Prompt com Poucos Exemplos) é uma das técnicas mais simples e diretas para orientar o comportamento de uma LLM. Em termos simples, consiste em fornecer no próprio prompt alguns exemplos de entrada e saída espera... More.