Cadeias de transformação sequencial
Cadeias Rascunho → Revisão → Aperfeiçoamento e outros refinamentos em várias etapas.
Cadeias de transformação sequencial é uma aula grátis de AI Prompt Engineering no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de AI Prompt Engineering, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de AI Prompt Engineering inclui 4 aulas no total.
Cadeias de transformação
Uma cadeia de transformação converte progressivamente o conteúdo de uma forma para outra por meio de uma sequência de etapas especializadas. Cada etapa transforma a saída da etapa anterior, refinando ou enriquecendo o conteúdo gradualmente.
Os três padrões de cadeia de transformação mais úteis são:
- Rascunho → Revisão → Aprimoramento: Criação e refinamento de conteúdo
- Geração de ideias → Filtragem → Expansão: Geração e desenvolvimento de ideias
- Extração → Classificação → Encaminhamento: Processamento de dados e tomada de decisões
Rascunho → Revisão → Aprimoramento
A cadeia de criação de conteúdo mais comum. Cada etapa tem uma função distinta:
- Rascunho: Gere conteúdo bruto rapidamente — priorize a velocidade em vez da perfeição
- Revisão: Critique o rascunho com base em critérios específicos — precisão, tom e completude
- Aprimoramento: Aplique as conclusões da revisão para produzir a saída final
Separar essas atividades em etapas distintas produz resultados melhores do que pedir ao modelo que faça o rascunho e o aprimoramento de uma só vez.
Rascunho → Revisão → Aprimoramento: implementação em Python
Implementação completa da cadeia Rascunho → Revisão → Aprimoramento:
import anthropic
client = anthropic.Anthropic(api_key='YOUR_API_KEY')
def call(prompt):
r = client.messages.create(
model='claude-opus-4-5', max_tokens=800,
messages=[{'role': 'user', 'content': prompt}]
)
return r.content[0].text
def draft_review_polish(topic, audience, tone):
# Step 1: Draft
draft = call(f'Write a 200-word article about: {topic}. Audience: {audience}.')
# Step 2: Review — produces critique, not final text
review = call(f'Review this article for tone ({tone}), accuracy, and clarity.\nList specific improvements needed.\n\nArticle:\n{draft}')
# Step 3: Polish — applies review findings
final = call(f'Rewrite this article applying all the review feedback.\n\nOriginal:\n{draft}\n\nReview feedback:\n{review}')
return {'draft': draft, 'review': review, 'final': final}
result = draft_review_polish('prompt engineering', 'software engineers', 'technical but approachable')
print(result['final'][:300])Geração de ideias → Filtragem → Expansão
A cadeia de desenvolvimento de ideias: gere muitas ideias, depois restrinja-as de forma inteligente e, por fim, desenvolva-as profundamente.
- Geração de ideias: Gere muitas ideias sem julgá-las — priorize a quantidade em vez da qualidade
- Filtragem: Aplique critérios de seleção para identificar as melhores ideias
- Expansão: Desenvolva as ideias selecionadas em propostas detalhadas
Essa cadeia evita o viés de ancoragem de começar com poucas ideias e permanecer preso a elas.
Geração de ideias → Filtragem → Expansão: implementação em Python
Implementação completa da cadeia Geração de ideias → Filtragem → Expansão com passagem de JSON:
import json
def brainstorm_filter_expand(challenge, criteria, n_final=3):
# Step 1: Brainstorm — generate many ideas
raw_ideas = call(
f'Generate 10 creative ideas for this challenge: {challenge}\n'
'Return JSON: {"ideas": ["string"]}'
)
ideas = json.loads(raw_ideas)['ideas']
# Step 2: Filter — apply criteria
ideas_formatted = '\n'.join(f'{i+1}. {idea}' for i, idea in enumerate(ideas))
filtered_raw = call(
f'Select the {n_final} best ideas based on these criteria: {criteria}\n'
f'Ideas:\n{ideas_formatted}\n'
f'Return JSON: {{"selected": ["string"]}}'
)
selected = json.loads(filtered_raw)['selected']
# Step 3: Expand — develop each selected idea
expansions = {}
for idea in selected:
expansions[idea] = call(f'Write a 100-word expansion of this idea, including implementation steps: {idea}')
return expansions
result = brainstorm_filter_expand('reduce app churn', 'feasible in 30 days, measurable impact', n_final=2)
print(list(result.keys()))Extração → Classificação → Encaminhamento
A cadeia de processamento de dados: extraia dados estruturados, classifique-os e encaminhe-os ao manipulador apropriado.
- Extração: Extraia informações estruturadas de texto não estruturado
- Classificação: Atribua categorias, rótulos ou prioridades
- Encaminhamento: Tome ações diferentes com base na classificação
Esse padrão é usado em sistemas inteligentes de triagem, moderação de conteúdo e encaminhamento automatizado do suporte ao cliente.
Extração → Classificação → Encaminhamento: implementação em Python
Implementação completa da cadeia Extração → Classificação → Encaminhamento:
import json
def extract_classify_route(ticket_text):
# Step 1: Extract structured data
extracted = json.loads(call(
f'Extract from this support ticket: {{"issue_summary": str, "product_area": str, "user_emotion": str}}\n\n{ticket_text}'
))
# Step 2: Classify priority and department
classified = json.loads(call(
f'Classify this ticket.\nIssue: {extracted["issue_summary"]}\nEmotion: {extracted["user_emotion"]}\n'
'Return JSON: {"priority": "urgent|high|medium|low", "department": "billing|technical|general"}'
))
# Step 3: Route — generate department-specific response
dept = classified['department']
priority = classified['priority']
route_prompts = {
'billing': f'You are a billing specialist. Priority: {priority}. Respond to: {extracted["issue_summary"]}',
'technical': f'You are a senior engineer. Priority: {priority}. Resolve: {extracted["issue_summary"]}',
'general': f'You are customer support. Priority: {priority}. Help with: {extracted["issue_summary"]}'
}
response = call(route_prompts[dept])
return {'extracted': extracted, 'classified': classified, 'response': response}
result = extract_classify_route('My payment was charged twice and I am furious!')
print(result['classified'])Escolhendo o padrão de cadeia adequado
Associe seu caso de uso ao padrão de cadeia de transformação adequado:
- Rascunho → Revisão → Aprimoramento: Qualquer criação de conteúdo — e-mails, artigos, documentação e código
- Geração de ideias → Filtragem → Expansão: Estratégia, ideação, planejamento de produtos e calendários de conteúdo
- Extração → Classificação → Encaminhamento: Solicitações de suporte, e-mails, moderação de conteúdo e processamento de dados
Esses padrões também podem ser combinados — por exemplo, Extração → Classificação → Geração de soluções → Filtragem → Rascunho da resposta.
Combinando padrões
Os fluxos do mundo real geralmente combinam vários padrões em cadeias mais longas:
def full_content_pipeline(raw_research):
# Pattern 1: Extract → Classify key insights
insights = json.loads(call(
f'Extract top 5 insights. Return JSON: {{"insights": [str]}}\n\n{raw_research}'
))
# Pattern 2: Brainstorm → Filter article angles
angles_raw = json.loads(call(
f'Brainstorm 8 article angles based on: {insights["insights"]}\nReturn JSON: {{"angles": [str]}}'
))
best_angle = json.loads(call(
f'Select the most compelling angle for a developer audience.\nReturn JSON: {{"angle": str}}\n\nAngles: {angles_raw["angles"]}'
))
# Pattern 3: Draft → Review → Polish
draft = call(f'Write a 300-word technical article on: {best_angle["angle"]}')
review = call(f'Review for technical accuracy and developer relevance:\n{draft}')
final = call(f'Polish the article applying this feedback:\n\nDraft:\n{draft}\n\nFeedback:\n{review}')
return final
print('Combined pipeline defined.')Registrando saídas intermediárias
Nas cadeias de transformação, registre todas as saídas intermediárias. Isso é essencial para a depuração — se a saída final estiver errada, você precisará saber qual etapa produziu a saída incorreta.
import logging
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger('chain')
def logged_call(step_name, prompt, **kwargs):
logger.info(f'[{step_name}] INPUT: {prompt[:100]}...')
result = call(prompt)
logger.info(f'[{step_name}] OUTPUT: {result[:100]}...')
return result
def draft_review_polish_logged(topic):
draft = logged_call('DRAFT', f'Write 200 words about: {topic}')
review = logged_call('REVIEW', f'Review for clarity:\n{draft}')
final = logged_call('POLISH', f'Rewrite applying feedback.\nDraft:\n{draft}\nFeedback:\n{review}')
return final
print('Logging integrated into chain.')Medindo a qualidade da cadeia
Meça a melhoria proporcionada por cada etapa para validar se a cadeia está agregando valor:
def measure_chain_improvement(topic):
# Baseline: single prompt
baseline = call(f'Write and polish a 200-word article about {topic} in one step.')
# Chain: Draft -> Review -> Polish
draft = call(f'Write a 200-word draft about {topic}.')
review = call(f'List 3 specific improvements needed:\n{draft}')
chained = call(f'Rewrite applying these improvements:\nDraft:\n{draft}\nImprovements:\n{review}')
# Have the model compare quality
comparison = call(
f'Which version is higher quality? Rate each 1-10 for clarity and depth.\n'
f'Version A (single prompt):\n{baseline}\n\nVersion B (chain):\n{chained}\n'
'Return JSON: {"version_a_score": int, "version_b_score": int, "winner": "A|B", "reason": str}'
)
return comparison
print('Quality measurement pipeline defined.')Verificação rápida
Qual padrão de cadeia de transformação é mais apropriado para processar solicitações de suporte recebidas e encaminhá-las à equipe correta?
Cadeias de transformação — principais conclusões
Cadeias sequenciais de transformação refinam progressivamente o conteúdo por meio de etapas especializadas:
- Rascunho → Revisão → Aprimoramento: Melhor para criação de conteúdo — gera, critica e depois refina
- Geração de ideias → Filtragem → Expansão: Melhor para ideação — gera amplamente, seleciona com critério e desenvolve profundamente
- Extração → Classificação → Encaminhamento: Melhor para processamento de dados — extrai a estrutura, atribui rótulos e encaminha aos manipuladores
- Os padrões podem ser combinados em fluxos mais longos para casos de uso complexos
- Registre as saídas intermediárias em todas as etapas para facilitar a depuração
- Meça a melhoria proporcionada por cada etapa para validar o valor da cadeia
Perguntas Frequentes
A aula “Cadeias de transformação sequencial” é grátis?
Sim — o texto completo de “Cadeias de transformação sequencial” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de AI Prompt Engineering, atualize para CoddyKit PRO. O curso de AI Prompt Engineering inclui 4 aulas no total.
O que vou aprender em “Cadeias de transformação sequencial”?
Cadeias Rascunho → Revisão → Aperfeiçoamento e outros refinamentos em várias etapas. Você pratica AI Prompt Engineering com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar AI Prompt Engineering?
Nenhuma experiência prévia é necessária. AI Prompt Engineering no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.
Quanto tempo leva a aula “Cadeias de transformação sequencial”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de AI Prompt Engineering?
Sim. Cada aula de AI Prompt Engineering inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- O que é encadeamento de solicitações?
- Padrões de resultado para entrada
- Cadeias de transformação sequencial
- Tratamento de erros em cadeias de solicitações