OpenAgents:开源版ChatGPT Plus智能体框架
来自香港大学、XLang实验室、Sea AI实验室和Salesforce的研究者联合打造了一款用于真实世界生产力工具的开源智能体框架——OpenAgents,并开源了全栈代码(完整前后端,研究代码),以满足从研究者到开发者再到用户的所有人的需要。
OpenAgents 用基于「大语言模型」(LLMs)的技术和全栈工程代码尝试近似复刻了 ChatGPT Plus 的功能。智能体能执行 Python/SQL 代码,熟练调用工具,也能上网找地图发帖子,一路从研究代码实现到后端前端,让其变成了人人都能用的落地级别应用。OpenAgents 完整披露了他们采用的技术和遇到的困难,完全开源了代码,包含从科研到逻辑代码到前端代码的一切。代码完善、易于拓展,本地直接可以一键部署,配套提供了含有丰富的使用案例的文档,帮助研究者和开发者在模型上搭建自己的智能体和应用。
代码链接:https://github.com/xlang-ai/OpenAgents
论文链接:https://arxiv.org/abs/2310.10634
Demo 链接:https://chat.xlang.ai/
文档链接:https://docs.xlang.ai/
与ChatGPT Plus比较
先来看看「数据分析」功能。同一个分析股票价格的任务,OpenAgents 和 ChatGPT 都能不错地完成用户对股价和交易的分析要求。不过 OpenAgents 可以自动搜索 Kaggle 数据集并下载,ChatGPT 需要用户从本地上传。
再试试 OpenAI 最早推出的「插件」功能。用户想要画一些八面体,两者都成功调用了 Wolfram 插件画出多种八面体的图片。
最后看看「网页浏览」。用户想要查询 10 月 20 日从中国香港到纽约的机票,OpenAgents 识别用户意图后直接跳转到 Skycanner,像 “真人” 一样一边思考一边在网站中填入信息,最后回到聊天页面总结信息;而 ChatGPT 处于安全考虑保证可控性,和调用插件类似,在云端做网页浏览,将最后搜寻到的信息返回。
由于 OpenAgents 提供了开源的代码,开发者和研究者可以定制,若干行代码适配自己想要的模型,改进、创造自己想要的功能,甚至创造新的 Agent。这对于该方向的进一步开展开发和研究至关重要。
与其他智能体框架对比
从表格中可以看出,「界面」(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 提供了一个真实环境,智能体可以满足各种真实的用户需求。