🤝 Cap 14: Sistemas Multiagentes: CrewAI e AutoGen - Exemplos Práticos
Código executável demonstrando a orquestração e cooperação autônoma entre múltiplos agentes especializados em Python.
🗺️ Fluxo de Processamento
flowchart LR
DEMANDA["Demanda: 'Artigo técnico sobre WebAssembly'"]
--> AG_PESQ["1. Agente Pesquisador (Coleta fatos e benchmarks)"]
AG_PESQ --> DADOS["Dados Brutos de Pesquisa"]
DADOS --> AG_REDAT["2. Agente Redator (Escreve artigo estruturado)"]
AG_REDAT --> DRAFT["Rascunho de Artigo"]
DRAFT --> AG_REV["3. Agente Revisor (Valida código e estilo)"]
AG_REV --> FINAL["Publicação de Alta Qualidade ⚡"]
style DEMANDA fill:#ede7f6,stroke:#512da8,stroke-width:2px
style AG_PESQ fill:#e1f5fe,stroke:#03a9f4,stroke-width:1.5px
style AG_REDAT fill:#fff3e0,stroke:#ff9800,stroke-width:1.5px
style AG_REV fill:#e8f5e9,stroke:#4caf50,stroke-width:1.5px
style FINAL fill:#00897b,stroke:#004d40,stroke-width:2px,color:#ffffff
📄 Código de Demonstração (multiagent_pipeline_demo.py)
class AgenteSimulado:
def __init__(self, papel, objetivo):
self.papel = papel
self.objetivo = objetivo
def executar(self, entrada):
if self.papel == "Pesquisador":
return f"[Pesquisa]: Fatos chave sobre {entrada} - Roda em sandbox, velocidade próxima ao C/C++, suportado por todos os browsers."
elif self.papel == "Redator":
return f"[Redação]: Artigo Completo - {entrada.replace('[Pesquisa]: ', '')} O WebAssembly transforma a web moderna."
elif self.papel == "Revisor":
return f"[Revisão]: Aprovado com louvor! Texto polido pronto para publicação: '{entrada}'"
def orquestrar_equipe(topico):
print(f"=== Orquestração Multiagente (Padrão CrewAI): '{topico}' ===\n")
pesquisador = AgenteSimulado("Pesquisador", "Levantar fatos técnicos")
redator = AgenteSimulado("Redator", "Escrever texto claro")
revisor = AgenteSimulado("Revisor", "Garantir excelência editorial")
passo1 = pesquisador.executar(topico)
print("Passo 1:", passo1)
passo2 = redator.executar(passo1)
print("\nPasso 2:", passo2)
passo3 = revisor.executar(passo2)
print("\nPasso 3:", passo3)
if __name__ == "__main__":
orquestrar_equipe("WebAssembly em 2026")
🚀 Saída Esperada no Terminal / Execução
=== Orquestração Multiagente (Padrão CrewAI): 'WebAssembly em 2026' ===
Passo 1: [Pesquisa]: Fatos chave sobre WebAssembly em 2026 - Roda em sandbox, velocidade próxima ao C/C++, suportado por todos os browsers.
Passo 2: [Redação]: Artigo Completo - Fatos chave sobre WebAssembly em 2026 - Roda em sandbox, velocidade próxima ao C/C++, suportado por todos os browsers. O WebAssembly transforma a web moderna.
Passo 3: [Revisão]: Aprovado com louvor! Texto polido pronto para publicação: '[Redação]: Artigo Completo - Fatos chave sobre WebAssembly em 2026 - Roda em sandbox, velocidade próxima ao C/C++, suportado por todos os browsers. O WebAssembly transforma a web moderna.'
🧭 Navegação Rápida
| 📖 Teoria | 📊 Slides | 🧠 Quiz | 💻 Exemplos | 🧩 Exercícios | | :— | :— | :— | :— | :— | | Ler Tópico | Ver Slides | Fazer Quiz | Ver Código | Praticar |