OpenAI放大招!全新推理模型o1系列來了,解題能力堪比博士生!
就在5分鐘前,OpenAI釋出了全新的 AI 模型系列——OpenAI o1,主打推理能力,號稱能解決比以往模型更難的科學、 編程 和 數學 問題!
先別急著激動,這次只是預覽版! OpenAI 表示,o1 系列模型還將進行定期更新和改進,後續還會加入更多功能,例如網頁瀏覽、檔和影像上傳等。
網頁瀏覽難道是參考Claude那種?我們拭目以待。
那麽,o1 系列模型到底有多牛呢?
推理能力大幅提升: OpenAI 表示,o1 模型在物理、化學和生物等學科的 challenging 基準測試中,表現與博士生相當
數學和編程能力爆表: 在一項國際數學奧林匹克競賽(IMO)的資格考試中,GPT-4o 的正確率只有 13%,而 o1 模型的正確率高達 83%!在 Codeforces 編程競賽中,o1 模型的成績也達到了前 89%!
o1 系列模型的工作原理:
更像人類一樣思考: o1 系列模型經過訓練,能夠花更多時間思考問題,嘗試不同的策略,並辨識自己的錯誤,就像人類一樣!
o1 系列模型的安全性:
全新安全訓練方法: OpenAI 開發了一種新的安全訓練方法,利用 o1 模型的推理能力,讓它們更好地遵守安全和對齊準則
更強的「越獄」抵抗力: OpenAI 用「越獄」測試來衡量模型的安全性,結果顯示 o1 模型比 GPT-4o 更不容易被「越獄」
o1 系列模型的兩個版本:
o1-preview: 預覽版模型,功能相對較少,但推理能力強大
o1-mini: 更小、更快的推理模型,特別擅長編程,成本也更低
如何使用 OpenAI o1?
ChatGPT Plus 和 Team 使用者: 現在就可以在 ChatGPT 中使用 o1-preview 和 o1-mini 模型
ChatGPT Enterprise 和 Edu 使用者: 下周開始可以使用這兩個模型
API 使用者: 符合條件的開發者現在就可以在 API 中使用這兩個模型,但功能有限,例如不支持函式呼叫、流式傳輸、系統訊息等
ChatGPT Free 使用者: OpenAI 計劃在未來向所有 ChatGPT Free 使用者開放 o1-mini 模型
在這裏,直接用 OpenAI o1
谷歌瀏覽器存取:https://www.nezhasoft.cn
下面,我們分六項(程式碼能力、程式碼最佳化能力、解讀程式碼能力、測試用例及說明能力、轉碼能力、添加註釋能力)橫線對比一下 ChatGPT4o、 Claude3.5 Sonnet、 o1-preview、 o1-mini ,看看孰強孰弱。
都是程式碼AI實測,文章較長,想直接看結論的,可以直接跳到文末~
round 1:程式碼能力
Prompt:請根據上面描述,給出解題思路,透過Java程式碼解答此題,關鍵程式碼添加註釋,並根據範例中的輸入輸出進行程式碼測試,程式碼如果有錯誤,請重新修改程式碼
ChatGPT4o
ChatGPT4o給出了解題思路、Java程式碼、程式碼解釋、測試用例。
Claude3.5 Sonnet
Claude給出了解題思路、Java程式碼、程式碼解釋、測試用例、時間復雜度。
o1-preview
o1-preview給出了解題思路、Java程式碼、程式碼解釋、測試用例、測試說明、註意事項、總結。
o1-mini給 出了解題思路、 Java 代 碼、程式碼說明、4個測試用例總結 。
驗證程式碼正確率,我們將四個大模型生成的程式碼Copy到Idea中,透過測試用例測試一下。
測試透過,透過率100%。
程式碼review:
如下圖所示,左側為ChatGPT4o,右側為Claude3.5 Sonnet。
肉眼可見,o1-preview程式碼共86行,o1-mini程式碼共92行,ChatGPT4o程式碼共74行,Claude共54行,相差20行。Claude3.5 Sonnet明顯更加簡潔。
o 1-mini號稱擁有更強的編程能力,仔細一看,發現 o 1-mini新增了很多輸入輸出校驗,增強了程式碼的健壯性。
程式碼能力小結:
ChatGPT4o給出了解題思路、Java程式碼、程式碼解釋、測試用例。
Claude3.5 Sonnet給出了解題思路、Java程式碼、程式碼解釋、測試用例,還給出了演算法的時間復雜度。
o1-preview給出了解題思路、Java程式碼、程式碼解釋、測試用例、測試說明、註意事項、總結。
o1-mini給出了解題思路、Java程式碼、程式碼說明、4個測試用例總結。
透過review程式碼,Claude3.5 Sonnet明顯更加簡潔、o1-mini更加縝密。
程式碼能力,o1-mini >o1-preview > > Claude3.5 Sonnet > ChatGPT4o
round 2:程式碼最佳化
PS:我們將「透過回溯演算法解答猴子吃桃的程式碼」發給它們,讓它們對程式碼進行最佳化。
ChatGPT4o
ChatGPT4o指出了程式碼存在4個問題:
效率低,遞迴回溯,時間復雜度為 O(N)
遞迴深度限制,可能會導致 StackOverflowError
不必要的排序
全域變量使用,不符合編碼規範
ChatGPT4o給出了最佳化後的程式碼、關鍵點、下一步改進建議。
Claude3.5 Sonnet
Claude指出了程式碼存在4個問題:
效率低,遞迴回溯,時間復雜度為 O(N)
不必要的排序
全域變量使用,不符合編碼規範
程式碼沒有處理輸入異常的情況
Claude給出了最佳化建議、最佳化後的程式碼、最佳化說明、小總結。
o1-preview o1-preview指出了程式碼存在4個問題:
效率低下
缺少輸入校驗
不必要的排序操作
全域變量的使用
o1-preview 給出了最佳化建議、最佳化後的程式碼、程式碼說明、 測試範例、 最佳化效果 、 總結。
o1-mini o1-mini指出了程式碼存在6個問題:遞迴深度過大
效率低下
不必要的排序
缺乏輸入驗證
靜態變量的使用
錯誤的測試用例預期
o1-mini 給出了最佳化建議、最佳化後的程式碼、程式碼說明、4個 測試範例、 總結。
程式碼最佳化小結:
ChatGPT4o、Claude、 o1-preview 都指出了4項問題,但 o1-mini指出了6個問 題。
給出了 給出了最佳化建議、最佳化後的程式碼、程式碼說明、 測試範例、 最佳化效果 、 總結。
程式碼最佳化能力,o1-mini > o1-preview > Claude3.5 Sonnet = ChatGPT4o
round 3:解讀程式碼
Prompt:請給出程式碼的解題思路
ChatGPT4o
ChatGPT4o給出了具體的解題思路、最佳化後的程式碼、程式碼解析、建議的下一步改進
Claude3.5 Sonnet
Claude3.5 Sonnet給出了最佳化後程式碼的解題思路:
問題分析
輸入處理
初始驗證
二分尋找最小速度
驗證函式
返回結果
分析程式碼優勢
Claude3.5並沒有再次輸出程式碼,其實這一點是好評的,因為上面已經輸出過了,完全沒必要再次輸出。
o1-preview o1-preview給出了具體步驟、整體思想、程式碼解釋、範例執行、可能的問題和最佳化、最佳化後的解法思路、總結。
o1-minio1-mini給出了問題分析、程式碼解讀、主要步驟解析、存在的問題、最佳化建議、最佳化後的解題思路、最佳化後的範例程式碼、最佳化後的程式碼說明、5個範例測試、總結。
解讀程式碼小結:
ChatGPT4o看似給的東西比較多,Claude3.5只是返回了解題思路。
o1-mini給的東西更多,牛逼plus,真頂。
解讀程式碼 能力, o1-mini > o1-preview >> Claude3.5 Sonnet > ChatGPT4o
round 4:測試用例及說明
Prompt:給出3個測試用例和說明
ChatGPT4o
ChatGPT4o給出了三個測試用例,涵蓋了不同的場景、完整程式碼及測試用例、測試用例結果
Claude3.5 Sonnet
Claude3.5 Sonnet給出了3個測試用例,並對每個用例進行詳細說明。
這些測試用例涵蓋了幾種不同的情況:
正常情況,需要計算的最小速度
需要較高速度才能完成的情況
無法完成任務的情況(時間不足)
o1-preview
o1-preview給出了4個測試用例和總結。
o1-mini
o1-mini 直接給出了5個測試用例和說明,還給出了小總結。
正常情況
邊界情況
無效輸入
ChatGPT4o給出的東西很多,又輸出一遍完整程式碼,但是回答內容有些重復。
Claude3.5 Sonnet給出了3個測試用例,並對每個用例進行詳細說明,還指出了3個測試用例覆蓋了3種不同的情況。
o1-preview給出了4個測試用例和總結。
o1-mini 直接給出了5個測試用例 和說明,還給出了 小總結。
測試用例及說明能力,o1-mini > o1-preview > Claude3.5 Sonnet > ChatGPT4o
round 5:Java轉Python
Prompt:將程式碼轉為Python語言
ChatGPT4o
ChatGPT4o給出了Python程式碼、關鍵程式碼解析、測試用例
Claude3.5 Sonnet
Claude3.5給出了Python程式碼、解題思路、時間復雜度
o1-preview o1-preview給出了Python程式碼實作、程式碼說明、測試範例、註意事項、執行方法
o1-mini o1-mini給出了解題思路、主要步驟、Python程式碼實作、程式碼說明、程式碼最佳化點、5個測試範例、結論
轉碼能力小結:
ChatGPT4o和Claude3.5都給出了Python程式碼、解題思路、測試用例,測試後,透過率100%。
o1-preview給出了Python程式碼實作、程式碼說明、測試範例、註意事項、執行方法。
o1-mini給出了解題思路、主要步驟、Python程式碼實作、程式碼說明、程式碼最佳化點、5個測試範例、結論。
轉碼能力,o1-mini > o1-preview > Claude3.5 Sonnet = ChatGPT4o
轉碼能力,旗鼓相當。
round 6:添加註釋
ChatGPT4o
Claude3.5 Sonnet
ChatGPT4o和Claude3.5都為Python程式碼添加了詳細的程式碼註釋,能力堪稱頂級。
o1-preview和o1-mini給出的程式碼內建詳細的程式碼註釋,不用添加了...
添加註釋能力,o1-mini > o1-preview > Claude3.5 Sonnet = ChatGPT4o
總結
我們分別從六大方面對比了o1-mini、o1-preview 、ChatGPT4o和Claude3.5 Sonnet。
程式碼能力 , o1-mini > o1-preview > Claude3.5 Sonnet > ChatGPT4o
程式碼最佳化能力 ,o1-mini > o1-preview > Claude3.5 Sonnet = ChatGPT4o
解讀程式碼能力 ,o1-mini > o1-preview >> Claude3.5 Sonnet > ChatGPT4o
測試用例及說明能力 ,o1-mini > o1-preview > Claude3.5 Sonnet > ChatGPT4o
轉碼能力 ,o1-mini > o1-preview > Claude3.5 Sonnet = ChatGPT4o
添加註釋能力 ,o1-mini > o1-preview > Claude3.5 Sonnet = ChatGPT4o
就今天的測試而言,我們不難看出,在編程方面,
o1-mini效能提升明顯。
編程能力:
o1-mini > o1-preview > Claude3.5 Sonnet > ChatGPT4o
如何使用 o1-mini
谷歌瀏覽器存取:https://www.nezhasoft.cn
回復gpt,獲取ChatGPT4o、 o1-mini 直接使用地址
點選閱讀原文,國內直接使用ChatGpt4o、o1-mini