今天突然看到OpenAI前陣子發表自家新的API--Codex--的影片,由於展現的能力蠻厲害的,所以就稍微打個文章介紹介紹。
什麼是Codex
Codex就是由OpenAI開發的一款「自然語言轉換程式語言」的機器學習模型。一部分人可能聽過他的前身--GPT-3,GPT-3是一個語言模型,主要是處理對話和文章生成,但當時其實就有人用GPT-3來達成類似Codex的功能,例如跟他說:「寫出有一個西瓜樣式的按鈕的網頁。」GPT-3就真的生成了外綠內紅的橢圓按鈕,中間還寫著Watermelon。
現在,OpenAI就基於GPT-3,推出了專門將自然語言轉換成程式碼的AI工具,Codex。
Codex能幹嘛?
Codex擁有理解人類語言的能力,能夠了解上下文關係,從字裡行間尋找相關的資訊並推理。最後丟出符合要求的程式碼。這邊就不多說,直接看他們的展示影片。
內容其實蠻長的,但有一個部分真的是相當厲害。
11:40的部分,左邊的主持人要求讓Codex「發送一封包含一串字跟比特幣價錢的email給其他人」。但由於Codex只能產生並執行程式碼,為了先給他能發信的能力,主持人預先準備了API,提供一個自訂的function可以使用某隻帳號發送郵件。但最鬼的來了,Codex事先完全沒看過API,也不知道怎麼用。但Codex不需要重新訓練,主持人只打字告訴他:「你可以用這個:codex_chimp.send(主旨, 內容)來送信。」然後說一下信的內容,就真的做到了...。
後半段的話兩位則是叫Codex寫一個簡單的js網頁小遊戲。過程中主持人就只是打了幾句話,比如:「加上個這個人的圖案(附上網址)」、「讓人可以用按鍵左右移動」...。沒多久,一個非常簡單的躲落石小遊戲就完成了。
說不定還可以...
現在的機器,都只能執行預先寫好的程式來執行任務。但有了Codex作為中介,就能讓機器更有彈性的執行其他任務,可以期待數位助理的智商上升了,而不是只會講重複笑話的高級鬧鐘。又或許未來某天,程式的更新檔就只是一堆文字跟敘述也說不定了。不過目前的模型仍然相當龐大、複雜,大眾用的設備不可能跑得動,所以應用上還是不實際。
Programmer會不會被取代?
如果是現在的Codex的話,不會。或許有人會說類神經網路早就存在半個世紀了,但過往都是硬體限制導致難以發展,這些技術真正開始蓬勃發展,也不過是近十年內的事。短短十年,已經可以用自然語言叫電腦寫簡單的程式了。
數十年後,或許Codex不需要針對新的語言訓練,只要把語言或API的documentation輸入,就能使用新的語言了...
直到「奇異點」到來的那天前,程式設計師應該還不會消失,但這類的AI應該會輔助,甚至取代碼農的工作。
來去買晚餐...