dc.description.abstract | Recently, with the emergence of ChatGPT, the development of large language models has been flourishing. However, real-world applications are often more complex and cannot be han-
dled by a single agent alone. As a result, there has been growing interest in exploring how multiple agents can collaborate to solve more complex tasks, leading to the creation of various multi-agent conversation frameworks. Among them, AutoGen, developed by Microsoft, has garnered significant attention for allowing users to easily customize agents and tasks. It also supports Python coroutines, enabling concurrent handling of I/O-intensive tasks.
However, coroutines inherently run on a single thread. When tasks require substantial computational resources, they cannot leverage the performance of multi-core CPUs to achieve true parallel execution. For instance, in processing large-scale data, tasks are often divided into batches, but AutoGen’s architecture necessitates sequential execution of these tasks, resulting in increased processing time and limiting its performance and scalability in real-world scenarios.
Moreover, AutoGen’s execution model is constrained by its single-threaded architecture, preventing the system from scaling across multiple computing resources. In modern distributed systems, tasks can be distributed across multiple machines to maximize resource utilization.
However, AutoGen is unable to implement such processing, further restricting its ability to handle complex tasks and its range of applications. Additionally, the AutoGen system lacks fault tolerance. Since it operates on a single thread,
any errors or uncaptured exceptions during execution will cause the entire system to halt immediately. This results in interruptions, undermining its stability and reliability, and wasting the resources and costs invested in using LLM services.
To address these challenges, this study proposes AsyncGen, an improved multi-agent conversation framework based on distributed systems. By integrating AutoGen with the distributed system framework Ray, AsyncGen utilizes Ray’s resource scheduling to distribute computational tasks across multiple nodes for parallel processing. Experimental results show that the improved framework can operate simultaneously across multiple machines, significantly reducing execution time, enhancing fault tolerance, and improving scalability, demonstrating the potential and value of extending multi-agent frameworks using distributed systems. | en_US |