ChatDev: Communicative Agents for Software Development

基本信息

摘要

Software development is a complex task that necessitates cooperation among multiple members with diverse skills. Numerous studies used deep learning to improve specific phases in a waterfall model, such as design, coding, and testing. However, the deep learning model in each phase requires unique designs, leading to technical inconsistencies across various phases, which results in a fragmented and ineffective development process. In this paper, we introduce ChatDev, a chat-powered software development framework in which specialized agents driven by large language models (LLMs) are guided in what to communicate (via chat chain) and how to communicate (via communicative dehallucination). These agents actively contribute to the design, coding, and testing phases through unified language-based communication, with solutions derived from their multi-turn dialogues. We found their utilization of natural language is advantageous for system design, and communicating in programming language proves helpful in debugging. This paradigm demonstrates how linguistic communication facilitates multi-agent collaboration, establishing language as a unifying bridge for autonomous task-solving among LLM agents. The code and data are available at https://github.com/OpenBMB/ChatDev.

核心贡献

  1. 聊天驱动的软件开发框架: 提出了 ChatDev,一个基于对话(Chat-powered)的多智能体软件开发框架,将软件开发过程中的设计、编码和测试等阶段统一到 LLM 驱动的对话范式中,解决了传统方法在各阶段技术不一致导致的碎片化问题。

  2. Chat Chain 机制: 设计了 Chat Chain(聊天链)机制,将复杂的软件开发任务分解为一系列结构化的对话阶段,指导智能体在每个阶段应该交流什么内容。该机制以瀑布模型为灵感,将软件生命周期划分为设计、编码、测试、文档等子阶段。

  3. 通信去幻觉(Communicative Dehallucination): 提出了通信去幻觉技术,指导智能体如何进行有效沟通,减少 LLM 在对话中产生的幻觉问题。通过结构化的对话约束和角色提示,提高对话质量和任务完成的准确性。

  4. 语言作为统一桥梁: 验证了自然语言在系统设计阶段的优势,以及编程语言在调试阶段的有效性,证明了语言通信可以作为 LLM 智能体自主协作解决复杂任务的统一桥梁。

  5. 端到端软件开发能力: 实现了从需求分析到代码生成的完整软件开发流程,展示了多智能体协作在实际软件工程任务中的可行性。

方法概述

ChatDev 的核心架构包含以下关键组件:

实验结果

ChatDev 在软件工程基准测试上进行了全面评估:

相关论文

相关概念

分析信息


导入时间: 2026-05-01 23:30 导入方式: url