撰稿 | 王瑞平
既AutoGPT之后,GPT家族又添GPT-Engineer新成员。
如同其它GPT家族成员一样,它能够根据用户指令生成生成整个代码库、学习你的代码风格,易于调整、扩展。这下,程序员又要失业了。
简单易用、灵活、易于添加新的AI步骤是GPT-Engineer最强的优势。
它可以逐步构建用户体验,用户也可以使用高级提示,然后将反馈输送回AI。随着时间的推移,AI能够记住这些反馈。
1、在GitHub上狂飙:斩获30k星
GPT-Engineer于6月11日闪亮登场,是由Depict创始人兼首席技术官Anton Osika开发,供程序员进行AI编程工具。
上线仅一周多的时间,GPT-Engineer就在GitHub上狂飙,迅速斩获30k星。
据Anton Osika 的推文介绍,在使用 GPT-Engineer 时,你可以:
- 用一个提示词生成代码库
- 提出清晰的问题
- 生成技术规范
- 编写所有必要的代码
- 轻松添加自己的推理步骤、修改和实验
- 让你在几分钟内完成一个编码项目
2、优势:一个提示词生成整个代码库
如前文所述,GPT-Engineer最大的优势还在于能够根据提示词生成整个代码库。
网友们都跃跃欲试,并在互动区评论道:“这看起来太棒了,要试一试吗?”
小编不禁感叹,这让我们离AGI又近了一步…
3、实测:完成贪食蛇游戏项目
我们还实测了项目中列举的贪吃蛇游戏例子,现在描述出来,便于大家理解:
完成任务大概分3步:
1)告诉GPT-Engineer你想让它完成什么;
2)GPT-Engineer询问用户输入模糊的问题,以便更明确任务需求;
3)GPT-Engineer开始构建运行代码。
- 输入提示
首先,你需要通过输入提示,让GPT-Engineer知道要干什么。
贪吃蛇游戏的提示词大致为“网页版多人可玩的贪吃蛇游戏”。系统使用带有MVC组件的Python后端,必要时可以使用html、js。
- 提问
然后,GPT-Engineer对任务要求进行更细致的提问,比如蛇是如何移动的?有多少玩家可以加入这个游戏?游戏状态更新频率是多少?
值得注意的是,GPT-Engineer不是无条件地询问这些问题,而是采用QA方式确定需要澄清的缺失细节。
- 生成游戏代码
上述问题明确之后,GPT-Engineer 就能按照用户要求生成多人玩贪吃蛇游戏的代码。
4、记住代码:将互动历史存储在文件夹中
GitHub上不仅公开了从输入到输出的整个程序设置,还重点介绍了系统是如何记住代码的:
- 通过编辑文件夹中的文件指定AI标识。(identity)
- 编辑标识并改进,使AI代理“记住”项目。(main_prompt)
- 与GPT-4通信的历史都被记录存储在logs文件夹中
这项特殊的功能便于系统更容易了解你的喜好,在进行类似操作时提升生成代码的效率和准确度。
5、抛出问题:帮助用户弥补缺失细节
在这里,不得不提及项目的独特之处,即,当用户输入自己的需求时,GPT-Engineer并不会直接接受,而是会根据自己的判断提出问题,帮助程序员弥补缺失的细节。
该过程分为两个步骤进行:
(1)需求细化
(2)软件构建
- 在需求细化阶段:
1)用户提供的包含需求和问题指示的文件夹被提交给GPT-Engineer,并被放置在GPT初始消息中;
2)系统接收来自GPT-4的反馈,了解需要澄清的问题并提示用户;
3)GPT-Engineer将该过程循环,解释所有问题直到GPT-4“满意”为止。
- 在软件构建阶段:
1)上个阶段提炼出的用户需求被打包,并与GPT系统提示和另外一套用户输出指示一起包装起来。
2)GPT-Engineer接收来自GPT-4的响应,然后创建源代码文件,为用户提供指令。
6、项目理念:简单易用,为用户提供价值
GitHub上还着重强调了GPT-Engineer的主要项目理念:
- 简单易用,为用户提供价值;
你只需用谷歌登录,便可以轻易操作,输入提示词后就能生成整个代码库。
- 灵活且易于添加新的AI步骤;
- 支持高级提示,记住用户反馈;
系统能够自动记忆你的操作,并模仿你的风格完成整个项目;
- 在人类与人工智能之间快速切换;
- 所有计算可恢复并永久保存在文件系统中。
7、总结:AI代码生成工具火遍全网
AutoGPT之后,AI代码生成工具GPT-Engineer火爆全网。
它作为一个根据指示生成代码的AI工具,能学习到不同的代码风格,短时间帮你搞定编码项目。全过程由需求细化促进阶段和软件构建阶段组成。
项目最独特之处在于:开发者在文本文件中提交需求,GPT-Engineer不是无条件接受这些要求,而是提出许多详细的问题来让程序员澄清缺失的细节。
8、网友评论:我们也在尝试与GPT-Engineer相似的应用
我们在Anton Osika的帖子下搜集到部分网友的评论:
“额外功能:像一个真正的咨询工程师一样,承诺过多、交付不足。”
部分网友还在评论区展示出类似的应用:“这很酷,我在研发一些类似的应用dev-GPT。”
小编对此还去亲测了一番:该款应用能够像真正的Python开发者一样自动提取用户需求,输出你想要的程序,在GitHub上斩获了153k星。
一位名为OxVivek的用户说:“哇,GPT-Engineer是游戏改变者。我很好奇它与smol相比带来了哪些创新…迫不及待想尝试下在几分钟内完成编码项目。”
GPT-Engineer预示着未来创造软件将迈入人机交互新时代。此外,网友提到的dev-GPT、Auto-GPT、smol等也能够输出你想要的代码,你可以根据需求选择最适合的一款应用。
未来,你将不用绞尽脑汁编写一行代码,创建项目就像和好友聊天那样简单。
如果你对此感兴趣并且是一名程序员,不妨用谷歌注册账号亲自实测一番,在对话中写出你想要的程序、创建一套软件系统,并将你的感受留在评论区…
参考资料:
1.https://github.com/AntonOsika/gpt-engineer
2.https://twitter.com/antonosika/status/1667641038104674306?cxt=HHwWhIC-kYms06QuAAAA