人工智能聊天机器人七分钟内开发出软件,平均成本不到1美元
发表时间:2023-10-11 19:08:00
文章来源:炫佑科技
浏览次数:141
菏泽炫佑科技 菏泽炫佑小程序开发 菏泽炫佑app制作 炫佑科技
组织| 涂敏
出品| CSDN(ID:)
近一年来,有的AI爱好者用它来创业,有的教授将它引入课堂,有的用它来“打假”……事实证明,尽管很多人对新技术仍持谨慎态度,这并不妨碍他们,AI的新玩法还在解锁中。
近日,来自布朗大学和中国几所大学的研究人员进行了一项实验,看看3.5模型版本支持的AI机器人能否在无需训练的情况下完成软件开发。
针对这个实验,他们还发表了一篇名为“for”()的论文,分享了整个过程,并将该项目开源于:
*终,研究人员要求一家虚拟人工智能软件公司开发70 种不同的程序。 根据实验结果,AI可以在7分钟内开发软件,平均成本不到1美元。 这意味着其他人工智能聊天机器人可以在*少的人工干预下快速且经济高效地运营软件公司。
接下来我们就来看看他们是怎么做的吧~
在论文中,研究人员透露,他们创建了一家名为“虚拟软件开发公司”的公司。 这家公司汇集了具有不同社会身份的代理人。 简单来说,它设立了CEO、专业程序员、测试工程师、美术设计师等职位。
根据设计,该软件公司使用广泛的瀑布模型,将软件开发过程分为四个不同的阶段:设计、编码、测试和文档。
每个阶段都涉及一组代理,包括程序员、代码审查员、测试工程师等,以建立连续性和秩序,就像人类经营任何常规业务一样。
为了促进有效的沟通和协作,提出了聊天链(chat chain)架构,包括划分各个阶段和聊天级组件。 在聊天链中,每个节点代表一个特定的子任务,两个角色参与上下文,进行多轮讨论,提出解决方案,然后进行验证。
这种方法确保公司能够准确分析客户需求、产生想法、设计和实现原型系统、识别和解决潜在问题、解释调试信息、创建有吸引力的界面以及生成用户手册。
然后,研究人员充当“客户”,向软件公司提交了开发一款五子棋游戏的需求,看看这家虚拟公司的代理商如何通过合作聊天进行沟通和开发。
软件开发的四个阶段:设计、编码、测试和文档
在整个会议过程中,研究人员通过向每个人工智能机器人提示描述“指定任务和角色、通信协议、终止标准和约束”的“重要细节”来为每个人工智能机器人分配特定的角色,如下图所示:
在收到人类客户开发游戏的需求后,首先进入虚拟软件开发公司的设计阶段。 这一阶段涉及三个预定义的角色,分别是:CEO(首席执行官)、CPO(首席产品官)和CTO(首席技术官)。
然后,聊天链将设计阶段分解为连续的小型聊天任务,包括有关目标软件模型(CEO 和 CPO)和编程语言(CEO 和 CTO)的决策。 涉及三个关键机制:
经过CEO、CPO、CTO的讨论,决定将五子棋游戏定位为桌面游戏,并采用其进行开发。
同时,代理人的角色也通过自我反思进一步细化了游戏开发的需求:
明确设计需求后,就开始编码阶段。
编码阶段涉及三个预定义角色:CTO、程序员和图形设计师。 同样,聊天链将编程阶段分解为连续的小聊天任务,例如 CTO 提供需求和想法,程序员生成完整的代码,设计师设计图形用户界面,程序员进行集成。
完成后,即使是人类程序员也无法保证他们**次尝试编写的代码始终没有错误。 所以这就把我们带到了测试阶段,程序员、审阅者和测试人员一起工作,通过同行评审(程序员和审阅者)来检查源代码,以识别潜在的问题,然后进行系统测试(程序员和测试人员),系统测试使用测试由解释器进行以验证软件的执行。 本次测试主要通过黑盒测试来评估应用程序的性能。
*后,在设计、编码和测试阶段之后,聘请了四名代理(CEO、CPO、CTO 和程序员)来生成软件项目文档。 使用大语言模型,生成用户手册。
7 分钟内完成软件开发成本不到 1 美元
有趣的是,人工智能机器人可以在上述过程中相互沟通、寻求解决方案并共享重要信息,而人类干预*少。
在具体工具使用方面,研究人员使用了“gpt3.5-turbo-16k”版本,语言的温度参数(可用于控制生成结果的多样性和随机性)设置为0.2。 随后,研究人员允许在编码、审查和测试等不同阶段进行*多 5 次尝试。 对于基于的系统,研究人员使用3.8.16作为解释器进行测试。
除了上述例子之外,研究人员表示人工智能聊天机器人七分钟内开发出软件,平均成本不到1美元,本次实验分析了所有生成的 70 个软件。 同时,他们还对这些软件进行了统计分析,包括会话总数、消耗的代币、软件文件和图像。 资产和版本更新。
据分析,生成的软件通常包含2-8个代码文件,平均4.26个文件。 开发软件通常有 39-359 行代码,平均为 131.61 行。 这些数据表明使用相对较小规模的代码来生成软件的趋势。 这部分归功于面向对象编程的设计小程序开发一般用什么语言,它可以实现代码重用并通过继承减少冗余。 研究人员还注意到,当用户指定不太具体的任务时,生成的源代码往往更短,平均约为 110.97 行。
在实验中,研究人员发现测试生成的软件系统大约有86.66%的表现完美。 13.33%的软件无法运行。 失败的主要原因是API的token长度限制、外部依赖问题的影响等。
平均每个软件生成17.04个文件,软件制作时间为409.84秒,不到7分钟,制造成本为0.2967美元。 审核员和程序员之间的相互讨论帮助识别并修复了近 20 种代码漏洞,而测试人员和程序员之间的讨论*终识别并解决了 10 多种潜在错误。
相比之下,传统的定制软件开发周期,即使在敏捷软件开发方法中,通常也需要 2 到 4 周甚至几个月。
展望未来
这项研究结果表明,强大的生成式人工智能技术可以通过多种方式执行特定的工作职能,也为免费、高效、低成本的软件开发提供了新模式。
然而,这项研究并不完美:研究人员发现了一些局限性,例如即使他们将大型模型的温度参数 ( ) 设置得很低,生成的输出也存在固有的随机性。 同时,语言模型存在错误和偏差,这些限制可能会在软件创建过程中引起问题。
尽管如此,研究人员表示,这些发现“可能对现实世界中的初级程序员或工程师有帮助”。
“展望未来,进一步的研究可以集中于完善通信协议并优化每次聊天中的交互动态,以提高性能和有效性。此外,探索强化学习和可解释人工智能等其他新兴技术的集成,可以提供有价值的成果。”解决挑战和改进整个软件开发过程的见解,”研究人员在论文中写道。
目前已经开源:有兴趣的朋友不妨尝试一下~
炫佑科技专注互联网开发小程序开发-app开发-软件开发-网站制作等