香港大学余涛组推出开源XLANG Agent!支持三种Agent模式

作者 |小戏、ZenMoore

一个新的未来又逐渐开始从理论走向现实走到我们身边了

语言的意义在于使用,而从 ChatGPT 以来这些大规模语言模型的意义,也必然绝不止于 Chat,在四个月前,我们介绍了清华大学关于工具学习的综述《清华发布工具学习框架,让ChatGPT操控地图、股票查询,贾维斯已来?》,探究如何把以 GPT-4 为代表的大模型更好的与现有的专业工具(如专业设备、程序接口、商业软件等等)相互结合,将大模型变为一个贾维斯式的私人管家而非单纯的聊天机器。

而在四个月前 Demo 式的畅想后,最近香港大学余涛老师组(XLANG Lab)在五个月 15 名研究人员全职投入开发后,推出了一个开源的大模型 Agent——XLANG Agent!

大模型研究测试传送门

GPT-4传送门(免墙,可直接测试,遇浏览器警告点高级/继续访问即可):
Hello, GPT4!

在介绍的博客中,XLANG Agent 的作者将大模型 Agent 可以完成的工作理解为这样一个过程“想象一下这个过程,将以日常语言为载体的人类的指示或问题转化为机器可以理解的动作和代码,随后机器在特定的环境中执行这些动作,从而改变该环境的状态。这些变化被观察、分析,并进而启动与人类下一步交互的循环

事实上,这种大模型 Agent 的理念正是科幻作品中那些遵循人类指令执行特定任务的智能体的初级版本。而 XLANG 则充当着自然语言与特定指令(如可执行的代码或特定动作序列)之间的桥梁,其所互动的环境包括却不限于数据库、Web 应用乃至现实的物理世界。在与环境及人类本身相互不断的一轮轮互动之中,大模型 Agent 可以不断集成人们的反馈到其上下文中,以协作 Agnet 精准有效的完成任务并且延申与拓展用户的真实意图。

具体而言,作者团队将大模型 Agent 总结为:

  • 大模型 Agent 的目标在于在具体环境中解决人类面对的问题,如数据分析、房地产服务等,而非一般的聊天机器人;

  • 大模型 Agent 允许用户以自然语言提供反馈,以指导 Agent 更好的探索并完成任务,换言之,大模型 Agent 可以处理多轮的任务而非单轮的简单输入输出;

  • 大模型 Agent 配备了代码、插件以及浏览器等工具增强其能力,而并不仅仅限于大模型本身。

整个 XLANG Agent 的构建基于 LangChain,LangChain 是一种用于构建由大模型驱动应用程序的框架。基于 LangChain 中的 ReAct,作者团队构建 XLANG Agent 通过三个阶段完成任务:

  • 思考阶段:生成推理轨迹,为下一步行动提供支持;

  • 行动阶段:参与同环境的相互作用;

  • 观察阶段:观察环境状态,为下一步决策做好准备。

在 LangChain 的基础上,XLANG Agent 配备了一套全面的工具、搭建了完整的用户界面,重构了信息表示以及 Prompting。区别于 OpenAI 发布的代码解释器及插件,XLANG Agent 的目标在于构建一个开源通用的大模型 Agent 系统及框架,使得人们可以迭代的添加与改进 Agent 的设计与工作逻辑,集成更多工具,推动大模型 Agent 乃至更宏观的 Executable Language Grounding 的发展

目前,XLANG Agent 支持三种不同的 Agent 场景,分别是数据处理、插件使用以及 Web Agent(Robot Agent 即将推出),其中,数据 Agent 可以让用户在选择特定工具后,主动采取行动满足用户需求,譬如让 Agent 首先为自己寻找股票的数据集:

通过点击式的操作,可以将 Agent 找到的数据集加载到界面的 Files 中:

并且通过简单的指令就可以让 Agent 为自己绘制出可交互的图表

并且可以让 Agent 使用类似 ARIMA 这样的模型对数据进行拟合,可以看到 Agent 有可能会拟合失败:

但是“Try it again”,就可以让 Agent 再次尝试并成功搭建好模型

类似的,插件 Agent 可以利用提供的上百个 API 智能的确定当前环境下应该使用的插件,譬如当我前往多伦多时,插件 Agent 会智能的推荐景点、处理货币的换算、提供天气更新、服装建议等等

Web Agent 则会利用 Chrome 扩展程序自动化网站导航,简化浏览并增强信息检索能力,譬如从 IMDb 提取电影评论等等

目前这三个代理都已经上线,作为 XLANG 开源之旅的开始,作者团队表示在未来几个月以及更久的时间里,将会有包括所有框架、模型、演示、代码以及 Benchmark 被发布,XLANG Agent 的主页、代码及文档如下:

博客题目:
Introducing XLang: An Open-Source Framework for Building Language Model Agents via Executable Language Grounding

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/73145.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2021年06月 C/C++(一级)真题解析#中国电子学会#全国青少年软件编程等级考试

第1题:数的输入和输出 输入一个整数和双精度浮点数,先将浮点数保留2位小数输出,然后输出整数。 时间限制:1000 内存限制:65536 输入 一行两个数,分别为整数N(不超过整型范围),双精度浮点数F,以一个空格分开。 输出 一行两个数,分别为保留2位小数输出的F,以及整数N,以…

【数学建模】--主成分分析

本讲将介绍主成分分析(Principal Component Analysis,PCA),主成分分析是一种降维算法,它能将多个指标转换为少数几个主成分,这些主成分是原始变量的线性组合,且彼此之间互不相关,其能…

【Linux的开胃小菜】常用的RPM软件包与YUM仓库包管理器使用

一、系统初始化进程 systemd与System V init的区别以及作用: System V init运行级别systemd目标名称systemd目标作用0poweroff.target关机1rescue.target单用户模式2multi-user.target多用户的文本界面3multi-user.target多用户的文本界面4multi-user.target多用户…

FiboSearch Pro – Ajax Search for WooCommerce 商城AJAX实时搜索插件

FiboSearch Pro是最受欢迎的WooCommerce 产品搜索插件。它为您的用户提供精心设计的高级 AJAX 搜索栏,并提供实时搜索建议。默认情况下,WooCommerce 提供非常简单的搜索解决方案,没有实时产品搜索,甚至没有 SKU 搜索。FiboSearch&…

DAY21

题目一 给定三个字符串str1、str2和aim, 如果aim包含且仅包含来自str1和str2的所有字符,而且在aim中属于str1的字符 之间保持原来在str1中的顺序,属于str2的字符之间保持原来在str2中的顺序,那么称aim是str1和str2的交错组成。实…

三个月从零入门深度学习,保姆级学习路线图!

小伙伴们大家好,这里是长沙图灵教育,我们从2001年开始进入教育行业,立足泛IT类职业教育,以打造新兴高新技术人才为宗旨,致力于成为优质的职业教育内容提供商;于2017年正式成立图灵, 在线教育有限公司。 到…

测试开发探索:“WeTalk“网页聊天室的测试流程与自动化

目录 引言: 测试开发目标: "WeTalk"项目背景 关于登录测试用例的设计 测试开发策略与流程 集成测试:Selenium JUnit 接口测试:Postman 测试用例的设计与实现 自动化测试演示: 用例一:登…

多线程进阶

多线程进阶 本章博客主要是围绕一些多线程相关的面试题,讨论的内容都是往年同学遇到的原题,以后面试也大概率会遇到的!!! 常见的锁策略 锁策略指的不是某个具体的锁,是一个抽象的概念,描述的…

使用cloud-int部署nginx

参考 azure创建虚拟机,创建虚拟机注意入站端口规则开放80端口,高级中使用自定义数据,初始化虚拟机,安装nginx 连接CLI,验证是否安装成功 访问虚拟机IP查看是否部署成功 参考文档: https://learn.microsoft.com/zh-cn…

11款UML/SysML建模工具更新(2023.7)Papyrus、UModel……

DDD领域驱动设计批评文集 欢迎加入“软件方法建模师”群 《软件方法》各章合集 最近一段时间更新的工具有: 工具最新版本:drawio-desktop 21.6.5 更新时间:2023年7月22日 工具简介 开源绘图工具,用Electron编写,…

Skeleton-Aware Networks for Deep Motion Retargeting

Skeleton-Aware Networks for Deep Motion Retargeting解析 摘要1. 简介2. Related Work2.1 运动重定向(Motion Retargeting)2.2 Neural Motion Processing 3. 概述(Overview)4. 骨骼感知深度运动处理4.1 运动表征4.2 骨架卷积4.3…

23、springboot日志使用入门-- SLF4J+Logback 实现(springboot默认的日志实现),日志打印到控制台及日志输出到指定文件

springboot日志使用入门 ★ 典型的Spring Boot日志依赖: spring-boot-start.jar -- spring-boot-starter-logging.jar (Spring Boot的日志包)-- logback(core、classic)-- log4j-to-slf4j.jar-- jul-to-slf4j.jar就是springboo…

IntentService

1. IntentService Android专门提供了一个异步的、自动停止的IntentService类。使用和普通的Service非常像,可以通过startService(Intent)通过Intent来提交请求,完成所有的任务后自己关闭。(请求是在工作线程处理的)好处&#xff…

[足式机器人]Part4 机械设计 Ch00/01 绪论+机器结构组成与连接 ——【课程笔记】

本文仅供学习使用 本文参考: 《机械设计》 王德伦 马雅丽课件与日常作业可登录网址 http://edu.bell-lab.com/manage/#/login,选择观摩登录,查看2023机械设计2。 机械设计-Ch00Ch01——绪论机器结构组成与连接 Ch00-绪论0.1 何为机械设计——…

Redisson实现锁以及redis缓存一致性问题

目录 RedissonClient实现最基本的锁 RedissonClient实现读写锁 RedissonClient实现闭锁 RedissonClient信号量 缓存不一致问题解决方案 一、双写模式 二、失效模式 RedissonClient实现最基本的锁 // 1、获取一把锁,只要锁的名字一样,就是同一把锁R…

redis分布式集群-redis+keepalived+ haproxy

redis分布式集群架构(RedisKeepalivedHaproxy)至少需要3台服务器、6个节点,一台服务器2个节点。 redis分布式集群架构中的每台服务器都使用六个端口来实现多路复用,最终实现主从热备、负载均衡、秒级切换的目标。 redis分布式集…

【EI复现】一种建筑集成光储系统规划运行综合优化方法(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

Beats:使用 Filebeat 将 golang 应用程序记录到 Elasticsearch - 8.x

毫无疑问,日志记录是任何应用程序最重要的方面之一。 当事情出错时(而且确实会出错),我们需要知道发生了什么。 为了实现这一目标,我们可以设置 Filebeat 从我们的 golang 应用程序收集日志,然后将它们发送…

SCSS的基本用法

1、声明变量 $ 声明变量的符号 $ 下面这张图左半部分是scss的语法,右半部分是编译后的css。(整篇文章皆是如此) 2、默认变量 !default sass 的默认变量仅需要在值后面加上 !default 即可。 如果分配给变量的值后面添加了 !default 标志…

Clickhouse基于文件复制写入

背景 目前clickhouse社区对于数据的写入主要基于文件本地表、分布式表方式为主,但缺乏大批量快速写入场景下的数据写入方式,本文提供了一种基于clickhouse local 客户端工具分布式处理hdfs数据表文件,并将clickhouse以文件复制的方式完成写入…