โ๏ธ Conceito de Chaining
Prompt chaining e a tecnica de dividir uma tarefa complexa em multiplos prompts sequenciais, onde a saida de cada etapa alimenta a entrada da proxima. Pense em funcoes encadeadas: cada uma faz uma coisa bem feita, e juntas resolvem o problema completo.
๐ก Por que encadear em vez de um prompt so
- โข Foco: Cada prompt faz uma unica coisa, reduzindo chance de erro
- โข Debug: Se algo falha, voce sabe exatamente em qual etapa
- โข Flexibilidade: Troque ou melhore uma etapa sem reescrever tudo
- โข Janela de contexto: Evita estourar o limite de tokens com prompts gigantes
๐ Analogia com Programacao
Assim como em codigo, onde voce nao coloca toda a logica em uma unica funcao de 500 linhas:
// Em vez de:
fazTudo(dados) โ resultado
// Voce faz:
etapa1 = extrair(dados)
etapa2 = analisar(etapa1)
resultado = formatar(etapa2)
โ๏ธ Divisao de Tarefas
O segredo do chaining eficaz esta na decomposicao correta. Cada etapa deve ter responsabilidade unica, entrada e saida bem definidas, e ser testavel isoladamente.
๐ก Principio da Responsabilidade Unica
Cada prompt na cadeia deve fazer UMA coisa. Se voce descreve a etapa e precisa usar "e" ou "tambem", provavelmente deve dividir em duas:
- Ruim: "Extraia os dados E analise os padroes E gere recomendacoes"
- Bom: Etapa 1: Extrair dados โ Etapa 2: Analisar padroes โ Etapa 3: Gerar recomendacoes
Granularidade
Etapas muito grandes perdem o beneficio do chaining. Etapas muito pequenas criam overhead desnecessario. O ideal e que cada etapa produza um artefato verificavel (lista, resumo, JSON, classificacao).
Dependencias
Mapeie quais etapas dependem de quais. Etapas independentes podem rodar em paralelo. Etapas dependentes devem ser sequenciais. Isso impacta tanto o design quanto a performance.
Contratos de Interface
Defina claramente o formato de saida de cada etapa. Se a etapa 1 gera JSON, a etapa 2 deve esperar JSON. Inconsistencias de formato sao a principal causa de falhas em cadeias.
๐ค Passagem de Contexto
A parte mais delicada do chaining: como transferir informacao entre etapas sem perder dados criticos e sem ultrapassar limites de tokens.
๐ Formatos de Passagem
- โข Texto completo: Passar toda a saida como entrada da proxima etapa. Simples mas pode ser grande demais.
- โข Resumo: Adicionar uma etapa de sumarizacao entre etapas para comprimir o contexto.
- โข Dados estruturados: JSON ou tabelas facilitam a extracao de campos especificos.
- โข Selecao seletiva: Passar apenas os campos relevantes para a proxima etapa.
๐ Exemplo de Compressao
// Etapa 1 gera analise completa (500 tokens)
// Etapa intermediaria comprime para campos-chave (100 tokens)
Prompt: "Extraia apenas: sentimento, topicos_principais,
pontos_de_acao do texto abaixo. Formato: JSON."
// Etapa 2 recebe apenas o JSON comprimido
โ ๏ธ Perda de Informacao
Cada etapa de compressao pode perder nuances. Se a etapa 3 precisa de um detalhe que foi removido na compressao entre etapa 1 e 2, o resultado sera prejudicado. Planeje cuidadosamente o que cada etapa precisa receber.
โ ๏ธ Tratamento de Erros na Cadeia
Em uma cadeia, um erro em qualquer etapa se propaga para todas as subsequentes. Estrategias de tratamento de erros sao essenciais para cadeias robustas e confiaveis.
โ Estrategias Defensivas
- โ Validar saida de cada etapa antes de prosseguir
- โ Implementar retries com temperatura diferente
- โ Salvar checkpoints intermediarios
- โ Definir fallbacks para cada etapa
โ Erros Comuns
- โ Confiar cegamente na saida de cada etapa
- โ Nao ter plano B quando uma etapa falha
- โ Ignorar validacao de formato intermediario
- โ Cadeia sem logging para diagnostico
๐ก Validacao Intermediaria
Entre cada etapa, adicione uma verificacao simples:
- Formato: A saida e JSON valido? Tem os campos esperados?
- Completude: Todos os itens foram processados ou faltou algo?
- Sanidade: Os valores fazem sentido? (numeros positivos, datas validas)
- Tamanho: A saida tem o comprimento esperado ou e suspeitamente curta/longa?
๐๏ธ Patterns de Chaining
Existem padroes arquiteturais comuns para organizar cadeias de prompts. Conhece-los ajuda a escolher a estrutura certa para cada tipo de problema.
1. Sequencial (Pipeline)
A โ B โ C โ D. Cada etapa recebe a saida da anterior. O padrao mais simples e comum.
Exemplo: Extrair dados โ Analisar โ Sumarizar โ Formatar relatorio
2. Paralelo com Merge
A โ [B1, B2, B3] โ C. Multiplas etapas rodam em paralelo e seus resultados sao combinados.
Exemplo: Analisar sentimento + Extrair entidades + Classificar topico โ Combinar em relatorio unico
3. Condicional (Branch)
A โ SE(condicao) โ B1 ou B2. O fluxo se divide com base no resultado de uma etapa.
Exemplo: Classificar idioma โ SE portugues: prompt PT | SE ingles: prompt EN
4. Loop (Iterativo)
A โ B โ verificar โ se nao OK: voltar para B. Repete ate atingir criterio de qualidade.
Exemplo: Gerar texto โ Avaliar qualidade โ Se nota menor que 8: reescrever โ Repetir
๐ฌ Como Escolher o Pattern
- โข Sequencial: Quando cada etapa depende da anterior e a ordem importa
- โข Paralelo: Quando etapas sao independentes e velocidade importa
- โข Condicional: Quando diferentes inputs requerem tratamentos diferentes
- โข Loop: Quando a qualidade precisa atingir um limiar e pode exigir multiplas tentativas
๐งช Exercicio: Pipeline de 3 Etapas
Construa um pipeline completo de 3 etapas que transforma dados brutos em um relatorio estruturado. Voce vai projetar, implementar e testar cada etapa.
๐ Etapa 1: Pesquisa e Extracao
Input: Um texto longo (artigo, relatorio, transcricao)
Prompt: Extraia as informacoes-chave em formato JSON: fatos principais, numeros citados, pessoas mencionadas, conclusoes.
Output esperado: JSON estruturado com campos padronizados
๐ก Etapa 2: Analise e Insights
Input: O JSON da Etapa 1
Prompt: Com base nos dados extraidos, identifique: 3 tendencias principais, 2 riscos potenciais, 1 oportunidade. Para cada item, justifique com dados do JSON.
Output esperado: Analise estruturada com justificativas
๐ฏ Etapa 3: Relatorio Final
Input: A analise da Etapa 2
Prompt: Transforme a analise em um relatorio executivo de 1 pagina: titulo, resumo (3 frases), secao de tendencias, secao de riscos, recomendacao de acao. Tom: profissional e direto.
Output esperado: Relatorio formatado pronto para stakeholders
Bonus: Adicione uma validacao entre cada etapa para verificar se o formato esta correto antes de prosseguir.
๐ Resumo do Modulo
Proximo Modulo:
2.5 โ Tecnicas avancadas de controle e otimizacao de prompts