wordpress英文仿站,网站建设清单表格,网页文件打印乱码,网站平台建设费计入什么科目夕小瑶科技说 原创 作者 | 智商掉了一地、ZenMoore
港大的研究团队最近发布了一个新的开源 Agent 框架#xff0c;名为 OpenAgents. 它可以用于实际用户场景#xff0c;特别是在使用自然语言执行复杂任务的情况下。先前的语言智能体框架主要关注概念验证或者供开发人员使用名为 OpenAgents. 它可以用于实际用户场景特别是在使用自然语言执行复杂任务的情况下。先前的语言智能体框架主要关注概念验证或者供开发人员使用而 OpenAgents 则更注重非专家用户的使用体验和应用设计。它提供了一个开放的平台让更多人可以在日常生活中使用和部署语言智能体。
这个平台包括数据智能体、插件智能体和 Web 智能体用户可以通过一个优化的 Web 界面与智能体进行交互。
论文题目:OpenAgents: An Open Platform For Languageagents In The Wild
论文链接:https://arxiv.org/abs/2310.10634
项目地址:https://github.com/xlang-ai/OpenAgents
Demo 地址:https://chat.xlang.ai/ 文章速览
目前OpenAgents 平台主要包括 3 个智能体 数据智能体使用 Python、SQL 和其他数据工具进行数据分析 插件智能体配备了 200 多种日常 API 工具 Web智能体可以自主浏览网页。
OpenAgents 通过一个针对快速响应和常见故障进行优化的 Web 用户界面让普通用户可以与智能体的功能进行交互。
同时它也为开发人员和研究人员提供了在本地环境中无缝部署的体验为创新的语言智能体的构建和实际评估提供了基础。
为充分发挥 LLM 的潜力需要从纯理论或以开发者为中心的工具转变为面向各种用户的动态互动系统成为一个现实且全面的人机协同智能体评估平台。在该平台上用户根据实际需求与智能体互动来完成任务。整个人机互动过程和用户反馈都会被记录下来以便进一步评估。
如图1所示OpenAgents 能够实现 面向普通用户通过在线 Web 界面与智能体交互无需任何编程知识。 面向开发人员利用代码轻松部署前端和后端进行进一步开发。 面向研究人员根据示例和共享组件构建新的语言智能体或相关方法并通过 Web 界面查看其性能。 ▲图1OpenAgents 平台面向普通用户、开发人员和研究人员旨在成为简单、多功能的平台用于使用、开发和评估语言智能体
语言智能体的比较
关于语言智能体目前已经建立了许多框架和代码库表 1 展示了这些框架和代码库的总体比较。 一部分构建了概念验证和引人注目的原型实现。这些原型主要是通过提示 LLM然后在特定情况下展示出惊人的结果。基于这些原型又有人提出了一些改进和更新的概念框架。 另一部分则强调对语言智能体的评估。这些评估通常在完全模拟的环境中进行比如自托管的网页。也有在半真实环境中进行的比如利用真实工具 API 调用。当然也有同时使用两种环境的。 还有一些专注于研究多智能体及其行为。 ▲表1OpenAgents 与其他关于构建原型和基准的工作在智能体概念上的比较
OpenAgents 设计与实现
系统设计
如图 2 所示OpenAgents 架构主要包含两部分 用户界面这是用户与智能体交流和管理后端操作的平台 语言智能体它由语言模型、工具和环境组成推动智能体做出决策。
OpenAgents 提供了方便用户和智能体进行交流的接口。通常交互流程从用户需求出发通过用户界面进行最后由语言智能体利用各种组件执行特定操作。当智能体接收到用户的指令后会利用工具在环境中进行规划和行动。 ▲图2OpenAgents 架构的系统概述
用户界面
作者计划打造一个既用户友好又功能强大的用户界面。使其解决许多可高度复用的业务逻辑问题以便使用和托管智能体为后端服务器操作、错误处理、数据流传输等各种技术方面提供强大的支持。
语言智能体
这里有 3 个关键组件语言模型、工具界面和环境当前采用了 ReAct 中介绍的方法作为提示方法。
在每次交互中智能体通常按照观察、思考、行动的顺序进行操作。 语言模型会生成易于解析的文本。 工具界面包含解释器它可以将这些文本转换为可执行操作例如生成代码或发起 API 调用。 这些操作之后会在相应的环境中执行。
实现中的挑战
对于用户界面的实现有以下挑战和解决方案 自适应数据映射 引入数据模型的概念借鉴数据库术语以有效地将各种原始数据类型如文本、代码、图像和表格转换成适合人类阅读、适合 LLM 上下文以及适合持久存储的格式。这提高了系统组件与外部实体之间的通信流畅性。 战略性数据存储 采用了一种适应 OpenAgents 多用户特性的数据存储策略。 以用户为中心的界面 设计了一个自适应用户界面以减小用户与系统之间的交互差距。其能适应各种操作环境展示丰富的媒体和交互内容提高用户的参与度和任务效率。 实时回复流 采用流式处理方法以减少接收长文本补全时的延迟。通过流式 API 和推动自动机实现了生成标记的实时解析和渲染提高了用户反馈的即时性。 系统的稳健性 强调提升智能体的稳健性处理了有效的故障及时的回复生成以及标记溢出管理等问题以确保系统在各种真实场景下可靠运行。 通过 Chrome 扩展程序控制浏览器 开发了一个 Chrome 扩展程序使 Web 智能体能够直接控制浏览器。这种设置实现了实时监控和干预用户在 Web 交互过程中的操作增强用户对系统的控制和信任。
对于语言智能体作者提供了以下挑战的解决方案 数据接地 系统允许用户上传文件这些文件需要智能体进行编程处理。为了有效存储这些用户上传的数据建立了一个接地源池。通过使用 DataModel每种文件类型被线性化并以其名称进行索引使得智能体能够按照用户的指示检索和使用文件内容。 自动工具选择 以往用户需要手动选择插件来执行命令如 OpenAI 插件。为了解决手动选择插件的困难系统集成了一个名为“自动选择”的功能。该功能可根据用户的指示自动检测最相关的工具从而简化了整个过程。 自动工具扩展 虽然创建工具在 LLM 基础设施中使用智能体方面存在独特挑战但他们从平台如 RapidAPI 和 OpenAI 插件商店获取了API提供者的信息。这一方法能产生 200 多个高质量的插件尽管偶尔需要人工监督。系统还需要进一步探索以实现高效的扩展。 可执行环境 将语言模型的输出转化为特定上下文中的可执行任务。构建一个应用级的、多用户的可执行环境需要考虑到安全性、稳健性和功能性的挑战。成功实现了针对代码执行、API 交互和网页导航的沙盒环境。这些环境作为智能体的全面测试平台方便代码生成、插件交互和网页操作等任务。
开放式智能体
如文章开头所述OpenAgents 有三种特殊的智能体。它们在各自领域都是专家类似于 OpenAI 的 ChatGPT 插件它们的实现依赖于开放语言 API也可以使用其他开源的 LLM如 GPT-4 和 Claude。
数据智能体
该智能体可以处理用户日常遇到的各种数据相关任务支持在 Python 和 SQL 两种编程语言中生成和执行代码。
作者还为智能体集成了几种数据工具包括 Kaggle 数据搜索通过 API 在 Kaggle 上搜索数据集 数据概要提供基本数据信息 ECharts 工具用于交互式绘图。
Python、SQL 和 ECharts 等工具将生成代码这样可以充分利用语言模型的编程能力同时减轻智能体的负担。
它不仅限于生成文本和代码还能熟练地进行数据查询、可视化和操作等任务。
图 3 给出了一个示例用户可以上传自定义文件比如表格和图片然后对上传的数据进行连续查询。 ▲图3数据智能体的流程图左和演示中和右
插件智能体
该智能体满足用户在购物、搜索、阅读新闻、预测天气和创建网站等日常任务中的多样化需求。为此作者整合了来自各方的 200 多个插件。其中一些知名的插件包括Google搜索、Wolfram Alpha、Zapier、Klarna、Coursera、Show Me、Speak、AskYourPDF、BizToc 和 Klook。
作者特别关注了 API 的响应时间、函数调用接口以及 API 的响应长度以便让基于 LLM 的智能体能最大限度地利用这些插件。
用户可根据自己的需求选择一个或多个插件以便让他们的智能体使用。具体示例参见图 4。这里添加了一个功能可以根据用户的指示自动选择最相关的插件。 ▲图4插件智能体的流程图左和演示中和右
Web 智能体
Web 智能体是一种专门用来提升聊天智能体能力的工具。如图 5 所示聊天智能体仍然是主要的交互界面但会无缝地调用 Web 智能体。然后Web 智能体会把最后的回复交给用户。 ▲图5Web智能体的流程图左和演示中间和右侧
其优势在于聊天智能体会在将用户查询或起始 URL 交给 Web 智能体之前对重要参数进行系统处理可确保与用户意图的高度一致性从而促进更清晰的沟通。
当处理模糊或有多个方面的复杂任务时聊天智能体会采用分解的方法用户的总体指令被分割成更易理解的子任务。聊天智能体接着使用这些子指令按顺序与 Web 智能体交互以确保更精细和高效的问题解决。
此外配置支持多轮网络导航与聊天对话的动态交互从而适应更多层次和可调整的用户查询。这里明确划分了 Web 智能体和聊天智能体的角色和职责为每个模块的独立发展和持续改进铺平了道路。
实际部署中的关键挑战
将 LLM 转化为面向现实世界的应用的挑战——通过提示
在为真实用户构建基于 LLM 提示的应用程序时使用提示中的指令来设定特定要求。这些指令有不同目的 为了确保 LLM 的输出符合我们后端逻辑处理的特定格式以特定键的字典形式输出 旨在提升输出的美观度尽可能单独列出项目 用于防止潜在的攻击拒绝用户恶意构造的无限循环程序
它们的累积通常会产生几百个 token对 LLM 的指令跟踪能力和支持的上下文长度提出要求。
而当前的开源模型在这些方面已经取得了显著的改进。此外需要更加重视智能体模型的基础开发和研究以及针对特定领域和要求训练专用的智能体模型。这种方法可能比仅依赖于提示一个通用强大但固定模型更有效也更可控。
无法控制的现实因素
这些因素包括用户行为、互联网基础设施和业务逻辑等它们在过去的研究中并未得到充分建模。这就需要重新评估甚至推翻许多过去研究中的假设和方法。
必须考虑到调用的 API 所在的服务器可能会崩溃。这种情况需要监控并稳定地完成用户命令而不是像过去的工具使用研究中所假设的那样。
在生成回复的过程中用户可能会感到不满意这可能导致语言模型在生成过程中被中断。此外像 CAPTCHA 弹出或广告改变网页这样的不可预测事件可能会在相对稳定的网页结构中引入一定程度的随机性。这在以前的自动浏览网页的工作中未曾考虑过。
来自真实场景的额外指标
研究通常过于强调性能指标而忽视了现实场景中的基本需求。例如让用户能够快速感知系统的反馈而无需等待长篇大论的文本生成。特意设计的提示可以让智能体的回复格式更加美观这对用户体验有着显著影响。
然而现有的方法并未充分考虑这些影响。尽管在准确性上的性能指标优秀但在实际应用中它们可能导致响应时间过长用户体验不佳。此外还需要考虑性能和用户体验之间的权衡问题。
评估由系统问题引起的复杂性
构建直接针对应用程序的智能体可以满足更多用户需求同时也能揭示更多评估挑战。但基于 LLM 的应用程序构建会带来额外的复杂性使得难以判断失败案例是来源于 LLM 应用的限制还是逻辑代码的不足。
因此对智能体设计和操作逻辑的系统进行改进简化流程是有前景且必要的。
未来方向
智能体应用OpenAgents 构建了一套完整的应用级语言智能体开发流程。这为其他创新应用与终端用户提供了可能。这些应用不仅各具优势还共同营造了一个更丰富、更以用户为中心的智能体应用环境。
工具和组件集成OpenAgents 致力于探索和解决构建实用级智能体应用的基本需求。这为社区提供了一个强大的基础使得社区可以轻松地通过集成其他组件进行水平扩展。同时还可以扩展更多的基础模型比如最近的大型多模态模型以及适应新的UI设计等。
人机交互我们的平台能轻松构建基于 LLM 的新智能体应用程序。我们相信OpenAgents因此能帮助构建应用程序演示供人机交互HCI研究人员深入研究更直观、更用户友好的界面设计。这将提升用户的参与度和满意度。
LLM 的实际环境评估为 LLM 建立公正且稳健的评估方法对于公平评价其能力和性能至关重要。目前通过使用预先收集的数据和受控环境对智能体进行基准测试。虽然这些评估非常关键但它们往往无法全面反映真实世界中的动态挑战。鼓励社区对这些评估指标和平台进行扩展或完善这将显著推动该领域的发展并为 LLM 的实际性能和能力提供更准确的洞察。
自适应用户界面生成自动创建用户界面是一个有趣且具有挑战性的领域。这些界面能根据特定标准如用户的设备、偏好或上下文进行自我调整或定制。研究人员可以深入研究在基于 OpenAgents 的自适应UI中如何应用 LLM以及它们对用户体验的影响。
结论
近期来自港大的研究团队在这项工作中推出了 OpenAgents——一个开源平台旨在将 LLM 的最新进展与实际的用户导向应用相融合。OpenAgents 已为数据分析、工具使用和网页浏览这三种典型应用构建了智能体。
作者在开发 OpenAgents 的过程中遇到了许多构建实际应用的独特挑战。这些挑战让我们看到了从理论设计到满足实际用户需求和交互的全功能智能体的转变究竟有多复杂。
他们提供了一个全面、透明且可部署的平台不仅为了让更多的人包括开发人员和普通用户能利用 LLM 的强大能力也希望通过接触真实场景来推动研究使社区能够利用和完善最先进的语言智能体的能力。
让我们拭目以待期待着 OpenAgents 能够激发更多的应用和平台简化人类与智能语言智能体之间的交互希望这项研究能够为未来语言智能体的研究和开发奠定基础能够引领强大的现实世界语言智能体的普及化~