Metagpt: Meta Programming For Multi-agent Collaborative Framework

Paper · arXiv 2308.00352 · Published August 1, 2023
Agents Multi

“Multi-agent Collaboration Prior works have explored using multiple LLMs in a collaborative setting to solve complex tasks [32, 29]. The motivation is that by cross-agent interaction, LLMs can collectively exhibit enhanced performance through aggregating their individual strengths. There have been many previous explorations of multi-agent, including collective thinking [13, 14, 15, 16], conversation dataset collection [11, 33], sociological phenomenon research [10, 34], collaboration for efficiency [12, 35, 11, 29]. (i) Collective thinking: many advanced works [13, 14, 15, 16] enhanced the task solving capabilities of LLM by integrating the multiple-agent discussion. (ii) Conversation dataset collection: Wei et al. [33] and Li et al. [11] built a conversation datasets through Role Playing. (iii) Sociological phenomenon research: Park et al. [10] constructed a town of 25 agents, realizing simple language interaction, social cognition, and memory of the agents, while there is a lack of cooperation and production. Akata et al. [34] studied LLM cooperation and coordination behavior by having multiple agents play a repeated game. (iv) Collaboration for efficiency: Cai et al. [12] modeled cost reduction by having a combination of large models as tool makers and small models as Tool users. Zhang et al. [35] built a framework for collaboration between agents that enables verbal communication, collaboration, and improved efficiency. Li et al. [11] and Qian et al. [29] proposed a multi-agent framework for software development. However, their cross-agent communication are natural language conversations, not a standardized software engineering document, and do not incorporate advanced human process management experience. The key issues persist on multiagent cooperation around maintaining coherence, avoiding unproductive loops, and directing beneficial interactions. Therefore, this paper emphasizes the practice of advanced human processes (e.g., SOPs in software development) in multi-agent system.”

In this work, we present MetaGPT, a pioneering multi-agent framework incorporating real-world expertise based on SOPs. Firstly, each agent is identified by a descriptive job title, allowing the system to initialize with an appropriate role-specific prompt prefix. This embeds domain knowledge within agent definitions, rather than simplistic role-playing prompts. Secondly, we analyze efficient human workflows to extract SOPs encapsulating procedural knowledge required for collaborative tasks. These SOPs are encoded into the agent architecture through role-based action specifications. Thirdly, agents produce standardized action outputs to enable knowledge sharing. By formalizing artifacts that human experts exchange, MetaGPT streamlines coordination between interdependent roles. Finally, a shared environment connects agents, providing visibility into actions and shared access to tools and resources. This environment contains all messages exchanged between agents. Additionally, we provide a global memory pool to store all collaboration records where each agent can subscribe to or search for the information they require. Agents can extract past messages from this memory pool for additional context. This design enables agents to actively observe and pull pertinent information, which is a more efficient approach compared to passively receiving data via dialog. The environment mirrors human workplace infrastructures that facilitate team collaboration.