#斯坦福系创企「炒作」AgentQ
直爆料OpenAI「草莓」的账号,竟然是个智能体?
当炒作出了「泼天的流量」,已经没人关心产品厉不厉害了。
最近,OpenAI 的秘密项目「Q*」一直受到了圈内人士的广泛关注。上个月,以它为前身、代号为「草莓(Strawberry)」的项目又被曝光了。据推测,该项目能够提供高级推理能力。
最近几天,关于这个项目,网络上又来了几波「鸽死人不偿命」的传播。尤其是一个「草莓哥」的账号,不间断地宣传,给人期望又让人失望。
没想到,这个 Sam Altman 出现在哪里,它就在哪里跟帖的「营销号」,皮下竟然是个智能体?
今天,一家 AI 智能体初创公司「MultiOn」的创始人直接出来认领:虽然没等来 OpenAI 发布「Q*」,但我们发了操控「草莓哥」账号的全新智能体 Agent Q,快来和我们在线玩耍吧!
MultiOn 联合创始人兼 CEO Div Garg,他在斯坦福读计算机科学博士期间休学创业。
这波看起来让 OpenAI 给自己做嫁衣的营销操作给大家都看懵了。毕竟,最近很多人彻夜未眠等待 OpenAI 的「大新闻」。这要追溯到 Sam Altman 和「草莓哥」的互动,在 Sam Altman 晒出的草莓照片下,他回复了「草莓哥」:惊喜马上就来。
不过,「MultiOn」的创始人 Div Garg 已经把认领 Agent Q 就是「草莓哥」的帖子悄悄删了。
此次,「MultiOn」宣称,他们发布的 Agent Q 是一款突破性的 AI 智能体。它的训练方法结合了蒙特卡洛树搜索(MCTS)和自我批评,并且通过一种叫做直接偏好优化(DPO)的算法来学习人类的反馈。
与此同时,作为拥有规划和 AI 自我修复功能的下一代 AI 智能体,Agent Q 的性能是 LLama 3 基线零样本性能的 3.4 倍。同时,在真实场景任务的评估中,Agent Q 的成功率达到了 95.4%。
Agent Q 能做什么呢?我们先来看一下官方 Demo。
它能够为你预定某个时间某家餐厅的座位。
然后为你执行网页操作,比如查询空位情况。最终成功预定。
此外还能预定航班(比如本周六从纽约飞往旧金山,单程、靠窗和经济舱)。
不过,网友似乎对 Agent Q 并不买账。大家关心更多的还是他们是否真的借「草莓哥」账号炒作的事情,甚至有些人称他们为无耻的骗子。
重要组件和方法概览
目前,Agent Q 的相关论文已经放出,由 MultiOn 和斯坦福大学的研究者联合撰写。这项研究的成果将在今年晚些时候向开发人员和使用 MultiOn 的普通用户开放。
- 论文地址:https://multion-research.s3.us-east-2.amazonaws.com/AgentQ.pdf
总结一波:Agent Q 能够自主地在网页上实施规划并自我纠错,从成功和失败的经验中学习,提高它在复杂任务中的表现。最终,该智能体可以更好地规划如何在互联网上冲浪,以适应现实世界的复杂情况。
在技术细节上, Agent Q 的主要组件包括如下:
使用 MCTS(Monte Carlo Tree Search,蒙特卡洛树搜索)进行引导式搜索:该技术通过探索不同的操作和网页来自主生成数据,以平衡探索和利用。MCTS 使用高采样温度和多样化提示来扩展操作空间,确保多样化和最佳的轨迹集合。
AI 自我批评:在每个步骤中,基于 AI 的自我批评都会提供有价值的反馈,从而完善智能体的决策过程。这一步骤级反馈对于长期任务至关重要,因为稀疏信号通常会导致学习困难。
直接偏好优化(DPO):该算法通过从 MCTS 生成的数据构建偏好对以微调模型。这种离策略训练方法允许模型从聚合数据集(包括搜索过程中探索的次优分支)中有效地学习,从而提高复杂环境中的成功率。
下面重点讲一下网页(Web-Page)端的 MCTS 算法。研究者探索了如何通过 MCTS 赋予智能体额外的搜索能力。
在以往的工作中,MCTS 算法通常由四个阶段组成:选择、扩展、模拟和反向传播,每个阶段在平衡探索与利用、迭代细化策略方面都发挥着关键作用。
研究者将网页智能体执行公式化为网页树搜索,其中状态由智能体历史和当前网页的 DOM 树组成。与国际象棋或围棋等棋盘游戏不同,研究者使用的复杂网络智能体操作空间是开放格式且可变的。
研究者将基础模型用作操作建议(action-proposal)分布,并在每个节点(网页)上采样固定数量的可能操作。一旦在浏览器中选择并执行一个操作,则会遍历下个网页,并且该网页与更新的历史记录共同成为新节点。
研究者对反馈模型进行多次迭代查询,每次从列表中删除从上一次迭代中选择的最佳操作,直到对所有操作进行完整排序。下图 4 为完整的 AI 反馈过程。
扩展和回溯。研究者在浏览器环境中选择并执行一个操作以到达一个新节点(页面)。从选定的状态节点轨迹开始,他们使用当前策略 𝜋_𝜃 展开轨迹,直到到达终止状态。环境在轨迹结束时返回奖励 𝑅,其中如果智能体成功则 𝑅 = 1,否则 𝑅 = 0。接下来,通过从叶节点到根节点自下而上地更新每个节点的值来反向传播此奖励,如下所示:
下图 3 展示了所有结果和基线。当让智能体在测试时能够搜索信息时,即为基础 xLAM-v0.1-r 模型应用 MCTS 时,成功率从 28.6% 提升到了 48.4%,接近平均人类表现的 50.0%,并且显著超过了仅通过结果监督训练的零样本 DPO 模型的性能。
研究者进一步根据下图中概述的算法对基础模型进行了微调,结果比基础 DPO 模型提高了 0.9%。在精心训练的 Agent Q 模型上再应用 MCTS,智能体的性能提升到了 50.5%,略微超过了人类的平均表现。
他们认为,即使智能体经过了大量的强化学习训练,在测试时具备搜索能力仍然是一个重要的范式转变。与没有经过训练的零样本智能体相比,这是一个显著的进步。
此外,尽管密集级监督比纯粹的基于结果的监督有所改善,但在 WebShop 环境中,这种训练方法的提升效果并不大。这是因为在这个环境里,智能体只需要做很短的决策路径,可以通过结果来学习信用分配。
评估结果
研究者选择了让智能体在 OpenTable 官网上预订餐厅的任务来测试 Agent Q 框架在真实世界的表现如何。要完成这个订餐任务,智能体必须在 OpenTable 网站上找到餐厅的页面,选择特定的日期和时间,并挑选符合用户偏好的座位,最后提交用户的联系方式,才能预定成功。
最初,他们对 xLAM-v0.1-r 模型进行了实验,但该模型表现不佳,初始成功率仅为 0.0%。因此,他们转而使用 LLaMa 70B Instruct 模型,取得了一些初步的成功。
不过由于 OpenTable 是一个实时环境,很难通过编程或自动化的方式进行测量和评估。因此,研究者使用 GPT-4-V 根据以下指标为每个轨迹收集奖励:(1) 日期和时间设置正确,(2) 聚会规模设置正确,(3) 用户信息输入正确,以及 (4) 点击完成预订。如果满足上述所有条件,则视为智能体完成了任务。结果监督设置如下图 5 所示。
而 Agent Q 将 LLaMa-3 模型的零样本成功率从 18.6% 大幅提高到了 81.7%,这个结果仅在单日自主数据收集后便实现了,相当于成功率激增了 340%。在引入在线搜索功能后,成功率更是攀升至 95.4%。
更多技术细节和评估结果请参阅原论文
参考链接:https://www.multion.ai/blog/introducing-agent-q-research-breakthrough-for-the-next-generation-of-ai-agents-with-planning-and-self-healing-capabilities
#谷歌版GPT-4o和AI手机全上市了
Gemini Live 对标 GPT-4o,谷歌 AI 手机全家桶上线。
在 GPT-4o 进 iPhone 之前,谷歌 Gemini 抢先了一步完成了手机版的落地。
周三凌晨,在人们期待 OpenAI 「草莓大模型」的时候,谷歌在 Made by Google 活动上正式发布了 Gemini Live,以及一系列 Pixel 硬件产品。
今天的活动,谷歌充满信心地进行了 100% 现场演示,虽然出现了一些小问题。
两次让手机识图(不过用的是三星),都失败了。
不过正如谷歌所说的,我们已经进入了「Gemini 的时代」。
在 Pixel 9 系列之后,今天发布的一系列 Gemini AI 功能也将随安卓 15 出现在各种 Android 手机上。
Gemini Live:对标 GPT-4o,即刻上线
Gemini Live 是谷歌针对 OpenAI 高级语音模式推出的一款产品,该功能与 ChatGPT 几乎完全相同,之前一直处于 alpha 测试阶段。
Gemini Live 提供了一种移动对话体验,可以让用户和 Gemini 展开自由流畅的对话,甚至可以像在普通电话中一样打断或改变话题,而无需打字。
谷歌在博客中这样描述:你可以与 Gemini Live (通过 Gemini app)交谈,并从 10 种新的自然声音中选择一种来回应,(而 OpenAI 仅提供 3 种声音)。你甚至可以按照自己的节奏说话,或者在回答过程中打断它并提出其他问题,就像在平时对话中一样。
Gemini Live 是可以直接唤醒的,你可以在应用程序在后台运行或手机锁屏时继续与 Gemini 对话,且对话可以随时暂停和恢复。
Gemini Live 还将与多种安卓应用的功能(如 Keep)集成,从而提高 Gemini 的可用性。
今日起,谷歌开始在 Android 手机的 Gemini Advanced 用户推出该功能,仅限英语,并将在未来几周内扩展到 iOS 和更多语言版本。
不过,在现场演示中,当现场人员问到演唱会海报的相关信息时,Gemini Live 失败了两次,需要演示者更换手机才能正常工作。虽然演示过程中遇到了一些问题,但最终成功了,Gemini Live 最终从图片中提取相关信息并连接日历,为用户提供了准确结果。3
值得注意的是,据产品经理 Leland Rechis 介绍,谷歌不允许 Gemini Live 模仿这 10 种声音以外的任何声音。谷歌这样做可能是为了避免与版权法发生冲突。此前,OpenAI 就因为使用了 寡姐的声音而被后者告到法庭。
总体而言,该功能似乎是一种比使用简单的 Google 搜索更自然地深入研究主题的好方法。谷歌指出,Gemini Live 是 Project Astra 迈出的一步,Project Astra 是该公司在 Google I/O 期间首次亮相的多模态 AI 模型。目前,Gemini Live 仅支持语音对话,谷歌希望在未来增加实时视频理解功能。
𝗧𝗲𝗻𝘀𝗼𝗿 𝗚𝟰芯片加持,谷歌硬件全家桶来了
在 Gemini Live 推出的同时,谷歌也推出了新一代智能硬件设备,比苹果和华为更早。
今天凌晨新发布的硬件包括 Pixel 9、Pixel 9 Pro 和 Pixel 9 Pro XL,还有一款折叠屏手机 Pixel 9 Pro Fold,它们均由全新的 Google Tensor G4 芯片提供支持,可以带来各种生成式 AI 能力。
Pixel 9 手机采用全新外观,将摄像头置于正面和中心位置,改进了标志性的摄像头模组,提升了手感。谷歌宣称,这些手机的耐用性是 Pixel 8 的两倍。
这一次,Pixel Pro 机型首次提供两种不同尺寸:Pixel 9 Pro(6.3 英寸)和 Pixel 9 Pro XL(6.8 英寸),均配备了 Super Actua 显示屏、42 MP 前置摄像头。除了显示屏尺寸、充电速度和电池外,Pixel 9 Pro 和 Pixel 9 Pro XL 拥有相同的规格和功能。
值得注意的是,Pixel 9 手机采用谷歌全新的定制芯片 Tensor G4。这是全新一代高性能手机芯片,旨在改善日常用例,例如更快地打开应用程序、浏览网页等等。
Tensor G4 由 Google DeepMind 设计,三星代工生产,使用 Arm 架构。经过优化,G4 可运行最先进的人工智能模型。它将是第一款运行多模态 Gemini Nano 模型的处理器 —— 仅在手机端侧,就可以实现大模型理解文本、图像和音频等任务。
从目前的消息可知,Tensor G4 与前代产品相同,使用的核心是当前一代的技术 —— 这意味着它很快会在 9 月份成为落后的芯片组,名为 Mali 的静态 GPU 核心也意味着不支持光线追踪(支持的版本名为 Immortalis)。尽管如此,自己和自己比,相对前一代产品的性能提升还是很可观的。
当然,作为 DeepMind 参与研发的芯片,Tensor G4 拥有不错的 AI 算力,谷歌透露它拥有「业界领先」的每秒 45 token 输出速度。
为了确保设备上的 AI 体验运行顺畅,谷歌也升级了 Pixel 9 系列的内存,它们配备 12GB RAM,Pixel 9 Pro 和 Pixel 9 Pro XL 配备 16GB RAM。
Pixel 系列一直是谷歌技术应用的标杆,新的手机接入了 Gemini Live,且将在 8 月开卖。谷歌表示,Pixel 9 Pro、Pixel 9 Pro XL 和 Pixel 9 Pro Fold 用户在购买手机后均可享受一年的 Gemini Advanced 订阅。看来相比搭载 OpenAI 大模型的 iPhone 16 系列,谷歌这次做到了快人一步。
谷歌介绍了 Pixel 的一系列生成式 AI 能力。
其中,Pixel Studio 可以帮助你在手机上就能将想法转化为图像。它由运行在 Tensor G4 上的设备端扩散模型和云端的 Imagen 3 文本到图像模型相结合而成。
谷歌的文生图新模型 Imagen 3 最早是在 5 月份的 I/O 大会上发布的。该模型在生成细节、光照、干扰等方面进行了优化升级,并且理解 Prompt 的能力显著增强。随着今天的发布会,Google DeepMind 在 arXiv 上提交了 Imagen 3 的论文:
- 论文链接:https://arxiv.org/abs/2408.07009
Pixel Screenshots 可帮助你保存、整理和回忆想要记住的重要信息,以供日后使用。
假设你有朋友喜欢松鼠,她即将过生日。你可以在 Google Chrome 上寻找礼物,截取松鼠衬衫、松鼠杯垫等所有松鼠相关的东西的屏幕截图。Pixel Screenshots 将分析所有这些图像的内容,并帮你在应用中搜索这些信息。随后,你只需打开应用并搜索「松鼠」,这些结果就会弹出。它还会包含你找到的所有内容的链接,以及正在查看的内容的摘要和相关信息。
人们在手机上最常做的事情之一就是查看天气。Pixel Weather 可以提供更加精确的天气信息,Gemini Nano 还会生成自定义人工智能天气报告,让人们了解当天的天气情况。
在所有手机都卷的拍照上,Pixel 9 增加了 AI 拍摄功能来提升出片效率。
通常,集体照中会遗漏一位指定摄影师。使用 Add Me,你就可以与在场的每个人合影,而无需携带三脚架或向陌生人寻求帮助。
利用重新设计的 Panorama,现在即使在弱光下也能拍摄出细节丰富的照片。这是所有智能手机上质量最高的弱光全景图。
此外,Google Photos 中的 Magic Editor 具有新的编辑功能,你可以拍摄出想要的照片,自动取景功能可以重新构图,你只需输入想要看到的内容(例如:在空旷的田野中添加野花)即可以给照片重新构图,把想法变为现实。
大模型的智能通话记录现在也被集成在了安卓系统重。Clear Calling 功能进一步提高了音频质量,新的通话记录(Call Notes)功能会在用户挂断电话后立即发送私人摘要和完整的通话记录。因此,当你接到回电时,无需手忙脚乱地寻找纸笔进行记录。为了保护隐私,通话记录完全在设备上运行。
最新的 Pixel 9 设备是首批配备全新卫星 SOS 功能的 Android 手机,因此,即使没有移动网络,用户也可以通过卫星联系紧急救援人员并分享位置。卫星 SOS 将首先在美国的 Pixel 9 设备上推出,无论你使用的运营商套餐是什么。在 Pixel 上的前两年,此功能将免费提供。
最后是定价,Pixel 9、Pixel 9 Pro 和 Pixel 9 Pro XL 均已开放预订,起价分别为 799 美元、999 美元和 1099 美元。Pixel 9 和 Pixel 9 Pro XL 将于 8 月 22 日在 Google 商店和谷歌零售合作伙伴上市。Pixel 9 Pro 将于 9 月 4 日在美国上市,同时 Pixel 9 Pro Fold 也将在接下来的几周内在其他市场上市。
参考内容:
https://blog.google/products/pixel/google-pixel-9-pro-xl/
https://www.androidauthority.com/google-tensor-g4-explained-3466184/
#SWE-bench Verified
OpenAI「草莓」模型再次跳票,凌晨发布的SWE-bench Verified是个啥?
有人说,「我们期待的是草莓,但他们发布的是羽衣甘蓝。」我们来看看这个「羽衣甘蓝」是做什么用的。
一直以来,大模型的编程能力都备受关注,超强 AI 程序员 Devin 的问世更是将「AI 能否替代程序员」这一话题推上了风口浪尖。最近,Devin 也迎来了新对手 —— 初创公司 Cosine 推出的自主 AI 程序员 Genie。该公司表示,Genie 的表现轻松超越了 Devin,在第三方基准测试 SWE-bench 上的得分为 30%,而 Devin 的得分仅为 13.8%。
这个 SWE-Bench 是一个用于评估 LLM 解决 GitHub 上真实软件问题能力的基准测试数据集。它收集了来自 12 个流行的 Python 仓库的 2,294 个 Issue-Pull Request 对。在测试时,LLM 会拿到一个代码库和 issue 描述,然后生成一个补丁来解决 issue 描述的问题。这个数据集在 AI 编程能力的评估中已被广泛使用。
在 AI 编程能力进化的同时,这个基准也在进化。今天凌晨,网传的 OpenAI「草莓」模型再次跳票,但 OpenAI 确实发布了新东西,就是 SWE-Bench 的改进版本 ——SWE-bench Verified。
OpenAI 指出,原始的 SWE-bench 存在一些问题,可能导致模型的自主软件工程能力被低估。因此,在改进过程中,他们与 SWE-Bench 原作者合作,进行了人工筛选和改进,确保单元测试的范围适当且问题描述明确。
在 SWE-bench Verified 上进行的新测试中,很多 AI 编程智能体的得分都比原来要高。其中,UIUC 的无 Agent 方案 Agentless 甚至实现了得分翻倍,OpenAI 认为,这证明之前的基准确实存在低估 AI 编程能力的缺陷。
但对于蹲守「草莓」的全世界网友来说,这个发布还是过于敷衍了。有人说,「我们期待的是草莓,但他们发布的是羽衣甘蓝。」
关于 SWE-bench 的背景知识
SWE-bench 测试集中的每个示例都是根据 GitHub 上 12 个开源 Python 代码库中一个已解决的 GitHub issue 创建的。每个样本都有一个相关的拉取请求(PR),其中包括解决方案代码和用于验证代码正确性的单元测试。这些单元测试被称为 FAIL_TO_PASS 测试,因为在 PR 中的解决方案代码添加之前它们会失败,添加之后则会通过。每个样本还包括 PASS_TO_PASS 测试,这些测试在 PR 合并前后都会通过,用于检查 PR 是否破坏了代码库中与问题无关的其他功能。
在 SWE-bench 中,AI 智能体会获得来自 GitHub issue 的原始文本,即问题陈述,并可以访问代码库。给定这些信息,智能体必须编辑代码库中的文件以解决问题。
AI 智能体给出的编辑将通过运行 FAIL_TO_PASS 和 PASS_TO_PASS 测试来评估。如果 FAIL_TO_PASS 测试通过,这意味着编辑解决了问题。如果 PASS_TO_PASS 测试通过,则意味着编辑没有破坏代码库中无关的部分。要完全解决原始的 GitHub 问题,两组测试都必须通过。
提高 SWE-bench 稳健性、可靠性的三个改进方向
为了提高 SWE-bench 的稳健性和可靠性。开发团队确定了三个主要的改进方向:
- 用于评估解决方案正确性的单元测试通常过于具体,有时甚至与问题无关。这可能导致正确的解决方案被拒绝。
- 许多样本的问题描述不够明确,导致对问题是什么以及应该如何解决存在歧义。
- 有时很难为智能体可靠地设置 SWE-bench 开发环境,这会无意中导致单元测试失败,而不管解决方案如何。在这种情况下,完全有效的解决方案可能被评为不正确。
SWE-bench Verified
为了解决这些问题,OpenAI 启动了一项由专业软件开发人员进行的人工注释活动,对 SWE-bench 测试集中的每个样本进行了筛查,以确保单元测试的范围适当,问题描述清晰明确。
他们与 SWE-bench 的作者们一起发布了 SWE-bench Verified:这是 SWE-bench 原始测试集的一个子集,包含 500 个样本,这些样本已经通过了人工注释者的验证。这个版本取代了原来的 SWE-bench 和 SWE-bench Lite 测试集。此外,他们还在发布所有 SWE-bench 测试样本的人工注释。
他们还与 SWE-bench 的作者合作,为 SWE-bench 开发了一个新的评估工具,该工具使用容器化的 Docker 环境,使在 SWE-bench 上进行的评估变得更容易、更可靠。
- 工具地址:https://github.com/princeton-nlp/SWE-bench/tree/main/docs/20240627_docker
改进方法
OpenAI 与 93 位具有 Python 经验的软件开发人员合作,手动筛选 SWE-bench 样本,并对 SWE-bench 测试集中的 1699 个随机样本进行了注释,最终得到 SWE-bench Verified。
他们的方法是对 SWE-bench 测试集中的样本进行注释,以确保测试的公平性和准确性。具体来说,他们关注两个关键点:首先,评估问题描述是否足够详细,以防过于模糊的描述导致测试不公平;其次,检查 FAIL_TO_PASS 单元测试是否会错误地筛选掉有效的解决方案。
每个注释标准都有一个标签,范围为 [0, 1, 2, 3],严重程度逐渐增加。标签 0 和 1 是次要的;标签 2 和 3 是严重的,表明样本在某些方面不充分,应该被丢弃。
此外,假设样本没有问题,OpenAI 会通过让注释者估计开发人员决定和实施解决方案需要多长时间来评估每个样本的难度。最后,OpenAI 提供了一个自由格式输入选项来标记样本的任何其他主要问题。
为了构建 SWE-bench Verified,OpenAI 从原始测试集中过滤掉问题陈述或 FAIL_TO_PASS 单元测试严重性为 2 或以上的任何样本,并且还过滤掉所有标记有其他严重问题的样本。
注释结果
按照新的标准,原始 SWE-bench 中的样本有很大一部分是不合格的。如图所示,38.3% 的样本因为问题陈述不够明确而被标记,61.1% 的样本因为单元测试可能会不公平地将有效的解决方案错误地标记为不正确而被标记(严重程度 2、3 两级加起来)。总体而言,他们的注释过程导致 68.3% 的 SWE-bench 样本因问题陈述不明确、单元测试不公平或其他问题而被过滤掉。
下图比较了原始 SWE-bench 数据集和新 SWE-bench Verified 数据集的难度分布。他们根据 1699 个样本的随机子集估算 SWE-bench 的难度分布。
从图上可以看出,在原始的 SWE-bench 数据集中,大多数(77.8%)样本的预计完成时间少于一个经验丰富的软件工程师一个小时的工作量。SWE-bench Lite 和新 SWE-bench Verified 数据集进一步增加了这一比例,预计超过一个小时才能解决的问题少于 10%。然而,这种变化背后的机制有着很大的不同:SWE-bench Lite 是对原始数据集的子采样,使基准测试变得更容易,而 SWE-bench Verified 则试图从数据集中移除不可行的样本。
各个智能体在 SWE-bench Verified 上的性能
在新的 SWE-bench Verified 数据集上,开发团队使用多个在原始 SWE-bench 排行榜上表现良好的开源支架测试了 GPT-4o 的性能。
结果发现 GPT-4o 在性能最佳的支架上的性能在 SWE-bench Verified 上达到 33.2%,是原始 SWE-bench 上 16% 分数的两倍多。总的来说,这证实了 OpenAI 最初的怀疑,即原始 SWE-bench 低估了智能体的能力。
值得注意的是,从 SWE-bench Lite 到 SWE-bench Verified 的跳跃并不那么明显,因为经过筛选,SWE-bench Lite 已经比完整数据集变得更容易。
按难度分层的性能分析
在 SWE-bench Verified 上进行评估时,性能的提高可能部分是由于测试样本的分布向更简单的样本倾斜。
OpenAI 通过绘制按难度分层的性能来调查这一点。如果新数据集只是改变难度分布以包含更简单的样本,则每个类别内的分层性能不会改变,就像从原始 SWE-bench 到 SWE-bench Lite 的情况一样。
相反,OpenAI 观察到,当转向 SWE-bench Verified 时,智能体在各个难度类别的性能均有所提高,这与预期效果一致,即从所有类别中移除不可能的样本,而不是简单地移除困难样本。
参考链接:https://openai.com/index/introducing-swe-bench-verified/
#开源版VITA
没有等来OpenAI开源GPT-4o
开源领域又传来好消息。
大语言模型 (LLM) 经历了重大的演变,最近,我们也目睹了多模态大语言模型 (MLLM) 的蓬勃发展,它们表现出令人惊讶的多模态能力。
特别是,GPT-4o 的出现显著推动了 MLLM 领域的发展。然而,与这些模型相对应的开源模型却明显不足。开源社区迫切需要进一步促进该领域的发展,这一点怎么强调也不为过。
本文 ,来自腾讯优图实验室等机构的研究者提出了 VITA,这是第一个开源的多模态大语言模型 (MLLM),它能够同时处理和分析视频、图像、文本和音频模态,同时具有先进的多模态交互体验。
研究者以 Mixtral 8×7B 为语言基础,然后扩大其汉语词汇量,并进行双语指令微调。除此以外,研究者进一步通过多模态对齐和指令微调的两阶段多任务学习赋予语言模型视觉和音频能力。
VITA 展示了强大的多语言、视觉和音频理解能力,其在单模态和多模态基准测试中的出色表现证明了这一点。
除了基础能力,该研究在提升自然多模态人机交互体验方面也取得了长足进步。据了解,这是第一个在 MLLM 中利用非唤醒交互和音频中断的研究。研究者还设计了额外的状态 token 以及相应的训练数据和策略来感知各种交互场景。
VITA 的部署采用复式方案,其中一个模型负责生成对用户查询的响应,另一个模型持续跟踪环境输入。这使得 VITA 具有令人印象深刻的人机交互功能。
VITA 是开源社区探索多模态理解和交互无缝集成的第一步。虽然在 VITA 上还有很多工作要做才能接近闭源同行,但该研究希望 VITA 作为先驱者的角色可以成为后续研究的基石。
- 论文地址:https://arxiv.org/pdf/2408.05211
- 论文主页:https://vita-home.github.io/
- 论文标题:VITA: Towards Open-Source Interactive Omni Multimodal LLM
在上述视频中,用户可以和 VITA 进行无障碍的沟通,看到用户穿的白色 T 恤后,会给出搭配什么颜色的裤子;在被问到数学题时,能够实时查看题目类型,进行推理,然后给出准确的答案;当你和别人讲话时,VITA 也不会插嘴,因为知道用户不是和它交流;出去旅游,VITA 也会给出一些建议;在 VITA 输出的过程中,你也可以实时打断对话,并展开另一个话题。
在这个视频中,用户拿着一个饼干,询问 VITA 自己在吃什么,VITA 给出在吃饼干,并给出饼干搭配牛奶或者茶口感会更好的建议。
健身时,充当你的聊天搭子:
注:上述视频都是实时 1 倍速播放,没有经过加速处理。
根据用户提供的流程图,VITA 就能编写代码:
提供一张图片,VITA 也能根据图片内容回答问题:
还能观看视频回答问题,当用户抛出问题「详细描述狗的动作」,VITA 也能准确给出答案:
方法介绍
如图 3 所示,VITA 的整体训练流程包括三个阶段:LLM 指令微调、多模态对齐和多模态指令微调。
LLM 指令微调
Mixtral 8x7B 的性能属于顶级开源 LLM 中一员,因此该研究将其作为基础。然而研究者观察到官方的 Mixtral 模型在理解中文方面的能力有限。为了注入双语(中文和英文)理解能力,该研究将中文词汇量扩展到基础模型,将词汇量从 32,000 个增加到 51,747 个。在扩展词汇量后,研究者使用 500 万个合成的双语语料库进行纯文本指令微调。
多模态对齐
为了弥合文本和其他模态之间的表征差距,从而为多模态理解奠定基础。仅在视觉对齐阶段训练视觉连接器。表 1 总结了所使用的训练数据,除了纯文本部分。
视觉模态
首先是视觉编码器。研究者使用 InternViT-300M-448px 作为视觉编码器,它以分辨率 448×448 的图像作为输入,并在使用一个作为简单两层 MLP 的视觉连接器后生成了 256 个 token。对于高分辨率图像输入,研究者利用动态 patching 策略来捕捉局部细节。
视频被视作图像的特殊用例。如果视频长度短于 4 秒,则统一每秒采样 4 帧。如果视频长度在 4 秒到 16 秒之间,则每秒采样一帧。对于时长超过 16 秒的视频,统一采样 16 帧。
其次是视觉对齐。研究者仅在视觉对齐阶段训练视觉连接器,并且在该阶段没有使用音频问题。
最后是数据级联。对于纯文本数据和图像数据,该研究旨在将上下文长度级联到 6K token,如图 4 所示。值得注意的是,视频数据不进行级联。
级联不同的数据有两个好处:
- 它支持更长的上下文长度,允许从单个图像问题交互扩展到多个图像问题交互,从而产生更灵活的输入形式,并扩展上下文长度。
- 它提高了计算效率,因为视频帧通常包含大量视觉 token。通过级联图像 - 问题对,该研究可以在训练批中保持平衡的 token 数量,从而提高计算效率。
此外,该研究发现使用级联数据训练的模型与使用原始数据训练的模型性能相当。
音频模态
一方面是音频编码器。输入音频在最开始通过一个 Mel 滤波器组块进行处理,该块将音频信号分解为 mel 频率范围内的各个频带,模仿人类对声音的非线性感知。随后,研究者先后利用了一个 4×CNN 的下采样层和一个 24 层的 transformer,总共 3.41 亿参数,用来处理输入特征。同时他们使用一个简单的两层 MLP 作为音频 - 文本模态连接器。最后,每 2 秒的音频输入被编码为 25 个 tokens。
另一方面是音频对齐。对于对齐任务,研究者利用了自动语言识别(ASR)。数据集包括 Wenetspeech(拥有超过 1 万小时的多领域语音识别数据,主要侧重于中文任务)和 Gigaspeech(拥有 1 万小时的高质量音频数据,大部分数据面向英文语音识别任务)。对于音频字幕任务,研究者使用了 Wavcaps 的 AudioSet SL 子集,包含了 400k 个具有相应音频字幕的音频片段。在对齐过程中,音频编码器和连接器都经过了训练。
多模态指令微调
该研究对模型进行了指令调整,以增强其指令遵循能力,无论是文本还是音频。
数据构建。指令调优阶段的数据源与表 1 中对齐阶段的数据源相同,但该研究做了以下改进:
问题被随机(大约一半)替换为其音频版本(使用 TTS 技术,例如 GPT-SoVITS6),旨在增强模型对音频查询的理解及其指令遵循能力。
设置不同的系统 prompt,避免不同类型数据之间的冲突,如表 2 所示。例如,有些问题可以根据视觉信息来回答或者基于模型自己的知识,导致冲突。此外,图像数据已被 patch,类似于多帧视频数据,这可能会混淆模型。系统 prompt 显式区分不同数据类型,有助于更直观地理解。
为了实现两种交互功能,即非唤醒交互和音频中断交互,该研究提出了复式部署框架,即同时部署了两个 VITA 模型,如图 1 所示。
在典型情况下,生成模型(Generation model)会回答用户查询。同时,监控模型(Monitoring model)在生成过程中检测环境声音。它忽略非查询用户声音,但在识别到查询音频时停止生成模型的进度。监控模型随后会整合历史上下文并响应最新的用户查询,生成模型和监控模型的身份发生了转换。
实验评估
语言性能。为了验证语言模型训练过程的有效性,研究者使用了四个数据集,分别是 C-EVAL、AGIEVAL、MMLU 和 GSM8K。这些数据集涵盖了各种场景,包括一般选择题、多学科问答题以及数学和逻辑推理任务,同时覆盖了中英文上下文。
下表 3 的结果表明,本文的训练显著增强了语言模型在中文评估集(C-EVAL 和 AGIEVAL)上的能力,同时保持了在英文相关基准(MMLU)上的原始性能水平,并在数学推理任务(GSM8K)上实现显著提升。
音频性能。为了验证模型学得的语音表示的稳健性,研究者在 Wenetspeech 和 Librispeech 两个数据集上进行了测试。
其中 Wenetspeech 有两个评估指标,分别是 test_net 和 test_meeting,前者数据源与训练数据更加一致,因而更容易;后者提出了更大的挑战。作为模型的 held-out 数据集,Librispeech 评估了模型在未见过数据集上的泛化能力,它有四个评估集,以「dev」开头的是验证集,以「test」开头的是测试集,「Clean」代表挑战性较低的集,「other」代表挑战性更高的集。
从下表 4 的结果可以看到,VITA 在 ASR 基准测试上取得了非常不错的结果。
多模态性能。为了评估多模态能力,该研究在四个基准上评估了 VITA,包括 MME 、OCRBench、HallusionBench 和 Video-MME。结果如图 5 所示。
在图像理解方面,VITA 优于图像专用开源模型 LLaVA-Next,并且接近闭源模型 Gemini 1.5 Pro。
在视频理解方面,VITA 超过了视频开源模型 Video-CCAM。尽管 VITA 和视频专用的 LLaVA-Next-Video 之间存在差距,但考虑到 VITA 支持更广泛的模态并优先考虑可交互性,因而这是可以接受的。
最后,值得注意的是,目前开源模型与专有模型在视频理解能力方面仍存在较大差距。
#CRAB
同时操控手机和电脑,100项任务,跨系统智能体评测基准有了
跨平台的多模态智能体基准测试 CRAB 由 CAMEL AI 社区主导,由来自牛津、斯坦福、哈佛、KAUST、Eigent AI 等机构的研究人员合作开发。CAMEL AI 社区开发的 CAMEL 框架是最早基于大语言模型的多智能体开源项目,因此社区成员多为在智能体领域有丰富科研和实践经验的研究者和工程师。
AI 智能体(Agent)是当下大型语言模型社区中最为吸引人的研究方向之一,用户只需要提出自己的需求,智能体框架便可以调度多个 LLMs 并支持多智能体(Multi-agents)以协作或竞争的方式来完成用户给定的任务。
目前智能体已越来越多地与大型多模态模型 (MLM) 相结合,支持在各种操作系统( 包括网页、桌面电脑和智能手机) 的图形用户界面( GUI) 环境中执行任务。但是目前针对这种智能体性能评估的基准(benchmarks)仍然存在很多局限性,例如构建任务和测试环境的复杂性,评价指标的单一性等。
针对这些问题,本文提出了一个全新的跨环境智能体基准测试框架 CRAB。CRAB 采用了一种基于图的细粒度评估方法,并提供了高效的任务和评估器构建工具。本文的研究团队还基于 CRAB 框架开发了一个跨平台的测试数据集 CRAB Benchmark-v0,其中涵盖了可以在 PC 和智能手机环境中执行的 100 个任务,其中既包含传统的单平台任务,还包含了必须同时操作多个设备才能完成的复杂跨平台任务。
- 论文题目:CRAB: Cross-environment Agent Benchmark for Multimodal Language Model Agents
- 论文地址:https://arxiv.org/abs/2407.01511
- 代码仓库:https://github.com/camel-ai/crab
作者选取了当前较为流行的四个多模态模型进行了初步实验,实验结果表明,使用 GPT-4o 作为推理引擎的单智能体结构拥有最高的测试点完成率 35.26%。
引言
作为全新的智能体评估基准框架,CRAB(Cross-environment Agent Benchmark)主要用于评估基于多模态语言模型(MLMs)的智能体在跨环境任务中的表现。CRAB 可以模拟真实世界中人类用户同时使用多个设备完成复杂任务的场景,如 Demo 所示,CRAB 可以用来评估智能体同时操纵一个 Ubuntu 桌面系统和一个 Android 手机系统完成发送信息的过程。
想象一下,如果智能体具备根据人类指令同时精确操作电脑和手机的能力,很多繁杂的软件操作就可以由智能体来完成,从而提高整体的工作效率。为了达成这个目标,我们需要为智能体构建更加全面和真实的跨平台测试环境,特别是需要支持同时操作多个设备并且能提供足够的评估反馈机制。本文的 CRAB 框架尝试解决以下几个实际问题:
- 跨环境任务评估:现有的基准测试通常只关注单一环境(如网页、Android 或桌面操作系统)[1][2][3][4],而忽视了真实世界中跨设备协作场景的复杂性。CRAB 框架支持将一个设备或应用的交互封装为一个环境,通过对多环境任务的支持,提供给智能体更丰富的操作空间,也更贴近实际应用场景。
- 细粒度评估方法:传统的评估方法要么只关注最终目标的完成情况(目标导向),要么严格比对操作轨迹(轨迹导向)[1][2][3]。这两种方法都存在局限性,无法全面反映智能体的表现。CRAB 提出了基于图的评估方法,既能提供细粒度的评估指标,又能适应多种有效的任务完成路径。
- 任务构建复杂性:随着任务复杂度的增加,手动构建任务和评估器变得越来越困难。CRAB 提出了一种基于子任务组合的方法,简化了跨环境任务的构建过程。
- 智能体系统结构评估:本文还探讨了不同智能体系统结构(单智能体、基于功能分工的多智能体、基于环境分工的多智能体)对任务完成效果的影响,为设计更高效的智能体系统提供了实证依据。
上表展示了本文提出的 CRAB 框架与现有其他智能体基准框架的对比,相比其他基准,CRAB 可以同时支持电脑和手机等跨平台的操作环境,可以模拟更加真实的使用场景。
对于 CRAB,一众网友给出了很高的评价。
有人表示,AGI 已经达成,因为有大语言模型(指 CRAB)已经学会了如何退出 Vim。
"Can you exit Vim?" 这个问题常常是一个编程或技术社区的玩笑,因为 Vim 对新手来说可能很难退出,尤其是当他们不熟悉 Vim 的操作模式时。(在此贡献一张表情包)
有人说很难相信一个智能体可以完成 “查看日历,打开 Vim,进入插入模式,输入事件列表,退出插入模式,并使用 :wq 保存” 这一系列任务。
也有网友总结说下个下一代机器人流程自动化(RPA)将更像是 “请帮我完成下列任务”,而不需要记录每一个步骤,然后在几天内运行时崩溃。
也有人提到了 CRAB 中的图评估器(Graph Evaluator)用于处理智能体在环境中的状态是一种非常智能的方式。
甚至有人夸赞道 CRAB 是 AI PC 的未来,认为这是 LLM 与 PC 和移动设备的完美结合,“它是一种类似 RabbitOS 的 AI,使现有的 PC 和移动设备具备 AI 功能。CRAB 的基准测试允许在现实世界中测试多模态语言模型代理的有效性和实用性。”
定义
任务定义
CRAB 框架将数字设备(如桌面电脑或智能手机)表示为一个具体的环境。每个环境被定义为一个无奖励的部分可观察马尔可夫决策过程(POMDP),可以使用元组
表示,其中
为状态空间,
为动作空间,
是转移函数,
是观察空间。
而对于跨环境任务,可以定义一个环境集合
其中 n 是环境数量,每个环境又可以表示为
。
基于以上,作者将一个具体的跨环境任务表示为元组
,其中 M 是环境集合,I 是以自然语言指令形式给出的任务目标,R 是任务的奖励函数。参与任务的智能体系统可以被建模为一个策略
。
这表示智能体在接收到来自环境
图任务分解(Graph of Decomposed Tasks, GDT)
将复杂任务分解为几个更简单的子任务是 LLMs 解决实际问题时非常有效的技巧 [5][6],本文将这一概念引入到了智能体基准测试中,具体来说,本文引入了一种分解任务图(Graph of Decomposed Tasks,GDT),如下图所示,它可以将一个复杂任务表示为一个有向无环图(DAG)的结构。
GDT 中的每个节点可以代表一个子任务 (m,i,r),其中 m 为子任务执行的环境,i 为自然语言指令,r 是奖励函数,用于评估环境 m 的状态并输出布尔值,判断子任务是否完成。GDT 中的边表示子任务之间的顺序关系。
CRAB 框架
跨环境智能体交互
CRAB 首次引入了跨环境任务的概念,将多个环境(如智能手机和桌面电脑)组合成一个环境集合,使智能体能够在多个设备之间协调操作完成复杂任务。
在 CRAB 框架中使用基于环境分工的多智能体系统的运行流程如上图所示。工作流程通过一个循环进行,首先通过主智能体观察环境,并对子智能体指定计划,然后所有的子智能体在各自的环境中执行操作。随后由一个图评估器(Graph Evaluator)来监视环境中各个子任务的状态,并在整个工作流程中不断更新任务的完成情况。这种评估方式可以贴近真实场景,以考验智能体的推理能力,这要求智能体能够处理复杂的消息传递,并且需要深入理解现实世界的情况。
图评估器(Graph Evaluator)
CRAB 内置的图评估器同时兼顾了目标导向和轨迹导向评估的优点,其首先将复杂任务分解为多个子任务,形成一个有向无环图结构。随后定义了一种节点激活机制,即图中的节点(子任务)需要根据前置任务的完成情况逐步激活,确保任务的顺序执行。其中每个节点都关联了一个验证函数,用来检查环境中的关键中间状态。相比之前的评估基准,CRAB 图评估器创新性地引入了一系列新的评价指标:
- 完成率(Completion Ratio, CR):完成的子任务节点数量与总节点数量的比率,CR = C / N。
- 执行效率(Execution Efficiency, EE):完成率与执行的动作数量的比值,EE = CR / A,A 为指定的动作数。
- 成本效率(Cost Efficiency, CE):完成率与使用的模型 token 数量的比值,CE = CR / T,T 为使用的模型 token 数量。
这些指标为智能体基准提供了更细粒度和更多维度的评估侧重点。
CRAB Benchmark-v0
基准构建细节
基于提出的 CRAB 框架,本文构建了一个具体的基准测试集 CRAB Benchmark-v0 用于社区进一步开展研究。CRAB Benchmark-v0 同时支持 Android 手机和 Ubuntu Linux 桌面电脑两个环境。并且为 Ubuntu 和 Android 定义了不同的动作集,用来模拟真实生活中的常见交互。其观察空间由两种环境的系统界面构成,并且使用屏幕截图形式获取环境状态。为了方便智能体在 GUI 中操作,作者使用 GroundingDINO [7] 来定位可交互图标,使用 EasyOCR 检测和标注可交互文本,为每个检测项分配一个 ID,方便后续在操作空间内引用。
我们以一个具体任务举例,例如在 Ubuntu 系统上完成如下任务:创建一个新目录 “/home/crab/assets_copy”,并将所有具有指定 “txt” 扩展名的文件从 “/home/crab/assets” 复制到目录 “/home/crab/assets_copy”。
该任务需要执行多步操作才能完成,下图展示了当使用 GPT-4 Turbo 作为推理模型并采用单智能体结构时的实验细节。智能体首先使用 search_application 命令查找终端并打开。
然后使用 Linux 命令 “mkdir -p /home/crab/assets_copy” 创建新的目标目录。
在创建好目标目录后,智能体直接在终端中执行了拷贝命令 :
“cp /home/crab/assets/*.txt/home/crab/assets_copy” 来完成任务,整个流程行云流水,没有任何失误。
实验效果
作者随后在 CRAB Benchmark-v0 进行了 baseline 实验,智能体的核心是后端的多模态语言模型,其用来提供自然语言和图像理解、基本设备知识、任务规划和逻辑推理能力,需要支持多模态混合输入,可以同时处理多轮对话,因而作者选取了 GPT-4o (gpt-4o-2024-05-13)、GPT-4 Turbo (gpt-4-turbo-2024-04-09)、Gemini 1.5 Pro (2024 年 5 月版本) 和 Claude 3 Opus (claude-3-opus-20240229) 作为 baseline 模型。
实验结果如上表所示,其中 GPT-4o 和 GPT-4 Turbo 模型在测试模型中实现了最高的平均测试点完成率(CR)。在执行效率(EE)和成本效率(CE)方面, GPT-4 系列也相比 Gemini 和 Claude 系列模型更加优秀。
总结
本文介绍了一种全新的跨环境多智能体评估基准 CRAB,CRAB 框架通过引入跨环境任务、图评估器和基于子任务组合的任务构建方法,为自主智能体的评估提供了一个更加全面、灵活和贴近实际的基准测试平台。相比先前的智能体基准,CRAB 减少了任务步骤中的手动工作量,大大提高了基准构建效率。基于 CRAB,本文提出了 Crab Benchmark-v0,同时支持智能体在 Ubuntu 和 Android 系统上执行多种复杂的跨环境任务,这一基准的提出,不仅可以推动自主智能体评价体系的发展,也为未来设计更加高效的智能体系统提供全新灵感。 开发板商城 天皓智联 TB上有视觉设备哦 支持AI相关~ 大模型相关也可用