天天看點

ChatGPT能自己跑代碼了:提需求直接輸入運作結果,網友直呼“魔法”

蕭箫 發自 凹非寺

抛給ChatGPT一個需求,它隻能給你一堆運作效果未知的代碼?

現在,隻需一個小改動,ChatGPT不僅能直接把你的文字需求變成代碼,還能幫你跑一遍,把輸出結果返還給你!

這個秘訣就是代碼解釋器插件。

作家Andrew Mayne(現已加入OpenAI)拿到了内測資格,并上手試了試,效果讓他直呼“魔法”——

讓ChatGPT寫個AI人臉檢測程式,Andrew Mayne上傳自己的照片後,很快就被檢測了出來:

再試試讓它寫個迷宮生成算法,并把通路做成吃豆人動畫,完全沒問題:

ChatGPT能自己跑代碼了:提需求直接輸入運作結果,網友直呼“魔法”

有網友看到這篇内測文章後感歎:

這太瘋狂了,它将改變一切。

來看看Andrew Mayne在内測中都發現了什麼神奇“魔法”。

發現了什麼神奇“魔法”?

作為目前最受矚目的ChatGPT插件之一,代碼解釋器是一個在沙盒、防火牆執行環境中工作的Python解釋器,包含一些臨時磁盤空間。

簡單來說,隻需要給ChatGPT輸入一句話,它不僅能寫出代碼,還能借助解釋器跑通代碼、給出每一行代碼的解釋,将結果輸出給你:

生成的内容也是多種多樣,從文字、圖像和聲音的處理,到棋類遊戲引擎和簡單的AI算法,ChatGPT都能搞定。

文字圖像聲音處理

先來看看圖像的生成和處理效果。

例如,把ChatGPT把克蘇魯圖像轉換成ASCII:

生成戴着帽子叼着煙鬥的貓(有點抽象):

生成網站二維碼:

做一份比較簡單的動畫也沒問題,例如“暴風雪”:

ChatGPT能自己跑代碼了:提需求直接輸入運作結果,網友直呼“魔法”

再來看看聲音。

例如,生成謝潑德音調(一段聽起來像是在不斷升高或降低的音調,但其實隻是一段音調的無限循環):

不僅給出了解釋,還生成了一段音調,聽起來似乎真有點那個意思了。

最後是文字處理,以OCR算法為例,這是個将圖檔識别成一段文字的算法:

上傳一張舊照片後,AI很快識别出了對應的文字并轉換成了.txt檔案,看起來也還不錯:

那麼,再進一步,試試用ChatGPT寫算法?

寫AI算法

除了開頭提到的人臉識别算法,是ChatGPT基于OpenCV生成的以外,Andrew Mayne這次還嘗試了NLP算法。

具體來說,就是給出一半的句子,讓AI預測下一個詞,ChatGPT很快給出了代碼:

看起來不錯,生成效果如何?

Andrew Mayne試了一句:

They went to the……(他們去了……)

通常這裡應該接一個地點名詞,例如沙灘或教堂等等。然而,ChatGPT寫的AI算法在思考一通後,接了個“shoulders”???

They went to the shoulders.(他們去了肩膀)

對此Andrew Mayne調侃,不用擔心ChatGPT寫出個GPT-4了。

生成遊戲引擎

最後是生成遊戲引擎,Andrew Mayne表示“完全沒問題”,但并未給出ChatGPT具體的步驟。

這是生成一個跳棋引擎的效果(此外,還能生成象棋引擎):

ChatGPT能自己跑代碼了:提需求直接輸入運作結果,網友直呼“魔法”

還可以讓它生成一個細胞自動機(Game of Life):

寫的程式并非100%正确

有網友看完後表示,代碼解釋器插件很好地填補了ChatGPT“數學差”的漏洞:

ChatGPT幾乎沒啥數學技能,但它能輕松地通過生成Python代碼來完成這件事。

但也有不少網友在這次示範中,發現了不少Bug。

例如,雖然都是能運作的Python程式,仔細一看基本都有顯而易見的小錯誤,包括:

生成謝潑德音調的方法是錯誤的,不僅得調振幅,還得調頻;

生成的謝潑德音調本身也有問題,正常來說最後一個音應該與第一個音相同,使得循環可以無限期地繼續;

用細胞自動機生成二維碼圖像,其實是反過來用二維碼圖像倒推出細胞自動機(不過,這裡作者也承認他“教”ChatGPT作弊了)

行星軌道模拟中的軌道都是圓形軌道,從科學角度來說應該是很明顯的橢圓形。

圖形生成其實也有小bug,不一一列舉。

不過,“這些顯而易見的bug反而不需要太擔心。”

有網友感覺,真正需要擔心的是ChatGPT“疊加錯誤”的問題。

一旦ChatGPT寫的東西有bug,就必須立刻重新開機新會話,否則它的錯誤就會開始成倍疊加:

這種感覺就像是它試圖在掩飾什麼,非常奇怪。

最後,雖然ChatGPT已經能寫出象棋引擎了,不過有眼尖的網友發現,它依舊不會下象棋。

例如,突然用馬吃掉自己的兵。(手動狗頭)

ChatGPT能自己跑代碼了:提需求直接輸入運作結果,網友直呼“魔法”

繼續閱讀