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

Reply via email to