Experiential Co-Learning of Software-Developing Agents

Chen Qian,Yufan Dang,Jiahao Li,Wei Liu,Zihao Xie,Yifei Wang,Weize Chen,Cheng Yang,Xin Cong,Xiaoyin Che,Zhiyuan Liu,Maosong Sun
2024-06-05
Abstract:Recent advancements in large language models (LLMs) have brought significant changes to various domains, especially through LLM-driven autonomous agents. A representative scenario is in software development, where LLM agents demonstrate efficient collaboration, task division, and assurance of software quality, markedly reducing the need for manual involvement. However, these agents frequently perform a variety of tasks independently, without benefiting from past experiences, which leads to repeated mistakes and inefficient attempts in multi-step task execution. To this end, we introduce Experiential Co-Learning, a novel LLM-agent learning framework in which instructor and assistant agents gather shortcut-oriented experiences from their historical trajectories and use these past experiences for future task execution. The extensive experiments demonstrate that the framework enables agents to tackle unseen software-developing tasks more effectively. We anticipate that our insights will guide LLM agents towards enhanced autonomy and contribute to their evolutionary growth in cooperative learning. The code and data are available at <a class="link-external link-https" href="https://github.com/OpenBMB/ChatDev" rel="external noopener nofollow">this https URL</a>.
Computation and Language,Artificial Intelligence,Machine Learning,Software Engineering
What problem does this paper attempt to address?
The problem addressed in this paper is how to enable software development agents using large language models (LLMs) to more effectively leverage past experiences to improve their capability in handling unseen software development tasks, reduce repeated errors and ineffective attempts, and minimize dependence on human intervention. The paper introduces a new framework called "Experiential Co-Learning" which consists of three core modules: collaborative tracking, collaborative memory, and collaborative reasoning. Through these modules, agents (divided into mentor and assistant roles) are able to collect experience-oriented shortcuts from historical communications and utilize them in future task execution. Specifically, the collaborative tracking module facilitates communication rehearsals among agents, the collaborative memory module mines shortcuts from historical trajectories through external environmental feedback and stores these experiences in the agents' experience pool. The collaborative reasoning module encourages agents to enhance instructions and solutions by leveraging the collective experience pool for solving unseen tasks. The paper points out that current multi-agent collaboration methods often operate independently when dealing with various tasks, lacking effective approaches to utilize past task experiences, resulting in inefficiency and repeated errors. Through experiments, the authors demonstrate that the proposed framework significantly improves the collaboration efficiency of agents and reduces the need for additional human intervention.