微軟新工具準(zhǔn)確率達(dá)80%,程序員:真的栓 Q
微軟宣布推出一種可以提高大型語言模型性能的新工具 Jigsaw?!按笮偷念A(yù)訓(xùn)練語言模型(如 GPT-3、Codex 等),可以被調(diào)整為從程序員意圖的自然語言規(guī)范中生成代碼。這種自動(dòng)化模型有可能提高世界上每個(gè)程序員的生產(chǎn)力;但是,由于這些模型可能難以理解程序語義,因此所生成的代碼的質(zhì)量不能得到保證。”
根據(jù)介紹,Jigsaw 部署了理解程序語法和語義的后處理技術(shù),然后利用用戶反饋來提高未來的性能;該工具旨在使用多模式輸入為 Python Pandas API 合成代碼。Pandas 是數(shù)據(jù)科學(xué)中廣泛使用的 API,具有數(shù)百個(gè)用于 manipulating dataframes 或具有行和列的表的函數(shù)。
微軟方面稱,其經(jīng)驗(yàn)表明,隨著這些大型語言模型演變?yōu)楦鶕?jù)意圖合成代碼,Jigsaw 可以在提高系統(tǒng)準(zhǔn)確性方面發(fā)揮重要作用。
像 OpenAI 的 Codex 這樣的大型語言模型正在重新定義編程領(lǐng)域。軟件開發(fā)人員在解決編程任務(wù)時(shí),可以為預(yù)期的代碼片段提供英文描述,Codex 可以用 Python 或 JavaScript 等語言合成預(yù)期的代碼。但合成的代碼可能不正確,甚至可能無法編譯或運(yùn)行。Codex 用戶有責(zé)任在使用代碼之前對(duì)其進(jìn)行審查。Jigsaw 團(tuán)隊(duì)解釋稱,通過 Project Jigsaw,其目標(biāo)是使部分審查自動(dòng)化,以提高使用 Codex 等大型語言模型進(jìn)行代碼合成的開發(fā)人員的生產(chǎn)力。
微軟認(rèn)為 Jigsaw 可以“完全自動(dòng)化”檢查代碼是否編譯、處理錯(cuò)誤信息以及測(cè)試代碼是否產(chǎn)生開發(fā)人員希望輸出的內(nèi)容的整個(gè)過程?!癑igsaw 將預(yù)期代碼的英文描述以及 I/O 實(shí)例作為輸入。通過這種方式,它將輸入與相關(guān)的輸出配對(duì);并提供質(zhì)量保證,即輸出的 Python 代碼將在提供的輸入上編譯并產(chǎn)生預(yù)期的輸出。
”在其 ICSE 2022 論文 Jigsaw:Large Language Models meet Program Synthesis 中,微軟方面在 Python Pandas 上評(píng)估了這種方法。使用 Jigsaw,用戶可以提供對(duì)預(yù)期轉(zhuǎn)換的英文描述、input dataframe 和相應(yīng)的 output dataframe,然后讓 Jigsaw 合成預(yù)期代碼。
Jigsaw 獲取英語查詢并使用適當(dāng)?shù)纳舷挛膶?duì)其進(jìn)行預(yù)處理,以構(gòu)建可以饋送到大型語言模型的輸入。微軟在實(shí)驗(yàn)中發(fā)現(xiàn),Jigsaw 可以在 30% 的時(shí)間內(nèi)創(chuàng)建正確的輸出。如果代碼失敗,那么修復(fù)過程在后處理階段開始。
在后處理過程中,Jigsaw 應(yīng)用了三種變換來修復(fù)代碼。這些轉(zhuǎn)變中的每一個(gè)都是由他們?cè)?GPT-3 和 Codex 中觀察到的故障模式所激發(fā)的。而 GPT-3 和 Codex 失敗的方式都類似,因此 Jigsaw 解決這些失敗模式的后處理對(duì)兩者都很有用。
微軟在各種數(shù)據(jù)集上評(píng)估了 Codex 和 Jigsaw (with Codex),并測(cè)量了準(zhǔn)確率。Codex 給出了約 30% 的開箱即用的準(zhǔn)確性,Jigsaw 則將準(zhǔn)確率提高到 60% 以上;通過用戶反饋,準(zhǔn)確率可提高到 80% 以上。接下來,他們將繼續(xù)致力于完善 Jigsaw,努力將在 Python Pandas API 上的經(jīng)驗(yàn)推廣到其他 API 和其他語言上;在通過自動(dòng)化提高程序員生產(chǎn)力方面發(fā)揮重要作用。
更多詳情可查看官方博客:https://www.microsoft.com/en-us/research/blog/jigsaw-fixes-bugs-in-machine-written-software/
對(duì)于微軟推出會(huì)編程的 AI ,然后又讓 AI 學(xué)會(huì)代碼審核,如今準(zhǔn)確率還達(dá)到 80%,有網(wǎng)友表示:程序員們啊,本是同根生,相煎何太急。