🤖 Módulo 2.5: Agentes e Workflows Complexos
Construa sistemas autônomos e multi-agente usando frameworks modernos como LangChain e LlamaIndex para resolver tarefas complexas.
🤖 Frameworks de Agentes (LangChain, LlamaIndex)
O que é
Frameworks de agentes fornecem abstrações de alto nível para construir aplicações de IA que podem usar ferramentas, acessar memória, e tomar decisões autonomamente. LangChain oferece chains, agents, e tools para workflows complexos. LlamaIndex especializa-se em indexação e retrieval. Outros incluem AutoGPT, CrewAI, e Semantic Kernel. Esses frameworks aceleram desenvolvimento em 5-10x.
Por que aprender
Construir agentes do zero é complexo e propenso a erros. Frameworks encapsulam best practices, patterns comprovados, e abstrações que permitem foco na lógica de negócio. Desenvolvedores que dominam LangChain/LlamaIndex conseguem prototipar aplicações sofisticadas em horas vs semanas. Essas são as ferramentas mais demandadas em vagas de AI Engineering.
Conceitos chave
- • LangChain Chains: Sequential, MapReduce, Router chains para workflows compostos
- • LangChain Agents: Zero-shot ReAct, conversational, OpenAI functions agents
- • Tools/Functions: APIs, databases, search engines como ferramentas para agentes
- • LlamaIndex Query Engines: Vector store, SQL, graph query engines
- • Memory Types: Conversation buffer, summary, entity, vector store memory
- • Callbacks e Observability: LangSmith, Helicone para debugging e monitoring
🧠 ReAct, Planning e Tool Use
O que é
ReAct (Reasoning + Acting) é um paradigma onde LLMs alternam entre raciocinar sobre uma tarefa e tomar ações (usar ferramentas). Planning envolve decomposição de tarefas complexas em sub-tarefas executáveis. Tool Use refere-se à capacidade de agentes invocarem funções externas (APIs, cálculos, bancos de dados) dinamicamente. Técnicas incluem Chain-of-Thought, Task Decomposition, e Function Calling.
Por que aprender
LLMs puros são limitados a geração de texto. Tool use permite que realizem ações reais - fazer cálculos precisos, consultar bases de dados atualizadas, chamar APIs externas, executar código. ReAct e Planning tornam agentes capazes de resolver problemas complexos multi-step que seriam impossíveis com prompts simples. É a diferença entre chatbot e assistente verdadeiramente útil.
Conceitos chave
- • ReAct Loop: Thought → Action → Observation → Thought (iterativo)
- • Task Decomposition: Quebra de problemas complexos em sub-tarefas gerenciáveis
- • Function Calling: OpenAI/Anthropic native function calling para structured outputs
- • Tool Selection: Embedding-based ou ReAct-based para escolher ferramenta certa
- • Error Recovery: Retry strategies, fallbacks quando ferramentas falham
- • Plan Validation: Verificação de viabilidade de planos antes de execução
🔗 Multi-Agent Systems
O que é
Multi-agent systems envolvem múltiplos agentes especializados colaborando para resolver tarefas complexas. Cada agente tem papéis, ferramentas e objetivos específicos (ex: researcher, writer, critic). Frameworks como CrewAI, AutoGen, e LangGraph facilitam coordenação. Padrões incluem sequential (cadeia), hierarchical (manager-worker), e democratic (votação/consenso).
Por que aprender
Problemas complexos beneficiam-se de especialização. Um único agente generalista frequentemente produz outputs mediocres. Multi-agent systems permitem separação de concerns, paralelização de tarefas, e auto-correção através de feedback entre agentes. Empresas estão usando para automação de workflows complexos (análise de mercado, geração de reports, customer support escalado).
Conceitos chave
- • Agent Roles: Especialização por função (researcher, coder, reviewer, manager)
- • Communication Protocols: Message passing, shared memory, blackboard patterns
- • Coordination Patterns: Sequential, parallel, hierarchical, democratic
- • Conflict Resolution: Voting, consensus, arbiter agents para desempate
- • CrewAI Framework: Role-playing agents com goals, backstories, e tools
- • AutoGen: Microsoft framework para conversational multi-agent workflows
🎯 Orquestração e Error Handling
O que é
Orquestração refere-se ao gerenciamento coordenado de múltiplos componentes em workflows de IA - agentes, APIs, databases, ferramentas externas. Inclui scheduling, routing, parallel execution, e dependency management. Error handling envolve graceful degradation, retry logic, fallbacks, e logging detalhado para debugging. Ferramentas como LangGraph, Temporal.io, e Apache Airflow facilitam orquestração robusta.
Por que aprender
Workflows de IA em produção enfrentam inúmeras falhas potenciais - rate limits de API, timeouts, outputs inesperados, ferramentas offline. Sistemas sem orquestração e error handling robustos falham catastroficamente. Desenvolvedores que dominam essas técnicas criam aplicações resilientes que degradam gracefully e se auto-recuperam, essenciais para confiabilidade empresarial.
Conceitos chave
- • Workflow DAGs: Directed Acyclic Graphs para modelar dependências entre tarefas
- • Parallel Execution: Threading, multiprocessing, async/await para concurrency
- • Retry Strategies: Exponential backoff, jitter, max attempts com circuit breakers
- • Fallback Chains: Degradação para modelos mais simples/baratos quando primário falha
- • Structured Logging: Contexto rico para debugging de workflows complexos
- • State Persistence: Checkpointing para resumir workflows após falhas
🚀 3 Sistemas de Agentes para Produção
1. Research Assistant Multi-Agent (CrewAI)
Use Case: Pesquisa competitiva automatizada com múltiplos agentes especializados
Stack: CrewAI + GPT-4o + Serper API + Playwright + PostgreSQL
Agentes do Sistema:
- • Researcher: Busca web + scraping
- • Analyst: Analisa dados coletados
- • Writer: Gera relatório estruturado
- • Critic: Valida qualidade e facts
Métricas de Performance:
- ✓ Tempo: 5-10 min por relatório
- ✓ Custo: $0.50-1.50 por execução
- ✓ Accuracy: 85-90% vs humano
- ✓ Throughput: 100+ reports/dia
2. Customer Support Agent (LangGraph)
Use Case: Suporte técnico automatizado com routing inteligente
Stack: LangGraph + Claude + Zendesk API + Knowledge Base (Pinecone)
Workflow Graph:
- 1. Classify Intent: Support, sales, billing, technical
- 2. Retrieve Context: RAG sobre docs + historical tickets
- 3. Generate Response: Claude com context injection
- 4. Validation: Confidence score > 0.8 → auto-respond, else → human
- 5. Feedback Loop: Thumbs up/down melhora retrieval
70%
Tickets resolvidos automaticamente
< 30s
Tempo médio resposta
$2k/mês
Economia em headcount
3. Code Review Agent (AutoGen)
Use Case: Code review automatizado com múltiplas perspectivas
Stack: AutoGen + GPT-4 + GitHub API + Static Analysis Tools
Agentes Especializados:
- • Security Reviewer: Busca vulnerabilidades (SQL injection, XSS)
- • Performance Reviewer: Analisa complexidade, bottlenecks
- • Style Reviewer: Enforça coding standards
- • Test Reviewer: Valida coverage e edge cases
- • Consensus Agent: Agrega feedback e prioriza issues
⚖️ Comparativo: Frameworks de Agentes 2025
| Framework | Paradigma | Curva Aprendizado | Melhor Para | Comunidade |
|---|---|---|---|---|
| LangChain | Chains + Agents | Média | Workflows sequenciais, RAG | Maior (80k+ stars) |
| LangGraph | State Machines | Alta | Workflows complexos com loops | Crescendo rápido |
| CrewAI | Role-based Agents | Baixa | Multi-agent collaboration | Média (15k stars) |
| AutoGen | Conversational | Média | Code generation, debugging | Microsoft backing |
| LlamaIndex | Data-centric | Baixa-Média | RAG, document Q&A | Grande (30k+ stars) |
Para Iniciantes
Recomendação: CrewAI ou LlamaIndex
Abstrações simples, docs excelentes, resultados rápidos.
Para Produção
Recomendação: LangGraph
Controle granular, observability built-in, debugging robusto.
Para Code Tasks
Recomendação: AutoGen
Otimizado para coding, debugging, e conversational code gen.
🛠️ Guia Completo: Tool Use & Function Calling
Anatomia de uma Tool
Name (obrigatório)
Descritivo, snake_case. Ex: search_web, get_weather, execute_sql
Description (crítico)
Explique QUANDO usar. "Use this to search the web for current information"
Parameters Schema
JSON Schema com tipos, required, descriptions detalhadas
Error Handling
Retorne mensagens claras para o LLM se tool falha
Tools Essenciais
Web Search
Serper, Brave Search API para info atualizada
Calculator
Python eval() ou WolframAlpha para cálculos precisos
Database Query
Text-to-SQL + execution (com sandboxing)
Code Interpreter
Execução segura de Python em container isolado
⚠️ Segurança em Tool Use
- ❌ NUNCA confie em tool inputs: Sanitize SQL queries, validate file paths
- ❌ Rate limiting: Limite execuções/min para prevenir abuse
- ❌ Sandboxing: Execute código em containers isolados (Docker, E2B)
- ❌ Approval gates: Ações destrutivas (delete, pay) requerem confirmação humana