開源版「ChatGPT Plus」來了,能做數據分析、外掛程式調用、自動上網,落地真實世界的智慧體

原文來源:機器之心

圖片來源:由無界AI生成

OpenAI ChatGPT Plus 訂閱付費功能強大,可以實現高階「數據分析」(Advanced Data Analysis)、「插件調用」(Plugins)以及「自動網頁流覽」(Browse with Bing),能夠作為日常生活中的重要生產力工具。 可是因為商業原因而選擇了閉源,研究者和開發者也只能使用而沒有辦法在其上面做任何的研究或改進。

基於此,來自香港大學、XLang實驗室、Sea AI實驗室和Salesforce的研究者聯合打造了一款用於真實世界生產力工具的開源智慧體框架——OpenAgents,並開源了全棧代碼(完整前後端,研究代碼),以滿足從研究者到開發者再到使用者的所有人的需要。

OpenAgents 用基於「大語言模型」(LLMs)的技術和全棧工程代碼嘗試近似複刻了 ChatGPT Plus 的功能。 智慧體能執行 Python/SQL 代碼,熟練調用工具,也能上網找地圖發帖子,一路從研究代碼實現到後端前端,讓其變成了人人都能用的落地級別應用。 OpenAgents 完整披露了他們採用的技術和遇到的困難,完全開源了代碼,包含從科研到邏輯代碼到前端代碼的一切。 代碼完善、易於拓展,本地直接可以一鍵部署,配套提供了含有豐富的使用案例的文檔,説明研究者和開發者在模型上搭建自己的智慧體和應用。

*OpenAgents 總覽圖,面向使用者的網頁介面,面向開發者的本地部署,面向研究者的語言智慧體。 *

* 代碼連結:

  • 論文連結:
  • Demo 連結:
  • 文件連結:

與 ChatGPT Plus 的 “一樣” 和 “不一樣”

左邊是 OpenAgents 的實現,右邊是 ChatGPT Plus:

先來看看「數據分析」功能。 同一個分析股票價格的任務,OpenAgents 和 ChatGPT 都能不錯地完成使用者對股價和交易的分析要求。 不過 OpenAgents 可以自動搜尋 Kaggle 資料集並下載,ChatGPT 需要使用者從本地上傳。

再試試 OpenAI 最早推出的「外掛程式」功能。 使用者想要畫一些八面體,兩者都成功調用了 Wolfram 外掛程式畫出多種八面體的圖片。

最後看看「網頁流覽」。 使用者想要查詢 10 月 20 日從中國香港到紐約的機票,OpenAgents 識別使用者意圖後直接跳轉到 Skycanner,像 “真人” 一樣一邊思考一邊在網站中填入資訊,最後回到聊天頁面總結資訊; 而 ChatGPT 處於安全考慮保證可控性,和調用外掛程式類似,在雲端做網頁流覽,將最後搜尋到的資訊返回。

由於OpenAgents提供了開源的代碼,開發者和研究者可以定製,若干行代碼適配自己想要的模型,改進、創造自己想要的功能,甚至創造新的Agent。 這對於該方向的進一步開展開發和研究至關重要。

**看似簡單,「生產力能用」的智慧體為什麼踩坑這麼多? **

智慧體的開源框架不少,基於大模型的中間件更是層出不窮,為什麼搭建一個真正方便可用的智慧體並不容易,OpenAgents 在他們論文中與其他智慧體框架進行了對比:

*對比 OpenAgents 和其他的框架。 *

從表格中可以看出,「介面」(Interface) 和「配套環境」(Environment) 是 OpenAgents 與眾不同的兩個因素。 現有的開源框架比如 LangChain,AutoGPT 和 BabyAGI 等旨在為開發者提供早期概念驗證實現和控制檯介面,但在真實世界中卻不夠魯棒,這限制了更廣泛受眾的接入,特別是那些不熟悉程式設計或控制台的普通使用者。 而在閉源體系中,OpenAI 在 ChatGPT Plus 中部署了精心設計的產品,尤其是高級數據分析(之前稱為代碼解釋器)、外掛程式和 Bing 流覽等功能,利用進一步訓練的模型、業務邏輯代碼和培育的軟體社區(例如,外掛程式商店)。 但是閉源導致它們難以作為開發和研究平臺使用,社區無法站在巨人肩膀上探索、評估和改進。 在側重考量這些維度之後,OpenAgents 作為面向真實場景的開源 Agent 框架,為社區提供了一個可與 ChatGPT Plus 一較高下的平臺。

在「介面」上,OpenAgents 提供線上的網頁 demo (以及配套的開原始程式碼),非程式師背景的普通使用者也可輕鬆與智慧體進行交互,而之前的工作通常不提供或者以「控制台指令介面」(CLI) 形式提供交互,極大地提高了智慧體的使用門檻。 在「配套環境」上,OpenAgents 支援真實世界環境和可控環境,支持超過 200 + 的日常工具調用,支援網頁自動流覽。

這些功能側重和配備使得 OpenAgents 成為對於普通使用者最沒有門檻的選擇; 也為研究、開發人員等提供可能是最好的直接面向用戶的機會。

作為生產力的 Agent 未來的第一步:「使用者」,「開發人員」,「研究人員」都能用的 Agent 平臺

為了解決上述問題,OpenAgents 的動機是作為一個開源平臺,為使用和部署智慧體提供,目前包括三個關鍵智慧體:

  • 用於 Python 和 SQL 的數據智慧體;
  • 200 多個工具使用的外掛程式智慧體;
  • 自動網路流覽的 Web 智慧體。

OpenAgents 相信,為了讓大語言模型發揮其全部潛力,它們必須從純粹的理論或面向開發者的工具轉變為為廣泛使用者群提供的動態、互動式系統。 「普通使用者」可以通過在線 Web UI 輕鬆探索智慧體功能,無需編碼專業知識。 此外,OpenAgents 為「開發者」提供完整的業務邏輯和研究代碼,以便在本地輕鬆部署,「研究人員」可以進一步構建語言智慧體。 最後,OpenAgents 旨在成為一個真實而全面的人類可交互的智慧體評估平臺:根據真實需求,真實使用者與智慧體互動以完成其任務,並記錄整個使用者 - 智慧體互動過程和用戶反饋以供進一步評估。 與現有的基準測試和平臺相比,OpenAgents 提供了一個真實環境,智慧體可以滿足各種真實的使用者需求。

面臨和克服的挑戰

挑戰 1: 基於提示來構建真實世界語言模型的弊端

在為真實用戶構建基於提示的應用程式時,使用提示中的指令來設定特定要求。 這些指令有不同目的,有一些是為了確保大語言模型的輸出符合後端邏輯處理的特定格式(以特定鍵的字典形式輸出); 有一些是提升輸出的美觀度(盡可能一條條單獨列出專案); 有一些是用於防止潛在的攻擊(拒絕使用者惡意構造的無限循環程序並且執行)。

這些帶著約束目的提示來約束語言模型需要開發者研究者反覆調試出來一些可以使用的指令,這些指令加在一起通常會是幾百個「詞元」(token)甚至上千個詞元,這些指令作為前綴會被反覆輸入到模型造成顯卡資源的大量消耗; 另外一方面,詞元越多越依賴 LLM 有很好的性能,所以說這一條技術路線對大語言模型的指令跟蹤能力和支援的上下文長度提出了一定的要求。

當前的開源模型在這些方面已經取得了顯著的改進,但是在實驗中仍然是不足以用來實際使用的,這方向的研究還可以繼續。 此外,需要更加重視智慧體模型的基礎開發和研究,以及針對特定領域和要求訓練專用的智慧體模型。 這種方法可能比僅依賴於提示一個通用強大但固定模型更高效,也更可控。

挑戰 2: 無法控制的現實因素

實現真實世界的語言智需要面對很多無法控制的現實因素,這些因素包括使用者行為、互聯網的基礎設施和業務邏輯等,它們在過去的研究中並未得到充分建模。 這就需要重新評估,甚至推翻許多過去研究中的假設和方法。 必須考慮到的事是,調用的 API 所在的伺服器可能會崩潰。 這種情況需要監控並穩定地完成使用者命令,而不是像過去的工具使用研究中所假設的那樣。 在生成回復的過程中,使用者可能會感到不滿意,這可能導致語言模型在生成過程中被中斷。

此外,像 CAPTCHA 彈出或廣告改變網頁這樣的不可預測事件,可能會在相對穩定的網頁結構中引入一定程度的隨機性,這在以前的自動瀏覽網頁的工作中未曾考慮過。 諸如此類的問題還有很多,比如說在智慧體反應和思考的時間內(現在往往需要數秒)就改變的環境,等等。

挑戰 3: 來自真實場景的額外指標

具體的研究通常過於強調性能指標,而忽視了現實場景中的基本需求。 例如,使用流式(即每生成一個詞元都儘快顯示給使用者)可以讓用戶能夠快速感知系統的反饋,而無需等待長篇大論的文本生成完畢再一起看到。 特意設計的提示可以讓智慧體的回復格式更加美觀,這對用戶體驗有著顯著影響。 然而,現有的方法並未充分考慮這些影響。 導致了儘管在準確性上的性能指標優秀,但在實際應用中,它們可能導致回應時間過長、文本可讀性差等等導致用戶體驗不佳的問題,接下來的研究需要進一步考慮性能和用戶體驗之間的權衡問題。

挑戰 4: 由系統問題引發的評估複雜性

構建直接針對應用程式的智慧體可以滿足更多使用者需求,同時也能揭示更多評估挑戰。 但基於 LLM 的應用程式構建會帶來額外的複雜性,使得難以判斷失敗案例是來源於 LLM 應用的限制還是邏輯代碼的不足。 舉例說明,如果說一個使用者因為沒法從介面中直接拖拽上傳檔而造成沒有完成使用者想要的操作而判斷智慧體能力不行是不合理的。 因此,對智慧體設計和操作邏輯的系統進行改進,簡化智慧體流程以及使用者使用邏輯,或者構建一個更加完善的設計和實現邏輯,是有前景且必要的。

未來展望

OpenAgents 可以怎麼樣幫助社區做下一步的研究和開發? 在他們的構想中至少有如下幾點:

未來工作 1: 搭建更多智慧體應用

OpenAgents 打通了一套完整的應用級語言智慧體開發流程以及所需要的技術,並且開放了代碼。 這為其他創新應用與終端使用者提供了可能。 開發者們可以基於此開發任何自己想要的新應用,比如說多模態對話、語音對話、庫級別代碼助手等。

未來工作 2: 工具和元件集成

OpenAgents 致力於探索和解決構建實用級智慧體應用的基本需求,為社區提供了一個強大的基礎,使得社區可以輕鬆地通過集成其他元件進行水平擴展。 同時,還可以擴展更多的基礎模型,比如最近的大型多模態模型,以及適應新的UI設計等。

未來工作 3: 人機交互領域研究

開發者和研究者基於OpenAgents平臺能輕鬆構建基於大語言模型的新智慧體應用程式。 OpenAgents 因此能幫助構建應用程式演示,供人機交互(HCI)研究人員深入研究更直觀、更使用者友好的介面設計。 這將提升用戶的參與度和滿意度。

未來工作 4: 自適應使用者介面生成

自動創建使用者介面是一個有趣且具有挑戰性的領域。 這些介面能根據特定標準,如用戶的設備、偏好或上下文,進行自我調整或定製。 研究人員可以深入研究在基於OpenAgents的自適應UI中,如何應用大語言模型,以及它們對用戶體驗的影響。

未來工作 5: 大語言模型在實際應用場景下的評估

為大語言模型建立公正且穩健的評估方法,對於公平評價其能力和性能至關重要。 目前,通過使用預先收集的數據和受控環境,對智慧體進行基準測試。 雖然這些評估非常關鍵,但它們往往無法全面反映真實世界中的動態挑戰。 鼓勵社區對這些評估指標和平臺進行擴展或完善,這將顯著推動該領域的發展,併為大語言模型的實際性能和能力提供更準確的評估和洞察。

查看原文
此頁面可能包含第三方內容,僅供參考(非陳述或保證),不應被視為 Gate 認可其觀點表述,也不得被視為財務或專業建議。詳見聲明
  • 讚賞
  • 留言
  • 轉發
  • 分享
留言
0/400
暫無留言
交易,隨時隨地
qrCode
掃碼下載 Gate App
社群列表
繁體中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)