Few-shot prompting e papéis na conversa

Introdução aos modelos Claude

Nikhil Rangarajan

Data Scientist

Papéis na conversa com formato de mensagem

  • O array messages simula conversas em múltiplas rodadas
  • Cada mensagem tem um papel
  • Segue estilos de resposta específicos
messages = [
    {"role": "user", 
 "content": "What's the weather like?"},
    {"role": "assistant", 
 "content": "I don't have access to 
     current weather data. You might 
     want to check a weather app."},
    {"role": "user", 
 "content": "How's traffic downtown?"}]

response = client.messages.create(
    model="claude-sonnet-4-6",
    messages=messages)
Introdução aos modelos Claude

Introdução a few-shot prompting

  • Few-shot prompting ensina o Claude por exemplos
  • Pares user/assistant mostram o comportamento desejado
  • Funciona bem em novas entradas

Um usuário e um assistente

Introdução aos modelos Claude

Entendendo zero-shot, few-shot e one-shot

$$

  • Zero-shot: um único prompt, sem exemplos
  • One-shot: um exemplo antes da tarefa
  • Few-shot: vários exemplos mostrando o padrão
  • Mais exemplos geralmente aumentam a consistência
Introdução aos modelos Claude

Exemplo de código few-shot

messages = [{"role": "user", "content": "Translate to French: Hello"}] # Zero-shot

# One-shot messages = [{"role": "user", "content": "Translate to French: Good morning"}, {"role": "assistant", "content": "Bonjour"}, {"role": "user", "content": "Translate to French: Hello"}]
# Few-shot (multiple examples) messages = [{"role": "user", "content": "Translate to French: Good morning"}, {"role": "assistant", "content": "Bonjour"}, {"role": "user", "content": "Translate to French: Thank you"}, {"role": "assistant", "content": "Merci"}, {"role": "user", "content": "Translate to French: Hello"}]
Introdução aos modelos Claude

Aplicações práticas de few-shot

  • Consistência de formato: mostre a estrutura desejada
  • Tom compatível: demonstre o estilo de comunicação
  • Raciocínio complexo: guie a resolução passo a passo
  • Especialização: ensine aplicação de conhecimento
# Ensinando formato de resposta de e-mail
messages = [{"role": "user", "content": "Customer complaint: Late delivery"},
    {"role": "assistant", "content": "Dear Customer,\n\nWe apologize for the delay. 
     We'll track your order and update you within 24 hours.
     \n\nBest regards,\nSupport Team"},
    {"role": "user", "content": "Customer complaint: Wrong item received"}]
Introdução aos modelos Claude

Boas práticas para few-shot prompting

Prompting

  • Use 2–5 exemplos na maioria das tarefas
  • Garanta exemplos de alta qualidade e consistentes
  • Varie para mostrar o padrão, não só repetir
  • Teste casos-limite para checar robustez
Introdução aos modelos Claude

Vamos praticar!

Introdução aos modelos Claude

Preparing Video For Download...