Debug神器 Adrenaline 幾秒內自動修復程式碼,還有GPT-3解釋錯在哪

Debug神器 Adrenaline 幾秒內自動修復程式碼,還有GPT-3解釋錯在哪

ADVERTISEMENT

在編寫程式時,無論是對於初學者還是對於專業開發人員,都會花費大量時間來調試或修復原始碼錯誤,也就是 Debug。 

這個過程繁瑣複雜,包括 重現Bug和 Bug 定位等環節。如果有了自動化的 Debug 程式,就可以顯著提高程式設計的效率。 

近日,有開發者打造了一款可以在幾秒鐘內修復並解釋問題程式碼的 Debug 神器 ——Adrenaline。

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 濫用。 

Debug神器 Adrenaline 幾秒內自動修復程式碼,還有GPT-3解釋錯在哪

要在本地運行,需要複製儲存庫並運行以下命令:

$ npm install
$ npm run start-local

目前,Adrenaline 支援 Python、JavaScript、Java、Ruby、PHP、C++、C、Shell 多種程式設計語言。

Debug神器 Adrenaline 幾秒內自動修復程式碼,還有GPT-3解釋錯在哪

 

調試過程如下:Adrenaline 將程式碼和錯誤資訊發送到 OpenAI 編輯與插入 API ( code-davinci-edit-001),該 API 會發回可能修復錯誤的程式碼編輯。建議的修復會像 diff 一樣線上顯示,有接受、拒絕或修改每個程式碼更改的選項。 

Debug神器 Adrenaline 幾秒內自動修復程式碼,還有GPT-3解釋錯在哪

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 的錯誤? 

Debug神器 Adrenaline 幾秒內自動修復程式碼,還有GPT-3解釋錯在哪

作者表示:「Adrenaline 不會總是正確地糾正你的錯誤,但它至少可以給你一個起點。」

資料來源:

bigdatadigest
作者

大數據文摘(bigdatadigest)成立於2013年7月,專注數據領域資訊、案例、技術,在多家具有影響力的網站、雜誌設有專欄,致力於打造精準數據分析社群。

使用 Facebook 留言
發表回應
謹慎發言,尊重彼此。按此展開留言規則