Agentes

Frameworks de Agentes e Orquestração

O Que é um Agente LLM

Um agente é um LLM que:

  1. Recebe um objetivo
  2. Decide quais ferramentas (tools) usar
  3. Executa ações (código, buscas, APIs)
  4. Observa os resultados
  5. Continua até completar o objetivo

*omponentes:*LLM + Tools + Memory + Planning + Action


LangChain / LangGraph

  • *RL:*langchain.com
  • *ersão atual:*0.3.x (LangChain) + LangGraph 0.2.x
  • *inguagem:*Python, JavaScript

LangChain

  • Chains de LLM + prompts + ferramentas
  • Integração com 100+ fontes de dados e APIs
  • *rítica:*Over-engineered; muito boilerplate; abstrações vazam
  • *uando usar:*Prototipagem rápida; integrações prontas

LangGraph

  • Grafos de estado para agentes multi-step
  • Controle explícito do fluxo (não magic chains)
  • *elhor que LangChain*para agentes complexos
  • *xemplo:*SWEagent loop, multiagent debate

LlamaIndex

  • *RL:*llamaindex.ai
  • *oco:*RAG (Retrieval-Augmented Generation) e indexação de documentos
  • *eatures:*Ingestion pipelines, query engines, sub-question decomposition, agentic RAG
  • *uando usar:*Aplicações baseadas em documentos; knowledge bases; enterprise search

AutoGen (Microsoft)

  • *RL:*github.commicrosoftautogen
  • *aradigma:*Multi-agent conversation; agentes se conversam entre si
  • *eatures:*AgentChat API; ferramentas, handoff, code execution
  • *utoGen Studio:*UI visual para montar fluxos
  • *uando usar:*Debates entre agentes; pipelines de revisão; multi-role workflows

CrewAI

  • *RL:*github.comcrewAIInccrewAI
  • *aradigma:*"Crew" de agentes com papéis definidos (Researcher, Writer, Coder...)
  • *bstração:*Agent + Task + Crew → orquestração automática
  • *uando usar:*Fluxos colaborativos bem definidos; automação de workflows

DSPy (Stanford)

  • *RL:*github.comstanfordnlpdspy
  • *rXiv:*2310.03714
  • *aradigma:*Programação declarativa de pipelines LLM
  • *iferencial:**ompila*(otimiza) os prompts automaticamente usando exemplos
  • *ódulos:*dspy.ChainOfThought, dspy.ReAct, dspy.Predict
  • *uando usar:*Quando prompts precisam ser otimizados sistematicamente; pipelines complexos com múltiplos LLMs

Pydantic AI (Pydantic)

  • *RL:*github.compydanticpydantic-ai
  • *oco:*Type-safe, structured outputs com Pydantic
  • *odelo de agente:*Function-based; decorators @agent.tool
  • *ntegração:*OpenAI, Anthropic, Gemini, Groq, Mistral
  • *uando usar:*Agentes com outputs estruturados; código Go-style (explícito, tipado)

smolagents (HuggingFace)

  • *RL:*github.comhuggingfacesmolagents
  • *ilosofia:*Minimalista; ~1000 linhas de código total
  • *ipos:*
    • CodeAgent: Escreve e executa Python para agir (mais poderoso)
    • ToolCallingAgent: Tool calls JSON clássico
  • *uando usar:*Agentes simples; prototipagem; projetos que querem controle total

Haystack (deepset)

  • *RL:*haystack.deepset.ai
  • *oco:*NLP pipelines; RAG; search
  • *esign:*Componentes conectáveis; compatível com múltiplos VectorDBs
  • *uando usar:*Search semântico; RAG enterprise; document QA

Agno (ex-Phidata)

  • *RL:*github.comagno-agiagno
  • *oco:*Agentes com memória, conhecimento e ferramentas; UI embutido
  • *eatures:*Multi-agent, RAG integrado, Playground UI, monitoring

Semantic Kernel (Microsoft)

  • *RL:*github.commicrosoftsemantic-kernel
  • *inguagens:*Python, C#, Java
  • *oco:*Enterprise; integração com Azure OpenAI; plugins
  • *uando usar:*Aplicações .NET/Azure enterprise

Frameworks de Tool Use / Function Calling

Os *rotocolos*desta camada (MCP, A2A, OpenAI Function Calling, ACP, AGNTCY, NLIP, Computer Use, AP2, x402) vivem em protocolos.md. Abaixo só os *DKs/frameworks*que consomem.

Strands Agents (AWS)

  • *RL:*github.comstrands-aistrands-agents
  • *rigem:*Amazon Web Services (2026)
  • *aradigma:*"Model-native" — o agente usa o próprio modelo para raciocinar sobre tools e próximos passos, sem scaffolding rígido
  • *ntegração:*Trainium, Bedrock, MCP nativo, A2A nativo
  • *uando usar:*Stacks AWS; quando integração profunda com infraestrutura cloud é prioridade

OpenAI Agents SDK

  • *RL:*github.comopenaiopenaiagentspython
  • *ntegração:*GPT-5.x, function calling, computer use, Assistants API
  • *eatures:*Handoff entre agentes, tracing embutido, guardrails
  • *uando usar:*Produção com modelos OpenAI; integração com OpenAI platform

Claude Agent SDK (Anthropic)

  • *RL:*docs.anthropic.com/agents
  • *ntegração:*Claude + MCP nativa (profunda, pois Anthropic criou ambos)
  • *iferencial:*MCP servers se conectam diretamente à definição do agente; lifecycle de conexão automático
  • *uando usar:*Stacks 100% Claude; máxima integração MCP

BFCL v4 + Toolathlon

  • Benchmarks de function calling — medem seleção correta de função e passagem de argumentos
  • Parte do BenchLM agent score (22% do score geral)

Protocolo de Agente (ReAct)

  • *rXiv:*2210.03629 (Yao et al., 2022)
  • *ecanismo:*Thought → Action → Observation (loop)
  • *ase:*Quase todos os frameworks de agente modernos implementam ReAct

Variantes

Paradigma Descrição Referência
ReAct Razão + Ação intercalados arXiv:2210.03629
Reflexion Auto-reflexão após falha arXiv:2303.11366
Tree of Thoughts Busca em árvore de raciocínio arXiv:2305.10601
PlanandSolve Planeja antes de agir arXiv:2305.04091
LATS MCTS para agentes LLM arXiv:2310.04406

Execution Environments para Code Agents

Ambiente Isolamento Linguagens Timeout
E2B Code Interpreter VM sandbox Python, JS, bash Configurável
Modal Container efêmero Python, bash Até 24h
Docker (local) Container Qualquer Configurável
Subprocess (local) Processo Qualquer Configurável
WASM (browser) Sandbox Python/JS limitado N/A

Avaliação de Agentes

Benchmark Foco
SWE-bench Verified Código — GitHub issues reais
GAIA Tarefas gerais com ferramentas
τ-bench Tool-use realista (varejo, companhia aérea)
WebArena Automação de browser
OSWorld Desktop automation
AgentBench Benchmark geral de agentes

Stack Recomendado para o Kode (IA de Coding)

Camada de orquestração: smolagents ou Pydantic AI (minimalismo)
Tool use: MCP (padrão) — ver protocolos.md
Code execution: E2B ou Docker sandbox
RAG para codebase: LlamaIndex + pgvector
Memória: Redis (short-term) + pgvector (long-term)
Observabilidade: LangFuse ou Helicone

*vitar para Kode:*LangChain (complexo demais para código); CrewAI (abstrações inadequadas para coding)

Source: ../home/koder/dev/koder/meta/docs/ia/compendium/07-frameworks/agentes.md