
粉墨登場的 Canvas 是一款全新介面,用來與 ChatGPT 一起處理寫作和程式設計專案,功能比單純的聊天介面更強大。Canvas 會在個別視窗中開啟,方便您與 ChatGPT 協作處理專案。這個早期 Beta 版帶來全新的協作方式,不光能對話交流,還能夠像同桌工作一樣,共同創造和完善想法。
Canvas 採用 GPT‑4o 模型,可在 Beta 版的模型挑選器中手動選取。自今天起,我們將開始逐步向全球的 ChatGPT Plus 和 Team 用戶推出 Canvas。Enterprise 和 Edu 用戶則可於下週開始使用。未來在 Beta 測試階段結束後,我們也預計開放所有 ChatGPT 的 Free 用戶使用 Canvas。
在 ChatGPT 的幫助下進行寫作和設計程式,已成為人們的日常。雖然聊天介面操作容易且能應付許多任務,但處理需要編輯和修改內容的專案時,功能就有所侷限。Canvas 為這類工作提供全新的介面。
透過 Canvas,ChatGPT 可以更充分理解脈絡,有效協助您達成目標。您可以強調特定內容,讓 ChatGPT 了解要專注處理的具體部分,它就像是文稿編輯或程式碼審查員,可以考量整體專案內容,逐行提供回饋和建議。
Canvas 中的專案由您掌控。您可以直接編輯文字或程式碼,也能運用捷徑選單,要求 ChatGPT 調整撰文長度、為程式碼偵錯,以及快速執行其他動作。此外,您還能使用 Canvas 的還原按鈕,復原先前版本的內容。
當 ChatGPT 偵測到適合使用 Canvas 提供協助的情境時,就會自動開啟 Canvas。另外,只要在提示中加入「使用 Canvas」,就能開啟 Canvas 並用來處理現有的專案。
寫作的捷徑功能如下:
- 建議編輯:ChatGPT 提供逐句建議和回饋。
- 調整長度:縮短或延長文件長度。
- 變更閱讀難度:調整閱讀難度,提供從幼兒園到研究生的選項。
- 加上最終潤飾:檢查文法、清晰度和一致性。
- 加入表情符號:加入相關表情符號來強調重點和增添趣味。
程式設計是反覆迭代的過程,且很難透過聊天掌握所有修改內容。Canvas 讓您更容易追蹤及理解 ChatGPT 的修改內容,我們也計劃持續提升這類修改過程的透明度。
程式設計的捷徑功能如下:
- 預覽程式碼:ChatGPT 會提供逐行建議來協助改善程式碼。
- 新增記錄:插入 print 陳述式來協助您偵錯和理解程式碼。
- 新增註解:對程式碼新增註解來協助理解。
- 修正錯誤:偵測並重寫有問題的程式碼來解決錯誤。
- 移植到其他語言:將您的程式碼轉譯成 JavaScript、TypeScript、Python、Java、C++ 或 PHP。
經過我們的訓練,GPT‑4o 已成為最佳的創作協作者。這個模型不僅能判斷開啟 Canvas 的時機、針對特定部分修改或是整段重寫,還能掌握更全面的上下文資訊,提供精準的回饋和建議。
為了支援這些功能,我們的研究團隊開發出以下核心行為:
- 觸發 Canvas 來處理寫作和程式設計任務
- 生成多元類型的內容
- 針對特定部分修改
- 重寫文件
- 提供逐行回饋
我們透過超過 20 項自動化內部評估來衡量進度,並採用新型態合成資料生成技術,例如從 OpenAI o1 預覽版萃取輸出內容重點,對模型進行後續訓練來強化其核心行為。歸功於這套做法,我們不必依賴人工產生的資料,就能快速改善寫作品質和新使用者互動情形。
定義觸發 Canvas 的時間點是一大挑戰。我們訓練模型在出現「寫一篇有關咖啡豆歷史的部落格文章」這類提示時開啟 Canvas,並避免為了一般性問答任務而過度觸發,例如「協助我煮一道晚餐新菜色」。針對寫作任務,我們的優先要務是提升「正確觸發率」(雖然代價是犧牲「正確不觸發率」的表現),以未經專門訓練且接受提示指令的 GPT‑4o 為基準,正確率達到 83%。
值得注意的是,這類基準模型的表現,很大程度取決於提示的具體內容。使用不同提示時,基準模型可能依然表現不佳,但出錯的方式會有所不同。舉例來說,在程式設計和寫作任務中的出錯率相近,因而導致錯誤分布不同,並出現不同形式的不理想表現。針對程式設計任務,我們刻意讓模型不會輕易觸發,避免干擾使用量很大的用戶。我們會持續根據使用者回饋改善運作機制。
Canvas 決策邊界觸發條件 - 寫作與程式設計
針對寫作和程式設計任務,我們讓模型更準確判斷何時觸發 Canvas,以未經專門訓練且接受提示指令的 GPT‑4o 為基準,準確度分別達到 83% 和 94%。
我們面臨的第二項挑戰,是調整模型在觸發 Canvas 後的修改行為,具體而言,就是判斷何時要針對特定部分修改或重寫整段內容。經過我們的訓練,模型會在使用者明確透過介面選取文字時針對特定部分修改,反之則傾向重寫內容。隨著我們微調模型,這套行為模式將會持續演進。
Canvas 編輯邊界 - 寫作與程式設計
針對寫作和程式設計任務,我們的優先要務是改善 Canvas 針對特定部分修改的準確度。比起使用基準提示的 GPT‑4o,整合 Canvas 功能的 GPT‑4o 表現高出 18%。
最後,我們訓練模型生成需要反覆嘗試和細心調整才能達成的高品質註解。前面兩種情況可以在經過仔細的人工審查後,輕鬆轉成自動化評估機制,但要以自動化方式測量品質卻困難重重。因此,我們以人工評估方式來衡量註解的品質和準確度。比起未經專門訓練且接受提示指令的 GPT‑4o,整合 Canvas 功能的模型在準確度的表現高出 30%,品質則高出 16%;這說明合成訓練能大幅提升模型的回應品質和行為表現,效果比對未經專門訓練的模型給出詳細指令的提示要好很多。
Canvas Suggested Comments
透過人工評估判斷 Canvas 的註解品質和功能的準確度。比起未經專門訓練且接受提示指令的 GPT‑4o,整合 Canvas 功能的模型在準確度的表現高出 30%,品質則高出 16%
為了讓 AI 更實用且更平易近人,我們需要重新思考互動方式。Canvas 是一套全新做法,也是我們自兩年前推出 ChatGPT 以來,針對視覺介面做出的第一項重大更新。
Canvas 目前尚處於早期 Beta 測試階段,我們計劃將盡速改善其功能。
作者
研究組長
Karina Nguyen
核心研究人員
Kai Chen、Michael Wu、Tarun Gogineni
核心工程、產品、設計人員
Alexi Christakis、Bryan Ashley、Bryant Jow、Chris Haugli、Daniel Levine、Eric Jiang、Gabriel Peal、Lee Byron、Lukas Gross、Matt Lim、Sara Culver、Thomas Dimson
貢獻者
Andrew Gibiansky、Andrew Howell、Arianna McClain、David Li、Doug Li、Ilya Kostrikov、Katy Shi、Noah Deutsch、Randall Lin、Sara Culver、Sean Fitzgerald、Shuaiqi Xia、Spencer Papay、Thomas Shadwell、Valerie Qi、Xiaolin Hao、Yilei Qian
支援領導團隊
Akshay Nathan、Barret Zoph、Ian Silber、Joanne Jang、John Schulman、Kevin Weil、Mia Glaese、Mira Murati、Nick Turley、Sam Altman、Sulman Choudhry