Redian新闻
>
ChatDev,开源了!

ChatDev,开源了!

公众号新闻
转自:GitHubDaily

今年 7 月,面壁智能联合清华大学 NLP 实验室、北京邮电大学、布朗大学等的研究人员共同发布了一个大模型驱动的全流程自动化软件开发框架 ChatDev (Chat-powered Software  Development),加入 OpenBMB 大模型工具体系。

ChatDev 拟作一个由多智能体协作运营的虚拟软件公司,在人类 “用户” 指定一个具体的任务需求后,不同角色的智能体将进行交互式协同,以生产一个完整软件(包括源代码、环境依赖说明书、用户手册等)。

这一技术为软件开发自动化提供了新的可能性,支持快捷高效且经济实惠的软件制作,未来将有效地将部分人力从传统软件开发的繁重劳动中解放出来。

ChatDev 开源不到两周时间,已经收获 4.2k+ Star,曾持续 3 天霸榜 GitHub Trending  榜首。

下面,让我们从框架概要、评测结果、软件示例和进化成长四个方面全面介绍 ChatDev。

ChatDev 地址:

https://github.com/OpenBMB/ChatDev

ChatDev 框架概要

让多个智能体分工合作

ChatDev 借鉴软件工程瀑布模型的思想,将其分为 软件设计(Designing)、系统开发(Coding)、集成测试(Testing)、文档编制(Documenting) 四个主要环节。

之后,通过对软件开发瀑布模型的进一步分解,形成由原子任务构成的交流链(Chat Chain)。

整条链可视为由原子任务组成的 “软件生产线”,链中每个子任务通过专业角色(例如产品设计官、Python 程序员、测试工程师等)的智能体进行对话式信息交互和决策;驱动其进行自动化需求分析、头脑风暴、系统开发、集成测试、GUI 创作、文档编制等全流程软件工程。

驱动智能体交流对话的主要机制为:角色专业化(Role Specialization)、记忆流(Memory Stream)、自反思(Self-Reflection):

  • 角色专业化通过角色扮演机制(Role-Playing)确保每个智能体各司其职,在指定的专业角色下完成相应的方案提议和决策讨论。

  • 记忆流通过将历史对话进行呈现,保证上下文感知的对话过程,并动态地对对话历史信息进行汇总和决策。

  • 自反思机制在对话没有自动触发结束协议时生效,通过整轮对话进行文本摘要,摘录出对话过程达成一致后的最终决议。

下图示例展现了 ChatDev 框架中 “CEO” 和 “CTO” 两个智能体对 “编程语言研讨” 的对话交流过程:

在编码阶段,ChatDev 使用面向对象的编程语言,其模块化和继承等特性可减少整个系统的代码冗余度。此外,ChatDev 使用代码演化(Version Evolution)机制,通过 Git 版本控制,仅将最新版的源代码呈现给交流链的各个环节。

在编码和测试阶段,为了缓解代码幻觉问题,本文提出一种思维指示(Thought Instruction)的策略以缓解潜在的代码幻觉。

具体通过角色翻转(Role Flipping)来获取交流过程中的代码审查员(Instructor)实际想让程序员(Assistant)修改的代码块精确片段,后将此思维注入到提示中以更加细粒度地将信息指示给程序员让其进行代码优化,以支持常见的代码幻觉问题(例如编写未实现的接口、添加必要注释、消除测试 bug 等问题)。

在文档编制环节,通过需求和代码的理解进行环境配置说明书和用户手册的生成。然后人类 “用户” 即可将 ChatDev 生成的软件 “打包带走” 并配置使用。

ChatDev 评测结果

“给我 1 杯可乐的钱和时间”

实验从 CAMEL 的任务库中随机提取了 70 个软件开发任务进行测试。根据用户任务需求的抽象或具体程度不同,ChatDev 所制的软件复杂度也大不相同,如下图所示,ChatDev 平均为软件生成了 131.61 行代码,2.90 个外部依赖,及 53.96 行使用说明。

此外,ChatDev 所生成的软件复杂度与用户任务需求的具体程度息息相关。而根据软件复杂度,每个任务完成的具体用时也有所浮动。

从接收需求到生产完软件的全程开发周期最长耗时 1030.0 秒、最短耗时 169.0 秒。ChatDev 的软件制作平均时间小于 7.0 分钟且制作成本小于¥3.0 元(即买一杯可乐🥤的价格并喝完它的时间)。

ChatDev 开发示例

含休闲小游戏和效率工具

ChaDev 可以根据用户指令生成的软件种类丰富,目前覆盖编程助手(网络爬虫、数据库读写、文件批处理、网页设计),休闲小游戏(五子棋、贪吃蛇、乒乓球游戏)、效率管理工具(代办清单、数字时钟、数学计算器、密码生成器),创作辅助工具(词典、绘画板、图片编辑器)等。

以 “设计一款五子棋” 为例,可以看到使用 ChatDev 进行开发时,合理的框架流程如何不断迭代为软件带来细节的打磨:

  • ChatDev 的程序员及测试人员会初步生成一个基于终端的程序(左一);

  • GUI 设计会在此基础上加入初步用户交互界面(左二);

  • 创意设计师在交互界面上加入根据 GUI 的需要创作相应的图像素材(左三);

  • 人类 “用户” 可选择性地替换图像素材使其更符合用户美观度需求(左四)。

ChatDev 的能力边界可不止于这些示例,OpenBMB 开源社区热情欢迎开发者们参与 ChatDev 开源项目,为自己量身定制 “ChatDev 公司”,一步跃升成为老板。

ChatDev 进化之路

持续迭代挖掘无限潜力

新范式的产生必然会带来全新的限制和挑战,ChatDev 在 7 月发表的论文中声明:由于生成式大语言模型对下一个 Token 采样本身具有一定随机性、ChatDev 里的艺术设计师对 GUI 各个图像素材均是独立生成的、ChatDev 对编程语言存在一定的归纳偏置等,ChatDev 还存在软件生产过程具有一定不确定性、GUI 配图不自然、导致系统隐患、不能胜任中大规模的软件系统开发等局限。

两个多月来,ChatDev 的作者努力克服局限,不断完善 ChatDev。

7 月 30 日,用户可以自定义 ChatChain、Phase 和 Role 设置,并且支持在线 Log 模式和 replay 模式。

8 月 17 日,V1.0.0 版本准备好发布。

8 月 28 日,系统公开提供使用。通过未来持续的研究和改进,相信 ChatDev 未来会展现出更加出色的表现。

ChatDev 论文:

https://arxiv.org/abs/2307.07924

ChatDev GitHub:

https://github.com/OpenBMB/ChatDev

·················END·················

推荐阅读

•   AI写代码,腾讯云彻底爆了•   才14岁。。简直降维打击•   马斯克,才是老懂哥

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
李云龙、谢耳朵专业陪聊!角色扮演系统ChatHaruhi爆火:支持32个中外角色,开源5.4万条对话数据LLM as Co-pilot:AutoDev 1.0 发布,开源全流程 AI 辅助编程放弃大城市,去海南择校的家长,找到心目中的桃花源了吗?爆火「视频版ControlNet」开源了!靠提示词精准换画风,全华人团队出品让作者月入2万的App,免费开源了!清华系ChatGLM3现场怼脸演示!多模态直逼GPT-4V,国产Code Interpreter来了火箭军终遭整肃国产时序数据库 Apache IoTDB 在海外排行榜位列第一,各性能领先 1- 97 倍!《Never Have I Ever》:个人经历与亚裔身份,本质化的亚洲是否存在我的一天(06/17,06/24,07/01,07/08,星期六)爆火Llama 2一周请求下载超15万,有人开源了Rust实现版本一周2.5k star,3张照片打造专属形象,开源项目FaceChain让每个人AIGC出个人写真China’s Youth Are Hooked on a New Outdoor Sport: Lure Fishing投资性价比最高选择,自住投资两相宜--多家庭别墅推荐--Somerville/Revere/Boston/EverettApache IoTDB:更适合工业物联网场景的新型数据库,存、查、用不再是难题[9月26日]科学历史上的今天——金·赫尔尼(Jean Amédée Hoerni)《Never I Have Ever》:个人经历与亚裔身份,本质化的亚洲是否存在CAIE A-level昨天出分!东亚区剑桥国际A Level A及A*率为58%,比全球高出28%!DevOps 是否已死?AI 和大语言模型给云计算和 DevOps 带来了哪些影响?|InfoQ 趋势报告猫的眼(三)挑战GPT-4V,浙大校友推出开源版多模态大模型,获GitHub 6k+星标今年A-level将更难拿到高分?!GCSE与A-level成绩即将揭晓:8个趋势值得关注!开源中国CEO徐勇在俄罗斯SmartDev演讲硬核观察 #1149 谷歌开源了一个键帽形键盘,摇头输入太卷了,京东、微信与微博最新缓存架构直接开源了。。。国内开源第一!百川开源大模型Baichuan-13B评测揭晓|SuperCLUE一次通过率73%,开源代码大模型WizardCoder超越最新GPT-4以外所有闭/开源模型阿里开源了一个新东西,上 GitHub 热榜了!回国见闻 – 汽车限行卧槽!红警源代码居然开源了....百川智能发布Baichuan2大模型:全面领先Llama2,训练切片也开源了医疗/健康-垂直领域与语言模型 ChatDoctor(上)有趣​参数少近一半,性能逼近谷歌Minerva,又一个数学大模型开源了北交大TransGPT,开源了!
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。