LangGraph vs CrewAI: como escolher a arquitetura de orquestração para agentes de IA
Compare LangGraph e CrewAI: grafos de estado versus equipes por papel. Critérios de escolha, exemplos e trade-offs para produção.
Por Emerson Amorim13 min de leitura
LangGraph modela o fluxo como grafo de estado com transições explícitas. CrewAI modela colaboração como papéis e tarefas. Escolha pelo controle de fluxo que você precisa, não pela popularidade da biblioteca.
Dois modelos mentais
| Aspecto | LangGraph | CrewAI |
|---|---|---|
| Abstração central | State graph / nodes / edges | Agents, roles, tasks, crew |
| Controle de fluxo | Explícito e determinístico por aresta | Orientado a delegação entre papéis |
| Melhor encaixe | Workflows com loops, gates e retries | Times simulados com especialização |
| Observabilidade | Estado versionável por nó | Trajetória de tarefas/papéis |
| Risco | Grafo complexo demais | Fluxo opaco se papéis improvisam |
Quando LangGraph costuma ser melhor
- Você precisa de checkpoints, replay e ramos condicionais
- Há gates de política entre passos
- O fluxo se parece com uma máquina de estados de negócio
- Quer testar nós isoladamente
# Pseudocódigo ilustrativo
# graph.add_node("retrieve", retrieve_node)
# graph.add_node("draft", draft_node)
# graph.add_node("policy", policy_node)
# graph.add_edge("retrieve", "draft")
# graph.add_conditional_edges("draft", route_policy, {
# "approve": "publish",
# "revise": "draft",
# "block": "end",
# })Quando CrewAI costuma ser melhor
- O problema se expressa naturalmente como papéis (pesquisador, revisor, executor)
- Você quer prototipar colaboração multiagente rápido
- A orquestração por tarefa é mais importante que o grafo fino
# researcher = Agent(role="Researcher", goal="Coletar evidências")
# reviewer = Agent(role="Reviewer", goal="Validar citações")
# task = Task(description="Resumir riscos do PRD", agent=researcher)
# crew = Crew(agents=[researcher, reviewer], tasks=[task])
# result = crew.kickoff()Critério de escolha
- Desenhe o fluxo em papel sem framework
- Se o desenho é grafo com decisões: prefira LangGraph (ou equivalente)
- Se o desenho é equipe com handoffs: CrewAI pode acelerar
- Em ambos os casos, coloque Agent Harness fora do framework: permissões, tools e eval
Notas de produção
Framework não substitui política. Independentemente da escolha, isole ferramentas, imponha limites de steps, grave traces e mantenha um caminho de intervenção humana. Trocar de biblioteca depois é barato; redesenhar governança tarde é caro.