人工智能

开发速率飙升20倍!GPT Pilot明星项目登Github热榜,从0开始构建AI

字号+作者: 来源:新智元公众号 2024-01-04 14:31 评论(创建话题) 收藏成功收藏本文

声明:本文来自于微信公众号 新智元(ID:AI_era),作者:新智元,授权站长之家转载发布。【新智元导读】开发者的效率倍增工具来了。AI开发者伴侣GPT Pilot可以'...

声明:本文来自于微信公众号 新智元(ID:AI_era),作者:新智元,授权站长之家转载发布。sn5品论天涯网

【新智元导读】开发者的效率倍增工具来了。AI开发者伴侣GPT Pilot可以让95%的开发者实现自动编码。sn5品论天涯网

又一个明星项目诞生了!sn5品论天涯网

GPT Pilot,一个AI开发者伴侣,可以从0开始构建应用程序,可以自己编写代码、配置开发环境、管理开发任务、调试代码。sn5品论天涯网

甚至,你可以随时和它聊天提问,帮你解决开发难题。sn5品论天涯网

图片sn5品论天涯网

项目体验网址:https://top.aibase.com/tool/gpt-pilotsn5品论天涯网

发布三个月,Github的热度不断增加,现在已经有19k星。sn5品论天涯网

图片sn5品论天涯网

代码开发,95%交给AIsn5品论天涯网

在项目主页的介绍中,GPT Pilot的目的是研究在开发人员监督实施的同时,GPT-4可在多大程度上用于生成可完全正常运行、可投入生产的应用程序。sn5品论天涯网

图片sn5品论天涯网

主要的想法是,人工智能可以为应用程序编写大部分代码(可能是95%),但对于其余的5%,在我们获得完整的AGI之前,现在和将来都需要开发人员。sn5品论天涯网

图片sn5品论天涯网

那么它是具体如何工作的呢?开发者在一篇文章中具体介绍GPT Pilot工作流程。sn5品论天涯网

GPT Pilot工作流程sn5品论天涯网

首先,你需要输入想要构建的应用程序的描述。sn5品论天涯网

然后,GPT Pilot与GPT-4合作,明确应用程序的要求,最后编写代码。它使用许多人工智能智能体,模仿开发机构的工作流程。sn5品论天涯网

- 在您描述完应用程序后,「产品负责人」智能体会分解业务规格,并向你提问,以澄清任何不清楚的地方。sn5品论天涯网

- 然后,「软件架构师」智能体分解技术要求,并列出将用于构建应用程序的技术。sn5品论天涯网

- DevOps智能体根据体系结构在机器上配置环境。sn5品论天涯网

- 「技术团队首席」智能体将应用程序开发流程分解为开发任务,每个任务需要具备:sn5品论天涯网

最后,开发人员和Code Monkey智能体一个接一个地处理任务,开始编写应用程序。sn5品论天涯网

开发人员将每个任务分解为较小的步骤,这些步骤是较低级别的技术要求,可能不需要人工审查或使用自动测试(如安装一些程序包)。sn5品论天涯网

图片sn5品论天涯网

GPT Pilot三大支柱sn5品论天涯网

支柱1:开发人员需要参与应用程序的创建过程sn5品论天涯网

当前,我们离可以连接到CLI,并自行创建任何应用程序的LLM还很遥远。sn5品论天涯网

因此,为了让AI生成一个完全正常工作的应用程序,我们需要允许它与负责监督开发过程的开发人员密切合作,并在AI编写大部分代码的同时担任技术团队负责人。sn5品论天涯网

因此,开发人员需要能够随时更改代码,而GPT Pilot需要继续处理这些更改。sn5品论天涯网

以下是开发人员可以干预开发过程的领域:sn5品论天涯网

在每个开发任务完成后,开发人员应该检查它并确保它按预期工作。sn5品论天涯网

在每次失败的测试或命令运行之后-开发人员可能更容易调试一些东西。sn5品论天涯网

支柱2:应用程序需要一步一步地进行编码sn5品论天涯网

图片sn5品论天涯网

和人类一样,AI编码肯定会犯错误,所以为了让它更容易地进行调试,并让开发人员了解生成的代码中发生了什么,AI不应该只是一次吐出整个代码库。sn5品论天涯网

相反,应用程序应该像开发人员一样一步一步地生成和调试。sn5品论天涯网

如果GPT Pilot一步一步地创建一款应用程序,人工智能和监督它的开发人员都将能够更容易地解决问题,整个开发过程也将更加顺利。sn5品论天涯网

支柱3:GPT Pilot需要具有可扩展性sn5品论天涯网

GPT Pilot必须能够创建可投入生产的大型应用程序,而不仅仅是小型应用程序,在小型应用程序中,整个代码库都可以融入LLM环境。sn5品论天涯网

问题是,LLM 的所有学习都是在上下文中完成的。也许有一天,LLM可以针对每个具体项目进行微调,但现在看来,这将是一个非常缓慢和冗余的过程。sn5品论天涯网

GPT Pilot解决这个问题的方式是使用上下文回溯(context rewinding)、递归对话和TDD。sn5品论天涯网

上下文回溯

上下文回溯背后的想法相对简单,对于解决每个开发任务,给LLM发送的第一条消息的上下文大小必须相对相同。sn5品论天涯网

例如,在实现开发任务#5时,大模型的第一条信息上下文大小必须与开发任务#50时的第一条信息大致相同。sn5品论天涯网

因此,在执行每项任务时,对话都需要回溯到第一条信息。sn5品论天涯网

从本质上讲,当GPT Pilot创建代码时,它会为编写的每个代码块生成伪代码,并为它需要创建的每个文件和文件夹创建描述。sn5品论天涯网

图片sn5品论天涯网

递归对话

递归对话是与LLM的对话,如果GPT Pilot检测到一个错误,它需要对其进行调试,但假设在调试过程中发生了另一个错误。sn5品论天涯网

然后,GPT Pilot需要停止调试第一个问题,修复第二个问题,然后重新开始修复第一个问题。sn5品论天涯网

开发者认为,这是一个关键的概念,需要努力让人工智能构建大型且可扩展的应用程序。它的工作原理是回溯上下文,并分别解释递归中的每个错误。sn5品论天涯网

一旦修复了最深层的错误,我们就在递归中向上移动,并继续修复错误,直到整个递归完成。sn5品论天涯网

TDD(测试驱动开发)

GPT Pilot要扩展代码库、改进代码库、更改需求和添加新功能,它需要能够在不破坏以前编写的代码的情况下创建新代码。sn5品论天涯网

没有比使用TDD方法更好的方法了。sn5品论天涯网

对于GPT Pilot编写的所有代码,它需要编写检查代码是否按预期工作的测试,以便无论何时进行新的更改,都可以运行所有回归测试,以检查是否有任何故障。sn5品论天涯网

本网除标明“PLTYW原创”的文章外,其它文章均为转载或者爬虫(PBot)抓取; 本文只代表作者个人观点,不代表本站观点,仅供大家学习参考。本网站属非谋利性质,旨在传播马克思主义和共产主义历史文献和参考资料。凡刊登的著作文献侵犯了作者、译者或版权持有人权益的,可来信联系本站删除。 本站邮箱[email protected]