Pular para o conteúdo principal

Capítulo 2: Tipos de Prompts (Zero-shot, Few-shot)

🎯 Objetivos de Aprendizagem​

Após concluir este capítulo, você será capaz de:

  • Definir e aplicar prompting zero-shot
  • Definir e aplicar prompting few-shot
  • Determinar quando usar cada abordagem
  • Criar exemplos eficazes para few-shot learning

📚 Introdução​

Uma das decisões mais importantes em engenharia de prompt é se você deve fornecer exemplos. Este capítulo explora as duas abordagens fundamentais: prompting zero-shot (sem exemplos) e prompting few-shot (com exemplos).

Entendendo a Terminologia​

Antes de começarmos, vamos esclarecer esses termos emprestados do machine learning:

TermoSignificado em IASignificado em Prompting
Zero-shotO modelo executa a tarefa sem treinamento específicoPrompt sem exemplos
One-shotO modelo aprende com um exemploPrompt com um exemplo
Few-shotO modelo aprende com alguns exemplosPrompt com 2-5+ exemplos

Prompting Zero-Shot​

Prompting zero-shot significa pedir para a IA executar uma tarefa sem fornecer nenhum exemplo.

Como Funciona​

┌─────────────────────────────────────────────────────────────┐
│ ZERO-SHOT PROMPTING │
├─────────────────────────────────────────────────────────────┤
│ │
│ USER: "Translate 'Hello, how are you?' to French" │
│ │
│ AI relies on: │
│ • Pre-trained knowledge │
│ • Understanding of task from instruction │
│ • No specific examples provided │
│ │
│ AI: "Bonjour, comment allez-vous ?" │
│ │
└─────────────────────────────────────────────────────────────┘

Exemplos de Zero-Shot​

Classificação Simples:

Classify the sentiment of this review as positive,
negative, or neutral:

"The product arrived on time but the quality was
disappointing. Won't buy again."

Sentiment:

Geração de Texto:

Write a professional email declining a job offer
politely while leaving the door open for future
opportunities.

Extração de Informações:

Extract the date, time, and location from this text:

"The conference will be held on March 15, 2024,
at 9 AM in the Grand Ballroom of the Hilton Hotel."

Quando Usar Zero-Shot​

✅ Use zero-shot quando:

  • A tarefa é simples e bem definida
  • A IA provavelmente já tem boas capacidades pré-treinadas para a tarefa
  • Você quer resultados rápidos sem criar exemplos
  • O formato/estilo desejado é padrão

❌ Evite zero-shot quando:

  • A tarefa exige formatação específica
  • Você precisa de consistência em muitos resultados
  • A tarefa é incomum ou específica de domínio
  • Os resultados iniciais de zero-shot são inconsistentes

Prompting Few-Shot​

Prompting few-shot fornece exemplos que demonstram o padrão de entrada e saída desejado.

Como Funciona​

┌─────────────────────────────────────────────────────────────┐
│ FEW-SHOT PROMPTING │
├─────────────────────────────────────────────────────────────┤
│ │
│ EXAMPLES PROVIDED: │
│ ┌─────────────────────────────────────────┐ │
│ │ Example 1: Input → Output │ │
│ │ Example 2: Input → Output │ │
│ │ Example 3: Input → Output │ │
│ └─────────────────────────────────────────┘ │
│ │
│ NEW INPUT: [Your actual task] │
│ │
│ AI learns the pattern from examples and applies it │
│ │
└─────────────────────────────────────────────────────────────┘

Exemplo Few-Shot: Classificação de Sentimento​

Classify the sentiment of movie reviews.

Review: "This movie was absolutely fantastic! Best film I've seen this year."
Sentiment: Positive

Review: "Terrible acting, boring plot. Complete waste of time."
Sentiment: Negative

Review: "It was okay. Some good parts, some not so good."
Sentiment: Neutral

Review: "The special effects were amazing but the story was predictable."
Sentiment:

Exemplo Few-Shot: Extração de Dados​

Extract product information from descriptions.

Description: "Apple MacBook Pro 14-inch, M3 chip, 16GB RAM, 512GB SSD, Space Gray - $1,999"
Product: MacBook Pro 14-inch
Brand: Apple
Specs: M3 chip, 16GB RAM, 512GB SSD
Color: Space Gray
Price: $1,999

Description: "Samsung Galaxy S24 Ultra, 256GB, Titanium Black, Unlocked - $1,299.99"
Product: Galaxy S24 Ultra
Brand: Samsung
Specs: 256GB, Unlocked
Color: Titanium Black
Price: $1,299.99

Description: "Sony WH-1000XM5 Wireless Noise Canceling Headphones, Silver - $349"
Product:
Brand:
Specs:
Color:
Price:

Exemplo Few-Shot: Formato Personalizado​

Convert meeting notes to action items format.

Notes: "John will update the website by Friday. Sarah needs to review the budget proposal. Team should schedule a follow-up meeting next week."

Action Items:
• [ ] John: Update website (Due: Friday)
• [ ] Sarah: Review budget proposal
• [ ] Team: Schedule follow-up meeting (Due: Next week)

---

Notes: "Marketing to prepare Q2 campaign by March 1st. Dev team should fix the login bug ASAP. Lisa will coordinate with the vendor about pricing."

Action Items:
• [ ] Marketing: Prepare Q2 campaign (Due: March 1st)
• [ ] Dev team: Fix login bug (Priority: ASAP)
• [ ] Lisa: Coordinate with vendor about pricing

---

Notes: "Tom needs to finish the report. The design team will create new mockups. We should update clients about the delay."

Action Items:

Comparação: Zero-Shot vs Few-Shot​

AspectoZero-ShotFew-Shot
Exemplos necessáriosNenhum2-5+
Tempo de configuraçãoMínimoMais esforço
ConsistênciaVariávelMaior
Uso de tokensMenorMaior (exemplos consomem tokens)
Melhor paraTarefas padrãoFormatos personalizados, casos de exceção
Curva de aprendizadoMenorRequer boa seleção de exemplos

Comparação Visual​

ZERO-SHOT:
┌─────────────────────────────────────┐
│ Task: Classify sentiment │
│ │
│ Input: "Great product!" │
│ │
│ → AI uses general knowledge │
│ │
│ Output: Positive │
└─────────────────────────────────────┘

FEW-SHOT:
┌─────────────────────────────────────┐
│ Task: Classify sentiment │
│ │
│ Example 1: "Love it!" → Positive │
│ Example 2: "Hate it!" → Negative │
│ Example 3: "It's fine" → Neutral │
│ │
│ Input: "Great product!" │
│ │
│ → AI learns pattern from examples │
│ │
│ Output: Positive │
└─────────────────────────────────────┘

Boas Práticas para Exemplos Few-Shot​

1. Diversidade nos Exemplos​

Inclua exemplos que cubram diferentes cenários:

✓ BOM: Exemplos diversos
- Avaliação positiva (curta)
- Avaliação negativa (detalhada)
- Avaliação neutra (sentimentos mistos)

✗ RUIM: Exemplos homogêneos
- Avaliação positiva
- Outra avaliação positiva
- Mais uma avaliação positiva

2. Formato Consistente​

Mantenha a mesma estrutura em todos os exemplos:

✓ BOM: Formato consistente
Input: "text" → Category: [result]
Input: "text" → Category: [result]
Input: "text" → Category: [result]

✗ RUIM: Formato inconsistente
Input: "text" → Category: [result]
"text" is: [result]
[result] for "text"

3. Exemplos Representativos​

Escolha exemplos que representem casos reais de uso:

✓ BOM: Realista
"The delivery was late but the product quality is excellent" → Mixed

✗ RUIM: Artificial
"Product good. Happy. Buy again." → Positive

4. Delimitadores Claros​

Separe os exemplos de forma clara:

✓ BOM: Separação clara
Example 1:
Input: [text]
Output: [result]

---

Example 2:
Input: [text]
Output: [result]

---

Now process:
Input: [new text]
Output:

Quantos Exemplos Usar?​

NúmeroNomeCaso de Uso
0Zero-shotTarefas padrão e bem definidas
1One-shotDemonstração de padrão simples
2-3Few-shotMais comum para tarefas personalizadas
4-5Few-shotTarefas complexas ou com nuances
6+Many-shotPadrões altamente específicos
Token Economics

Mais exemplos = mais tokens = maior custo. Encontre o número mínimo de exemplos que garanta resultados consistentes.

Avançado: Few-Shot com Chain-of-Thought​

Combine few-shot com explicações de raciocínio:

Solve these word problems.

Problem: "A store has 45 apples. They sell 12 and receive a shipment of 30. How many apples do they have?"
Thinking: Start with 45, subtract 12 sold (45-12=33), add 30 received (33+30=63)
Answer: 63 apples

Problem: "If a train travels at 60 mph for 2.5 hours, how far does it go?"
Thinking: Distance = Speed × Time, so 60 mph × 2.5 hours = 150 miles
Answer: 150 miles

Problem: "A recipe needs 3 cups of flour for 12 cookies. How much flour for 20 cookies?"
Thinking:
Answer:

Exercício Prático​

Exercício: Converter Zero-Shot em Few-Shot​

Este prompt zero-shot gera resultados inconsistentes:

Convert these informal messages to professional emails.

Message: "hey can u send me the report asap thx"

Sua tarefa: Crie uma versão few-shot com 2-3 exemplos que garanta formatação consistente.

Ver Solução
Convert informal messages to professional emails.

Message: "hey can u send me the report asap thx"
Professional Email:
Subject: Report Request
Dear [Name],
I hope this message finds you well. Could you please
send me the report at your earliest convenience?
Thank you for your assistance.
Best regards,
[Your name]

---

Message: "yo meeting 2morrow is cancelled btw"
Professional Email:
Subject: Meeting Cancellation Notice
Dear Team,
I wanted to inform you that tomorrow's meeting has
been cancelled. I apologize for any inconvenience.
We will reschedule and notify you of the new date.
Best regards,
[Your name]

---

Message: "can someone fix the printer its broken again"
Professional Email:
Subject: Printer Maintenance Request
Dear IT Support,
I am writing to report that the printer in [location]
is not functioning properly. Could someone please
look into this issue? Thank you for your help.
Best regards,
[Your name]

---

Message: "running late to the client call sry"
Professional Email:

Principais Aprendizados​

Summary
  1. O prompting zero-shot funciona sem exemplos; ideal para tarefas padrão
  2. O prompting few-shot usa exemplos para demonstrar padrões; ideal para formatos personalizados
  3. 2-3 exemplos geralmente são suficientes para a maioria das tarefas
  4. Os exemplos devem ser diversos, consistentes e representativos
  5. Mais exemplos = maior custo; encontre o número mínimo eficaz
  6. Few-shot é excelente para formatos personalizados, casos de exceção e garantir consistência

O que vem a seguir?​

No próximo capítulo, vamos explorar as estruturas básicas de prompts que fornecem frameworks para diferentes tipos de tarefas.


← Anterior: Anatomia de um Prompt | Próximo: Estruturas Básicas de Prompt →