Which Agentic AI Framework to Pick? LangGraph vs. CrewAI vs. AutoGen

Which Agentic AI Framework to Pick? LangGraph vs. CrewAI vs. AutoGen

Análise de Frameworks Agentes

Introdução aos Frameworks Agentes

  • O apresentador expressa frustração com a quantidade de frameworks agentes disponíveis e busca entender qual é o mais adequado para suas necessidades.
  • Menciona três frameworks populares lançados no final de 2023 e início de 2024: Microsoft Autogen, Crew AI e Lang Graph.

Comparação dos Frameworks

Critérios de Avaliação

  • Os frameworks serão comparados usando um gráfico em estrela, considerando características como:
  • Suporte a streaming (tokens ou mensagens).
  • Capacidade de incluir humanos no processo decisório.
  • Funcionalidade para revisar erros passados.
  • Recursos de memória.
  • Interface low-code para criação de agentes.

Detalhes sobre o Autogen

Características do Autogen

  • O logo do Autogen é criticado por sua aparência antiquada. O framework é baseado em um sistema assíncrono de comunicação distribuída chamado "actor framework".
  • Cada ator representa um agente que pode enviar e receber mensagens, permitindo conversas contínuas até que uma tarefa seja concluída.

Curva de Aprendizado

  • A curva de aprendizado do Autogen é considerada rápida, com apenas seis linhas de código necessárias para começar. A complexidade adicional se limita à configuração das conversas entre agentes.

Integrações e Ecossistema

  • O desempenho nas integrações com diferentes modelos linguísticos é discutido. Há uma dependência da OpenAI, exigindo configuração adicional para outros modelos.
  • O ecossistema inclui ferramentas como Compos e várias integrações com produtos da Microsoft, mas apresenta limitações para usuários da AWS.

Monitoramento e Escalabilidade

  • O Autogen possui parceria com a Agent Ops para monitoramento, permitindo rastrear gastos e problemas durante o uso dos agentes.
  • A escalabilidade do Autogen é abordada; embora suporte mensageria assíncrona, há incertezas sobre a estabilidade das versões atuais.

Conclusão Inicial sobre o Autogen

  • Apesar das críticas às integrações limitadas e à necessidade de configurações adicionais, o apresentador considera que o framework tem potencial devido à sua estrutura assíncrona.

Análise do Serviço Assíncrono Autogen

Estrutura e Modelo de Comunicação

  • O serviço assíncrono Autogen é baseado no modelo de ator, que utiliza um framework de mensagens assíncronas. A estrutura inteira é construída sobre esse modelo de comunicação.
  • Apesar do suporte a mensagens assíncronas, existem problemas que levaram à atualização para a versão 0.4, os quais não estão bem documentados.

Flexibilidade e Design

  • O modelo de ator permite flexibilidade em sistemas de software assíncronos, onde cada ator representa uma API ou microserviço com responsabilidades bem definidas.
  • Para modelos de linguagem, essa abordagem pode ser limitante devido à falta de flexibilidade no design dos agentes e na modularização das seções principais.

Documentação e Facilidade de Uso

  • A documentação do Autogen é acessível após alguma busca inicial; ao clicar em "get started", o usuário encontra tutoriais úteis para instalação.
  • Embora a documentação seja boa, sua dificuldade em ser encontrada resulta em uma nota 7 pela usabilidade.

Funcionalidades Adicionais

Streaming e Intervenção Humana

  • O Autogen suporta streaming tanto para entrada quanto saída, permitindo processamento em tempo real, o que é importante para casos de uso ao vivo.
  • A funcionalidade "humano no loop" é limitada a três opções: nunca, sempre ou terminar; isso pode restringir intervenções humanas durante a execução.

Ferramentas Low Code

  • O Autogen Studio oferece uma interface low code open source que facilita o uso por programadores menos experientes.

Limitações da Funcionalidade

  • Não há suporte para "time travel", impossibilitando revisitar tarefas completadas para ver como mudanças poderiam ter afetado os resultados.

Análise do Lang Graph

Arquitetura e Complexidade

  • O Lang Graph baseia-se nas arquiteturas Pragal e Apache Beam, sendo um framework mais genérico comparado ao Autogen.
  • A criação e utilização do Lang Graph assemelham-se à biblioteca NetworkX em Python, onde nós e arestas podem ser conectados livremente.

Curva de Aprendizado

  • A curva de aprendizado do Lang Graph é considerada íngreme devido à necessidade de entender qual arquitetura agente implementar.
  • Embora existam bons tutoriais disponíveis, muitos usuários enfrentaram dificuldades conceituais com o Lang Graph.

Integrações Potenciais

  • Devido à sua natureza gráfica, o Lang Graph pode integrar-se tecnicamente com qualquer código escrito em Python ou JavaScript.

Integrações e Escalabilidade do Lang Graph

Integração com Lang Chain

  • O Lang Graph se integra completamente com o Lang Chain, pois ambas as ferramentas pertencem à mesma empresa. Essa integração é vantajosa, mas não limita a utilização do Lang Graph caso o usuário opte por não usar o Lang Chain.

Escalabilidade e Deployability

  • O Lang Graph oferece suporte total para operações assíncronas desde o início, sendo baseado em Pragal e Apache Beam, o que aumenta a confiança na escalabilidade da ferramenta.
  • A complexidade de escalabilidade no Lang Graph é maior em comparação ao AutoGen devido ao suporte de estado, mas permite acesso ao estado a qualquer momento para persistência.
  • A flexibilidade de design do Lang Graph permite que os usuários decidam como estruturar nós e arestas, facilitando a reutilização e combinação de componentes.

Flexibilidade de Design

  • O Lang Graph é um framework verdadeiro construído sobre grafos de rede, permitindo liberdade total na implementação de arquiteturas como roteadores e agentes reflexivos.
  • Embora essa flexibilidade exija mais código e seja mais difícil de aprender, ela proporciona uma ampla gama de possibilidades para personalização.

Documentação do Lang Graph

Qualidade da Documentação

  • A documentação do Lang Graph foi criticada anteriormente por sua qualidade inferior, mas melhorias significativas foram feitas nos últimos meses.
  • Um curso foi disponibilizado para ajudar novos usuários a entender as funcionalidades principais da ferramenta.

Recursos Adicionais do Langra

Suporte a Streaming e Ferramentas

  • O Langra possui suporte robusto para streaming tanto de mensagens quanto de tokens conforme as necessidades dos usuários.
  • Oferece um ambiente flexível onde é possível solicitar entrada humana durante a execução do grafo, pausando até receber essa entrada.

Funcionamento do Crew AI

Estrutura dos Agentes no Crew AI

  • O Crew AI cria uma abstração agente dentro da equipe (crew), onde cada agente pode ser um modelo linguístico associado a ferramentas específicas ou funções como desenvolvedor ou redator publicitário.

Curva de Aprendizado

  • Comparado ao AutoGen, o Crew AI apresenta conceitos adicionais que precisam ser compreendidos. No entanto, iniciar com ele é relativamente rápido devido à simplicidade na definição das tarefas em arquivos YAML.

Integrações no Crew AI

Conexões com Outras Ferramentas

  • O Crew AI se integra diretamente com o Lang Chain, permitindo que ferramentas criadas nessa plataforma sejam utilizadas nas equipes (crews).

Análise de Ferramentas de Monitoramento e Frameworks

Integração com Ferramentas de Monitoramento

  • O vídeo discute a utilização de arquivos markdown e menciona ferramentas específicas para monitoramento, como Lang trce, Open Lit e Port Key.
  • Destaca-se a integração do Open Lit, uma ferramenta open source que permite hospedagem gratuita da observabilidade, em contraste com o Langra que se integra ao Lsmith.

Escalabilidade do Crew AI

  • O Crew AI é avaliado quanto à sua escalabilidade em ambientes distribuídos, permitindo execução assíncrona de tarefas.
  • A funcionalidade de memória do Crew AI pode ser limitada devido ao uso de um banco de dados SQL local, exigindo configuração adicional para escalabilidade.
  • Comparado ao Autogen, o Crew AI oferece mais flexibilidade na abstração das tarefas e agentes.

Flexibilidade e Documentação do Crew AI

  • O Crew AI é um framework baseado em tarefas que exige decomposição dos problemas em tarefas específicas; isso pode ser limitante para problemas mais complexos.
  • A documentação do Crew AI é considerada excelente, com um site fácil de navegar e bem organizado entre seções conceituais e guias práticos.

Funcionalidades Adicionais do Crew AI

  • Embora não suporte streaming diretamente, o Crew AI permite interação humana no final das tarefas e possui funcionalidades como "time travel" para revisitar execuções passadas.
  • O sistema suporta diferentes tipos de memória (curto prazo, longo prazo), facilitando a configuração inicial.

Considerações Finais sobre Frameworks

  • Atualmente, o suporte do Crew AI está restrito ao Python; não há uma interface oficial low code disponível.
  • Para quem busca resolver problemas baseados em tarefas rapidamente ou precisa de boas integrações, o Crew AI é recomendado. Para soluções mais complexas ou interativas (como chatbots), Langra pode ser a melhor escolha.
Video description

Not sure which Agentic Framework to pick? Get an overview of 3 of the most popular. LangGraph, CrewAI and AutoGen. 🎥 Channel: @WW_AI_Adventures # ============================ Chapters 0:00 🕒 Intro 01:36 AutoGen - How does it work? 02:47 AutoGen – Learning Curve 03:31 AutoGen – Integrations 05:00 AutoGen – Scalability 06:27AutoGen – Flexibility 07:24 AutoGen – Documentation 08:00 AutoGen – Other Features 10:08 LangGraph - How does it work? 10:56 LangGraph – Learning Curve 11:41 LangGraph – Integrations 12:20 LangGraph – Scalability 13:20 LangGraph – Flexibility 13:58 LangGraph – Documentation 14:44 LangGraph – Other Features 15:58 CreqAI - How does it work? 16:53 CrewAI – Learning Curve 17:35 CrewAI – Integrations 18:48 CrewAI – Scalability 19:46 CrewAI – Flexibility 20:29 CrewAI – Documentation 21:15 CrewAI – Other Features 23:12 Which Framework to pick? # =========================== Stay Connected with Me! 🔗 LinkedIn: www.linkedin.com/in/william-white-data-scientist 👨‍💻 GitHub: https://github.com/whitew1994WW # =========================== About In this video, I do a systematic review of the 3 largest Agentic Frameworks finishing with an overview of where each framework is best suited. I also give a walkthrough of how each framework works. 📌 Tags: #AI #LangGraph #AgenticAI #OpenAI #GPT4 #Python #APIs #AIResearch #langchain