GPT-4自我修复!国外小哥开发神级「金刚狼」,无限自我Debug
来源:51CTO.COM
时间:2023-04-23 08:05:23 343浏览 收藏
科技周边不知道大家是否熟悉?今天我将给大家介绍《GPT-4自我修复!国外小哥开发神级「金刚狼」,无限自我Debug》,这篇文章主要会讲到等等知识点,如果你在看完本篇文章后,有更好的建议或者发现哪里有问题,希望大家都能积极评论指出,谢谢!希望我们能一起加油进步!
要问程序员,一天中最烦的时候是什么?
那一定是给写好的程序Debug了。而现在,这种局面要得到改善了!
国外一名叫BioBootloader的开发者基于GPT-4搞了一个叫「金刚狼」的项目,能够自我修复Python脚本。
从名字就能看出来,这项目主打一个「自我愈合」。通过GPT识别代码中的错误,并提供修改,直至程序顺利运行。
不过,「金刚狼」目前只能用在Python上。
这项目已经在GitHub上收揽了1.2k星,108个Fork。
金刚狼?金刚狼!
BioBootloader表示,用「金刚狼」运行你的程序,只要一崩溃,GPT-4就会自动编辑,然后给出出错的原因。
哪怕码农写了一大堆Bug,也没事。「金刚狼」会反复运行,直到一切Bug都被De掉。
GPT-4想必大家都不陌生。这是由OpenAI开发的多模态人工智能语言模型。
BioBootloader在推特上的演示视频中,展示了「金刚狼」的具体使用方式。
视频中,开发者先写了个简单的四则运算代码,然后故意把其中一些部分写错。
(正确的)
比方说,把结尾的return result随便改成return res,而res没有定义,于是就出错了。
小哥还把减法部分的代码删掉了,就是上方的substract_numbers。这样一来,下面calculate那里就一定会报错。因为subtract没有定义了。
(错误的)
之后直接运行「金刚狼」即可,GPT生成的部分会出现在右侧。
可以看到,「金刚狼」快速识别出了错误,并且附上了解释。
「脚本中没有定义subtract_numbers.
res这个变量没有定义,应该用result代替。」
不光给了建议,「金刚狼」还直接把改好的代码附上了。红色是应该删掉的部分,绿色是添加的部分。
实际上,「金刚狼」是一个封装器,它负责运行程序,捕捉错误信息,再把这些错误发送给GPT-4,询问GPT代码出了什么问题。
像GPT-4这种LLM(即大型语言模型),是用自然语言「编程」的,而这些指令被视为prompts。
「金刚狼」所实现的功能很大一部分要归功于精心编写的提示,阅读这些提示就可以更好的理解整个过程。
目前该项目已经发布在了GitHub上。小哥也是贴心的给出了设置上的要求。
不止是Python
在GitHub上,BioBootloader发布了自己未来的计划,「金刚狼」的功能会越来越全面、强大。
「目前的版本只是我花了几个小时搞得一个原型产品。未来还会有很多可能的延展,同时欢迎大家一起来开发。」
- 添加标志来定制使用方法,例如在运行改变的代码前要求用户确认。
- 对GPT的编辑格式进行进一步的迭代。目前,GPT在缩进方面有点困难,但我确信这一点可以得到改善。
- 一套有问题的文件的例子,我们可以在上方的测试进行提示,以确保其可靠性,并衡量改进的如何。
- 多个文件/代码库——向GPT发送堆栈跟踪中出现的所有文件
- 对大文件更好地处理,即我们是否应该只向GPT发送相关的类/函数?
- 扩展到Python以外的编程语言
从上面那个简单的例子可以看出来,这个脚本还是未来可期的。
毕竟,总不能让用别的语言工作的码农们看着智能Debug Python的「金刚狼」眼红呀。
好了,本文到此结束,带大家了解了《GPT-4自我修复!国外小哥开发神级「金刚狼」,无限自我Debug》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多科技周边知识!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
373 收藏
-
121 收藏
-
244 收藏
-
489 收藏
-
257 收藏
-
196 收藏
-
337 收藏
-
464 收藏
-
415 收藏
-
140 收藏
-
282 收藏
-
125 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 511次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 498次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习