面對眾多AI新創公司的壓力,還有各式各樣的資金還有人力持續投入大型語言模型的開發,本來持續藏招的OpenAI總算在2023/7月又發表了一個重大的更新 - ChatGPT Code Interpreter。
我們這篇文章的目的是希望透過了解Code Interpreter的原理是什麼,進而去理解Code Interpreter的能耐,再透過理解這個工具可以做到什麼,來反思我們該把那些工作交給這個全新的AI應用工具。我們不會像很多內容網站一樣告訴你這個新的AI工具可以做到什麼10樣100樣功能,重點是那些功能是過去做不到但是現在能夠做到的了? 那些功能交給這些新的AI工具,才能夠把你自己從生產力的枷鎖中解放出來? 這就是我們的網誌持續在探討的議題。
為了最正確的去理解Code interpreter這個功能,我們首先到OpenAI自己的網站的
說明區域去看原文。
簡單的說,原本的ChatGPT不管多厲害,都是一個只能用交談方式互動的AI機器人,但是Code Interpreter這個功能賦予了使用者可以上傳檔案跟ChatGPT互動的機會,它也賦予了ChatGPT一個可以獨立執行Python Program的空間。也就是說原本ChatGPT只能夠替你用想的用說的,但是現在有了Code Interpreter,ChatGPT可以寫程式碼並且及時執行這些程式,來達成過去做不到的事情。 更簡單的說一點,ChatGPT code interpreter 可以想像成一個會寫Python Code的資淺工程師,這樣的人能夠做到的事情,Code interpreter 多半都可以幫你達到(加上原本ChatGPT就有的超強唬爛能力)。
那麼,OpenAI自己認為Code interpreter適合拿來做哪些事情呢? 以下是原始網站寫的
首先,可以解決相對複雜的邏輯問題跟數學問題,再來可以協助做資料分析並且把資料做圖像化,最後則是可以協助你做檔案格式的轉換。
在這邊我們可以先停下來想想,哪些事情是過去的工具做不到的?
1. 解決數學問題跟邏輯問題->我們認為這個有幫助,但是下去測試這個功能大概會需要真實的問題來測試,所以本篇文章我們先不做。
2. 做資料的分析 -> 資料分析還有圖像化,甚至是進一步的針對分析出來的資料作解讀並且能夠洞察裡面的趨勢,我們認為這是過去所有的AI工具都做不到的,所以我們會針對這個功能做實際測試還有分析。
3. 將資料還有檔案格式做轉換->這功能聽起來很棒,光用交談的就可以幫你把手邊的檔案做格式的轉換還有影音照片的剪輯,但是不靠AI工具可以嗎? 實際上這樣的工具已經很多了,你未必需要靠交談來處理這些事情,所以這部份的功能測試,不是我們的最高優先。
為了測試資料分析,如果不放心把你們公司資料直接丟上去測試的人不妨到這邊
Kaggle的Dataset這邊提供了很多免費的功用資料可以給各位測試。我自己個人是在這邊下載了Supermarket銷售資料。首先我們把這個資料(CSV)檔案上傳給ChatGPT
你可以看到,Code interpreter 馬上就開始針對這份資料作分析了。通常面對這種超大的資料,老闆會請你做什麼呢? 通常都是希望針對這樣的資料作圖表與分析,所以接下來我們乾脆不做思考,直接問ChatGPT 有哪些建議的圖表,結果有了以下的分析。
相當驚人的是,Code interpreter是確實的了解了這份資料裡面有包含那些數據,並且針對這些數據提供了它建議可以圖像化的各種資料。這是一份超市在各個城市針對不同族群不同產品別的銷售資料,另外還包含了銷售金額銷售時間等等相關的資訊,而Code interpreter很快地就已經給出了相當合理的幾個建議。一個合理的方向是去觀察各個不同的產品在不同地點的銷售,於是我們就請它針對"城市 vs 銷售產品"做一個圖表,很快得就得到了以下結果
Heatmap for product vs cities
Code interpreter毫不費力的就產出了Heatmap圖表(這其實讓我相當吃驚),那麼我們進一步問下去,針對這樣的資料你有怎樣的解讀呢?
可以看到ChatGPT針對這個資料能夠給出自己的推論,舉例來說認為不同的城市因為有不同的人口組成,自然會對不同產品的銷售有幫助,這邊看來Chatgpt能夠利用自己的知識作解讀並且做出推論,但是如果是比較行業專門的知識,可能就比較需要提供更多的背景資訊給ChatGPT。
接下來我持續追問ChatGPT還能提供怎樣的分析?並且針對"時間"還有"銷售能夠做那些分析"? 經過陸陸續續的對談,基本上我都不需要花腦袋,Code interpreter的功能就幫我提供了類似以下的各種圖表+分析。
這張圖表,是Code interpreter自動針對星期幾vs銷售額度的圖案,並且針對Sales的結果已經自動做了推論。
持續分析下去,可以請它針對每天中的時間還有銷售額度作分析,但是要注意,這邊ChatGPT的分析卻跟它的圖表不一致!可以說是犯了非常明顯的錯誤(每天最高的銷售額度應該是19:00,當我指出它的錯誤的時候,Chatgpt就會道歉並且給出正確的分析。
使用到這邊我個人的感想是,人工智慧助理的時代應該是已經來臨了,Chatgpt code interpreter應該確實就是當初Microsoft 提出的office copilot的一個雛型版本,甚至能夠處理更加複雜的分析,提供更多的洞見。
在AI人工智慧助理能夠做到的事情更多的時候,我們應該要花更多的心思去思考"哪些事情是我將來可以充分授權給AI的?", "哪些事情是我接下來要用我人類的大腦好好去思索的?" 並且也要同時注意到,現階段的AI人工智慧仍有許多可能會犯錯的地方(如我上面的實測),所以不能夠盡信AI分析的結果,仍需要double check重複查核,並且針對資料的分析跟洞察有自己的看法。
以上就是今天分享給各位的,也歡迎大家互相交流。