在最近的研究中,来自布朗大学和多所中国大学的研究团队进行了一个实验,探究是否可以用ChatGPT的3.5版本的语言模型来驱动的人工
智能机器人,在没有事先训练的情况下完成软件开发过程。
为了测试这一点,研究者创建了一个假想的软件开发公司,名为ChatDev。基于瀑布模型(一种创建软件的顺序方法),该公司按时间顺序分为四个阶段:设计、编码、测试和文档。
然后,研究者通过给每个机器人提供“关键细节”,来为人工智能机器人分配特定的角色。这些“关键细节”描述了“指定的任务和角色、通信协议、终止标准和约束”。一旦研究者给了机器人他们的角色,每个机器人就被分配到各自的阶段。例如,ChatDev的“CEO”和“CTO”在“设计”阶段工作,“程序员”和“美术设计师”在“编码”阶段工作。在每个阶段,人工智能工作者通过最少的人工输入相互交流,完成软件开发过程的特定部分——从决定使用哪种编程语言到识别代码中的错误——直到软件完成。
研究人员在不同的软件场景中进行了实验,并对它们进行了一系列分析,以了解ChatDev完成每种类型的软件需要多长时间以及每种软件的成本是多少。
例如,研究人员要求ChatDev“设计一款基本的五子棋游戏”,这是一种抽象策略棋盘游戏。在设计阶段,CEO要求CTO“提出一种具体的编程语言”,以“满足新用户的需求”,CTO以Python作为回应。CEO反过来说:“太棒了!”并解释说,该编程语言的“简单性和可读性使其成为初学者和经验丰富的开发人员的热门选择。”
在CTO回答“让我们开始吧”之后,ChatDev进入编码阶段,CTO要求程序员编写一个文件,然后程序员要求设计者为软件提供一个“漂亮的图形用户界面”。这样的聊天链在每个阶段重复,直到软件开发完成。
在分配给ChatDev 70个任务后,研究发现,这个由人工智能驱动的公司平均可以在不到七分钟内以不到一美元的成本完成整个软件开发过程,同时通过其“记忆”和“自我反思”的能力识别和解决“潜在漏洞”。论文中写道,大约86.66%的生成软件系统是“完美执行”。
研究人员在论文中写道:“我们的实验结果证明了CHATDEV驱动的自动化软件开发过程的效率和成本效益。”
该研究的结果表明,ChatGPT等强大的生成式人工智能技术可以通过多种方式执行特定的工作职能。然而,这项研究并不完美:研究人员发现了一些局限性,例如语言模型中的错误和偏差,这些局限性可能会导致软件创建过程中出现问题。尽管如此,研究人员表示,这些发现“可能会对现实世界中的初级程序员或工程师有所帮助”。