查看原文
其他

把代码贴进去自动找bug,这个debug神器自动修复仅需几秒,还有GPT-3在线解惑

脚本之家 2023-01-25
 关注脚本之家”,与百万开发者在一起

机器之心报道

编辑:蛋酱来源:机器之心 (ID:almosthuman2014 )

管理层:「谢谢,毕竟程序员的工资是每小时 13 美元。」


在编写程序时,无论是对于初学者还是对于专业开发人员,都会花费大量时间来调试或修复源代码错误,也就是 Debug。


这个过程繁琐复杂,包括 Bug 复现和 Bug 定位等环节。如果有了自动化的 Debug 程序,就可以显著提高编程实践的效率。


近日,有开发者打造了一款可以在几秒钟内修复并解释问题代码的 Debug 神器 ——Adrenaline。



试用地址:https://useadrenaline.com/


该工具由 OpenAI Codex 提供支持,Codex 是 OpenAI 与 GitHub 联合发布的 AI 代码补全工具 GitHub Copilot 背后的技术支撑。


鉴于 Codex 的补全功能是基于 GPT-3 的,所以 Adrenaline 也多了一项特色 Debug 功能:解释 Bug。


目前,Adrenaline 已经开源,GitHub 存储库地址为:https ://github.com/shobrook/adrenaline


使用方法


请注意,使用 Adrenaline 的前提是,用户必须从 OpenAI 控制台提供自己的 OpenAI API 密钥。这是为了防止 API 滥用。



 要在本地运行,需要克隆存储库并运行以下命令:


$ npm install$ npm run start-local


目前,Adrenaline 支持 Python、JavaScript、Java、Ruby、PHP、C++、C、Shell 多种编程语言。



调试过程如下:Adrenaline 将代码和错误信息发送到 OpenAI 编辑与插入 API ( code-davinci-edit-001),该 API 会发回可能修复错误的代码编辑。建议的修复会像 diff 一样在线显示,带有接受、拒绝或修改每个代码更改的选项。



Adrenaline 不仅会为错误提出修复建议,还会使用 GPT-3 ( text-davinci-003) 以通俗易懂的英语解释错误:

该错误消息意味着无法计算 Granger 因果检验统计量,因为 VAR(向量自回归)模型对数据有完美的拟合。这意味着数据的可预测性太强,VAR 模型无法找到变量之间的任何有意义的关系。要解决此问题,您可以尝试使用不同的模型或调整 VAR 模型的参数。

如果代码没有引发异常,但可能仍然存在错误,Adrenaline 还可以使用 OpenAI Codex 扫描代码以查找问题并提出修复建议。


作者:希望能引入 ChatGPT 助手


现在,Adrenaline 只是一个简单的 Demo,仅仅展示了 AI 驱动 Debug 的可能性。但在作者的构想中,未来的 Adrenaline 将会有更丰富的功能。


在项目主页,作者也介绍了有关如何改进 Adrenaline 的一些想法:


1. 客户端智能(例如静态代码分析)可用于为 GPT-3 构建更好的 prompt。

2. Adrenaline 不仅应该解释错误,还应该提供一个 ChatGPT 风格的助手来回答有关错误的问题。

3. 创建一个执行此操作的 VSCode 扩展,将消除将代码和错误消息复制粘贴到站点中的问题。


当然,ChatGPT 未必是完全正确的。有人问:如何处理来自 ChatGPT 的错误?


作者表示:「Adrenaline 不会总是正确地纠正你的错误,但它至少可以给你一个起点。」

参考链接:https://www.reddit.com/r/MachineLearning/comments/106q6m9/p_i_built_adrenaline_a_debugger_that_fixes_errors/

<END>
程序员专属卫衣
商品直购链接
👇👇
【☝🏼点击查看更多详情】

  推荐阅读:
墙裂推荐!这才是专属程序员们的卫衣!
谁动了我的代码?!!!
低代码没有做到的事情,ChatGPT做到了
那些只有几行,却改变了世界的代码!
这玩意儿能逆向分析代码,我直接麻了!
Office 2019/2021专业增强版,正版终身授权!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存