OpenAI 的代碼解釋器讓 ChatGPT 扮演數據科學家
OpenAI最近推出了一個引人注目的新功能,即代碼解釋器 code interpreter,使其大型語言模型ChatGPT能夠執行代碼和進行數據分析。儘管初看可能會讓開發人員感興趣,但代碼解釋器實際上正在實現一個重要的場景,即讓用戶能夠以詳細的方式分析和視覺化其所編寫的代碼片段。
根據OpenAI解決方案架構師Dennis Layton在Medium上的一篇文章中所述,代碼解釋器提供了一種方便易用的方式,將ChatGPT等大型語言模型的使用與傳統編程功能相結合,而無需編寫編程代碼或配置相應的執行環境。這個能力對於以數據為基礎的問題分析具有重要意義,同時還能處理更大規模的數據集。
沃頓商學院副教授Ethan Mollick在一篇博文中補充道,代碼解釋器在數據科學領域有著令人印象深刻的應用。它能夠自動處理複雜的概念並運行高級的數據方法,提供先進的數據分析能力。
該代碼解釋器是OpenAI高級產品ChatGPT Plus的一個插件,僅對訂閱用戶提供。高級用戶可以直接在ChatGPT中編寫和執行Python代碼,並利用該功能進行數據分析、圖表創建、文件編輯和數學運算等操作。
一個例子展示了ChatGPT Plus中的代碼解釋器如何使用Rick Astley的”Never Gonna Give You Up”歌詞創建了一個簡單的猜詞遊戲代碼。
值得注意的是,用戶上傳給ChatGPT供代碼解釋器使用的文件將僅在會話中保留,一旦退出聊天會話,該文件將被刪除。ChatGPT Plus用戶可以上傳最大100MB的文件。
然而,需要注意的是ChatGPT並不具備交互式腳本的能力,因此無法直接執行涉及用戶輸入的代碼。開發人員需要獲取ChatGPT生成的輸出並在本地的Python環境中執行它。
這一新功能的引入解決了ChatGPT早期版本存在的一些問題,尤其是在代碼和數據分析方面。
Ethan Mollick表示,代碼解釋器為ChatGPT提供了一個通用的解決問題工具箱,使其能夠通過編寫Python代碼實現解決問題的能力。同時,代碼解釋器還提供了高內存的使用能力,並以ChatGPT等大型語言模型的優勢來集成和應用這些工具。
代碼解釋器使ChatGPT能夠執行複雜的數學運算,並更準確地處理單詞,例如計算段落中的單詞數量。它還能夠減少幻覺和虛構的產生,因為代碼操作的是數據而不是語言模型本身,這使得ChatGPT能夠更保持誠實,並減少錯誤的生成。
例如,Mollick上傳了一個包含有關超級英雄及其能力的公共領域數據集。他要求ChatGPT合併和清理數據,ChatGPT糾正了自己的錯誤,但他建議用戶仍需對結果進行檢查。
接著,Mollick要求ChatGPT對數據進行分析,並提出了進一步的問題和討論。
這一代碼解釋器的引入為ChatGPT帶來了更強大的數據分析能力,並解決了一些過去版本的限制。這將使用戶能夠更方便地進行數據分析和可視化,並從中獲得更豐富的洞察和價值。
關於OpenAI: OpenAI是一家人工智能研究公司,致力於推動人工智能技術的發展和應用。他們不斷推出創新的解決方案和工具,將人工智能技術應用於各個領域,並推動著人工智能領域的進步和創新。