OpenAI官方解讀ChatGPT外掛程式:語言模型的“眼睛和耳朵”
發布日期:3/25/2023
作者:OpenAI官方;翻譯:新聞視界時報
根據我們的反覆運算部署理念,我們正在逐步推出ChatGPT外掛程式,以便我們可以研究它們在現實世界中的使用、影響以及安全和協調方面的挑戰——所有這些我們都必須做好,才能實現我們的使命.
自從我們推出 ChatGPT 以來,用戶一直要求外掛程式(許多開發人員正在嘗試類似的想法),因為它們可以解鎖大量可能的用例。我們從一小部分使用者開始,並計畫隨著我們瞭解更多(對於外掛程式開發人員、ChatGPT 用戶,以及在 alpha 期之後,希望將外掛程式集成到他們的產品中的 API 使用者)逐步推出更大規模的訪問。 我們很高興能夠建立一個塑造人機交互范式未來的社區。
被邀請的外掛程式開發人員可以使用我們的文檔為 ChatGPT 構建外掛程式,然後在向語言模型顯示的提示中列出已啟用的外掛程式以及指導模型如何使用每個外掛程式的文檔。第一批外掛程式由Expedia、FiscalNote、Instacart、KAYAK、Klarna、Milo、OpenTable、Shopify、Slack、Speak、Wolfram和Zapier創建。
我們自己也開發了兩個外掛程式,一個網路流覽器和代碼解譯器。我們還開源了知識庫檢索外掛程式的代碼,任何開發人員都可以自行託管他們想要用來增強ChatGPT的資訊。
今天,我們將開始將外掛程式alpha存取權限擴展到候補名單中的用戶和開發人員。雖然我們最初會優先考慮少數開發人員和 ChatGPT Plus 用戶,但我們計畫隨著時間的推移推出更大規模的訪問。
如何使用ChatGPT外掛程式的示例
概述
今天的語言模型雖然對各種任務有用,但仍然有限。他們可以從中學習的唯一資訊是他們的訓練資料。此資訊可能已過時,並且適用于所有應用程式。此外,語言模型唯一可以開箱即用的就是發出文本。此文本可能包含有用的說明,但要真正遵循這些說明,需要另一個過程。
雖然不是一個完美的類比,但外掛程式可以成為語言模型的“眼睛和耳朵”,使它們能夠訪問太新、太私人或太具體而無法包含在訓練資料中的資訊。為了回應用戶的明確請求,外掛程式還可以使語言模型代表他們執行安全、受限的操作,從而提高整個系統的實用性。
我們預計開放標準將會出現,以統一應用程式接入AI 介面的方式。我們正在對這樣一個標準的外觀進行早期嘗試,我們正在尋找有興趣與我們一起構建的開發人員的回饋。
今天,我們開始逐步為 ChatGPT 用戶啟用早期合作者的現有外掛程式,首先是 ChatGPT Plus 訂閱者。我們還開始推出開發人員為 ChatGPT 創建自己的外掛程式的能力。
在接下來的幾個月裡,隨著我們從部署中學習並繼續改進我們的安全系統,我們將反覆運算這個協議,我們計畫讓使用 OpenAI 模型的開發人員能夠將外掛程式集成到他們自己的應用程式中,而不是 ChatGPT。
安全性和更廣泛的影響
將語言模型連接到外部工具會帶來新的機會,同時也會帶來重大的新 風險。
外掛程式提供了解決與大型語言模型相關的各種挑戰的潛力,包括“幻覺”,跟上最近的事件,以及訪問(經許可的)專有資訊源。通過集成對外部資料的顯式訪問——例如線上最新資訊、基於代碼的計算或自訂外掛程式檢索資訊——語言模型可以通過基於證據的參考來加強它們的回應。
這些參考資料不僅增強了模型的實用性,還使使用者能夠評估模型輸出的可信度並仔細檢查其準確性,從而有可能減輕與我們最近的 GPT-4 系統卡片中討論的過度依賴相關的風險。最後,外掛程式的價值可能遠遠超出通過幫助用戶處理各種新用例(從流覽產品目錄到預訂航班或訂購食物)的現有限制。
與此同時,外掛程式可能會採取有害或無意的行動,增加不法分子欺詐、誤導或虐待他人的能力,從而增加安全挑戰。通過增加可能的應用範圍,外掛程式可能會增加因模型在新領域中採取的錯誤或錯誤協調操作而產生負面後果的風險。從第一天起,這些因素就指導了我們外掛程式平臺的開發,我們實施了多項保障措施。
從第一天起,這些因素就指導了我們外掛程式平臺的開發,我們實施了多項保障措施。
我們已經在內部和與外部合作者進行了紅隊演練,揭示了許多可能的相關場景。例如,我們的紅隊發現了外掛程式的方法——如果在沒有安全措施的情況下發佈——執行複雜的提示注入、發送欺詐和垃圾郵件、繞過安全限制或濫用發送到外掛程式的資訊。我們正在使用這些發現來通知安全設計緩解措施,這些緩解措施限制了有風險的外掛程式行為,並提高了它們作為用戶體驗的一部分運行的方式和時間的透明度。我們還使用這些發現來告知我們逐步部署對外掛程式的訪問的決定。
如果你是一名研究人員,有興趣研究該領域的安全風險或緩解措施,我們鼓勵你使用我們的研究人員訪問計畫。我們還邀請開發人員和研究人員提交與外掛程式相關的安全和功能評估,作為我們最近開源的Evals 框架的一部分。
外掛程式可能會產生廣泛的社會影響。例如,我們最近發佈了一份工作論文,其中發現能夠使用工具的語言模型可能比沒有工具的語言模型產生更大的經濟影響,更普遍地說,根據其他 研究人員的發現,我們預計當前的人工智慧技術浪潮將對工作轉變、替代和創造的速度有很大影響。我們渴望與外部研究人員和我們的客戶合作研究這些影響。
流覽Alpha
一個知道何時以及如何流覽互聯網的實驗模型
受過去工作(我們自己的WebGPT,以及GopherCite,BlenderBot2,LaMDA2和其他)的啟發,允許語言模型從互聯網上讀取資訊嚴格擴展了他們可以討論的內容量,超越了訓練語料庫的新鮮資訊。
這是向 ChatGPT 用戶開放流覽體驗的一個例子,以前會讓模型禮貌地指出它的訓練資料沒有包含足夠的資訊來讓它回答。在這個示例中,ChatGPT 檢索有關最新奧斯卡頒獎典禮的最新資訊,然後執行現在熟悉的 ChatGPT 操作,這是流覽可以成為一種附加體驗的一種方式。
ChatGPT流覽外掛程式演示
除了為最終用戶提供明顯的實用性之外,我們認為使語言和聊天模型能夠進行徹底和可解釋的研究具有可擴展對齊的令人興奮的前景。
流覽最新資訊
安全考慮
我們已經創建了一個網路流覽外掛程式,它可以讓語言模型訪問網路流覽器,其設計將安全性和作為網路良好公民的操作放在首位。該外掛程式的基於文本的 Web 流覽器僅限於發出 GET 請求,這減少(但不會消除)某些類別的安全風險。這將流覽外掛程式的範圍限定為可用於檢索資訊,但不包括“事務性”操作,例如表單提交,這些操作具有更大的安全性和安全性問題。
流覽外掛程式使用bing搜索 API 從 Web 檢索內容。因此,我們繼承了 Microsoft 在 (1) 資訊來源可靠性和真實性以及 (2) 防止檢索有問題內容的“安全模式”方面的大量工作。該外掛程式在一個獨立的服務中運行,因此 ChatGPT 的流覽活動與我們基礎設施的其餘部分是分開的。
為了尊重內容創作者並遵守網路規範,我們的流覽器外掛程式的使用者代理權杖是ChatGPT-User,並配置為尊重網站的 robots.txt 文件。這可能偶爾會導致“點擊失敗”消息,這表明該外掛程式正在遵守網站的指示以避免對其進行抓取。此使用者代理將僅用於代表 ChatGPT 用戶採取直接操作,而不用於以任何自動方式抓取網路。我們還發佈了IP 出口範圍。此外,已實施限速措施以避免向網站發送過多流量。
點擊失敗
您可以使用 robots.txt 檔阻止 ChatGPT 抓取你的網站,當發生這種情況時,ChatGPT 將顯示此錯誤消息。
我們的流覽外掛程式顯示訪問過的網站,並在 ChatGPT 的回復中引用其來源。這種增加的透明度層有助於使用者驗證模型回應的準確性,並回饋內容創建者。我們讚賞這是一種與網路交互的新方法,並歡迎就其他方法將流量拉回來源並增加生態系統的整體健康狀況提供回饋。
{{AD}}
代碼解譯器
一個可以使用 Python 處理上傳和下載的實驗性 ChatGPT 模型
我們為我們的模型提供了一個在 沙箱、防火牆執行環境中工作的 Python 解譯器,以及一些臨時磁碟空間。由我們的解譯器外掛程式運行的代碼在一個持久會話中進行評估,該會話在聊天對話期間一直有效(具有上限超時),後續調用可以相互構建。我們支援將檔上傳到當前對話工作區並下載您的工作結果。
執行邏輯計算的代碼解譯器外掛程式
我們希望我們的模型能夠使用它們的程式設計 技能為我們電腦的最基本功能提供更自然的介面。接觸到以指尖的速度工作的非常熱心的初級程式師可以使全新的工作流程變得輕鬆高效,並向新的受眾開放程式設計的好處。
從我們最初的用戶研究中,我們確定了使用代碼解譯器特別有用的用例:
- 解決定量和定性的數學問題
- 進行資料分析和視覺化
- 在格式之間轉換檔
我們邀請用戶嘗試代碼解譯器集成並發現其他有用的任務。
ChatGPT解譯器外掛程式演示
安全考慮
將我們的模型連接到程式設計語言解譯器的主要考慮因素是對 執行進行適當的沙箱處理,以便 AI 生成的代碼不會在現實世界中產生意外的副作用。我們在安全環境中執行代碼,並使用嚴格的網路控制來防止外部互聯網訪問執行代碼。此外,我們對每個會話都設置了資源限制。禁用互聯網訪問限制了我們代碼沙箱的功能,但我們相信這是正確的初始權衡。協力廠商外掛程式被設計為將我們的模型連接到外部世界的安全第一方法。
檢索
開源檢索外掛程式使 ChatGPT 能夠訪問個人或組織資訊源(經許可的)。它允許使用者通過提問或用自然語言表達需求,從他們的資料來源中獲取最相關的文檔片段,例如檔、筆記、電子郵件或公共文檔。
作為一個開源和自託管的解決方案,開發人員可以部署他們自己的外掛程式版本並在 ChatGPT 上註冊。該外掛程式利用OpenAI 嵌入並允許開發人員選擇向量資料庫(Milvus、Pinecone、Qdrant、Redis、Weaviate或Zilliz)來索引和搜索文檔。資訊源可以使用 webhooks 與資料庫同步。
首先,訪問檢索外掛程式存儲庫。
ChatGPT檢索外掛程式演示
安全考慮
檢索外掛程式允許 ChatGPT 搜索內容向量資料庫,並將最佳結果添加到 ChatGPT 會話中。這意味著它沒有任何外部影響,主要風險是資料授權和隱私。開發人員應該只將他們有權使用的內容添加到他們的檢索外掛程式中,並且可以在用戶的 ChatGPT 會話中共用。
協力廠商外掛程式
一個知道何時以及如何使用外掛程式的實驗模型
ChatGPT中的協力廠商外掛程式
協力廠商外掛程式由清單檔描述,其中包括外掛程式功能的機器可讀描述以及如何調用它們,以及面向用戶的文檔。
示例:用於管理todo事項的外掛程式的清單檔
創建外掛程式的步驟是:
- 使用您希望語言模型調用的端點構建 API(這可以是新的 API、現有的 API 或圍繞專門為 LLM 設計的現有 API 的包裝器)。
- 創建一個記錄您的 API 的 OpenAPI 規範,以及一個連結到 OpenAPI 規範並包含一些特定於外掛程式的中繼資料的清單檔。
在chat.openai.com上開始對話時,使用者可以選擇他們想要啟用的協力廠商外掛程式。有關已啟用外掛程式的文檔作為對話上下文的一部分顯示給語言模型,使模型能夠根據需要調用適當的外掛程式 API 來實現用戶意圖。目前,外掛程式是為調用後端 API 而設計的,但我們正在探索也可以調用用戶端 API 的外掛程式。
ChatGPT協力廠商外掛程式演示
ChatGPT 外掛程式開發者體驗
未來
我們正在努力開發外掛程式並將它們帶給更廣泛的受眾。我們有很多東西要學,在大家的幫助下,我們希望構建一些既有用又安全的東西。
文章來源:https://openai.com/blog/chatgpt-plugins