开发速率飙升20倍!GPT Pilot明星项目登Github热榜,从0开始构建AI
创始人
2025-07-10 10:30:56
0

又一个明星项目诞生了!

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

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

图片图片

项目地址:https://github.com/Pythagora-io/gpt-pilot

发布三个月,Github的热度不断增加,现在已经有19k星。

图片图片

代码开发,95%交给AI

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

图片图片

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

图片图片

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

GPT Pilot工作流程

首先,你需要输入想要构建的应用程序的描述。

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

图片图片

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

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

- DevOps智能体根据体系结构在机器上配置环境。

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

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

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

图片图片

GPT Pilot三大支柱

支柱1:开发人员需要参与应用程序的创建过程

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

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

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

以下是开发人员可以干预开发过程的领域:

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

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

支柱2:应用程序需要一步一步地进行编码

图片图片

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

相反,应用程序应该像开发人员一样一步一步地生成和调试。

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

支柱3:GPT Pilot需要具有可扩展性

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

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

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

上下文回溯

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

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

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

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

图片图片

递归对话

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

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

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

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

TDD(测试驱动开发)

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

没有比使用TDD方法更好的方法了。

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

参考资料:

https://github.com/Pythagora-io/gpt-pilot

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
P2P的自白|我不生产内容,我... 现在一提起P2P,人们就会联想到正在被有关部门“围剿”的互联网理财服务。×租宝事件使得劳...
Intel将Moblin社区控... 本周二,非营利机构Linux基金会宣布,他们将担负起Moblin社区的管理工作,而这之前,Mobli...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...