GitHub user imbajin edited a discussion: [Discussion] The selection of Agentic/Taskflow frame
### Feature Description Update: https://blog.langchain.dev/how-to-think-about-agent-frameworks/ (_Note: not precise_) Some Context Here: Our goal at GraphRAG is to focus on providing better I/O capabilities related to LLM/RAG system. We need agentic but will not attempt to create a large and comprehensive (agent/rag) framework, so we tend to choose the highest performance/flexible workflow + agentic framework for integration(Any suggestions and feedback are welcome) Below is a simplified summary table assisted by LLM. Currently, the focus is on the first 4 (CrewAI / Agno / LLamaIndex / Pydanic-AI), with prioritization to be determined. They generally have their own built-in workflow-like designs and have few dependencies (relatively lightweight). Table: | Framework | Core Features | Documentation/Community Popularity | Workflow | Advantages | Disadvantages | GitHub ⭐️ | Lightweight | Notes | | ------------------------------------------------------- | ------------------------------------------------------------ | ------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -------- | ------------ | ------------------------------------------------------------ | | [CrewAI](https://github.com/crewAIInc/crewAI) | Well-known multi-agent collaboration framework, supports sequential/hierarchical structures, dynamic workflow design, and dual-mode implementation of workflows | High | [Crew](https://docs.crewai.com/concepts/crews) + [Flow](https://docs.crewai.com/concepts/flows) design (the latter is event-driven) | Few dependencies, provides both Crew (role collaboration) + Flows (process control) usage modes, many [examples](https://github.com/crewAIInc/crewAI-examples) and documentation | 1. Requires understanding of Crew/Flow architecture and YAML configuration 2. Some tools may depend on Rust/C++ underlying libraries 3. Performance is unclear | 26.7k+ | Medium | Suitable for complex scenarios such as project management and strategic analysis, can be directly combined/compatible with LangChain/LLamaindex, disable [info collection](https://github.com/crewAIInc/crewAI/tree/main?tab=readme-ov-file#q -does-crewai-collect-any-data) when using | | [Agno](https://github.com/agno-agi/agno) | High-performance multimodal framework, supports text/image/audio/video, model-agnostic, extremely low memory footprint. Claims performance is X1000 times that of LangGraph | High | [workflow](https://docs.agno.com/workflows/introduction) no graph/no chain design, supports caching/persistence. Simply put, it does not provide syntactic sugar, the process is manually controlled, which is not very user-friendly | Extremely fast startup speed, native multimodal support, knowledge base integration | Low community maturity, relies on third-party model APIs | 19k+ | Medium-High | Claims memory usage is only 1/50 of LangGraph, suitable for high-concurrency scenarios | | [Llamaindex](https://github.com/run-llama/llama_index) | | High | Event-driven [workflow](https://docs.llamaindex.ai/en/stable/module_guides/workflow/) | Classic and established | | 39k+ | Medium-Low? | | | [Pydanic-AI](https://github.com/pydantic/pydantic-ai) | Produced by the Pydantic team, quality is relatively guaranteed, design should also be relatively good | Low | Classic [Graph](https://ai.pydantic.dev/graph/) implementation | New generation | Officially stated to be in Beta, not perfect enough, API changes at any time, use with caution in production | 6.5k+ | Medium-High? | | | [Lagent](https://github.com/InternLM/lagent) | Domestic lightweight multi-Agent framework, communication based on AgentMessage, defaults to providing synchronous/asynchronous interfaces | Low-Medium | Chained through the __call__ method | Lightweight + good domestic model support | Relatively basic functionality, limited multi-agent support, no official documentation link? | 2k+ | Medium-High | Developed by Shanghai AI Laboratory, suitable for rapid experimentation | | [ControlFlow](https://github.com/PrefectHQ/ControlFlow) | Agent implementation based on the Prefect scheduling framework, integrated with the LangChain ecosystem | Medium | Uses Prefect + [Graph](https://github.com/PrefectHQ/ControlFlow/tree/main/src/controlflow/flows) design | Task granularity is controllable, supports hybrid orchestration of traditional workflows and Agents | | 1.2k+ | Low | Based on Prefect | | [Swarm](https://github.com/openai/swarm) | OpenAI company open source, stateless lightweight design + Handoff (handoff mechanism), dynamic context management, automatic function generation, highest friendliness with OpenAI features | Medium-High | Unknown | Based on OpenAI technology, high theoretical performance potential, engineering design and OpenAI integration should be very good | Experimental version, less documentation and applications, low community participation, does not come with compatibility for other LLMs by default | 18.7k+ | Medium-High | Mainly to see the design highlights | | … | | | | | | | | | --- ### Heavyweight Agent Frameworks (omitted) This section is not core, mainly listing common/well-known frameworks, which can also be studied for good ideas. - LangChain's LangGraph (9k+ ⭐️), its workflow design is relatively classic and the description is relatively complete (supports both Graph + Task/Function calling methods) - Note that in the latest version, LangGraph can be used independently and is no longer strongly coupled with LangChain (other differences can be roughly referenced in LLM QA) - So it can also be used as a reference, especially noting its performance (slow + high runtime overhead according to many user feedback) - Microsoft's AutoGen (40k+ ⭐️) - MetaGPT (46k+ ⭐️) - Dify/FastGPT/RAGFlow and other RAG frameworks also have Agent functions - AutoGPT (classic frame) - ... GitHub link: https://github.com/apache/incubator-hugegraph-ai/discussions/203 ---- This is an automatically sent email for dev@hugegraph.apache.org. To unsubscribe, please send an email to: dev-unsubscr...@hugegraph.apache.org