OpenAI Deep Research被huggingface 24小时复现开源了

ops/2025/2/11 11:48:18/

自OpenAI发布Deep Research(一种使用推理来综合大量在线信息并完成多步骤研究任务的AI Agent)之后开源社区已经迎来一大波复现了,PaperAgent进行了梳理:

1.2k星 https://github.com/jina-ai/node-DeepResearch

825 https://github.com/mshumer/OpenDeepResearcher

658 https://github.com/nickscamara/open-deep-research

529 https://github.com/btahir/open-deep-research

499 https://github.com/dzhng/deep-research

182 https://github.com/HarshJ23/Deeper-Seeker

这里重点介绍下huggingface的24小时复现项目: open-Deep-Research

open-Deep-Research是一个完全开放的智能Agent,能够:自主浏览网页、滚动和搜索页面、下载和操作文件、对数据进行计算……

在GAIA基准测试中,Deep Research在验证集上的准确率为67%。 

使用 CodeAgent

将要解决的第一个对传统 AI Agent系统的改进是使用“Code Agent”。让Agent用代码表达其动作有几个优点,但最值得注意的是,代码是专门为表达复杂的动作序列而设计的。

这凸显了使用代码的几个优点:

  • 代码操作比JSON简洁得多

    • 需要运行 4 个包含 5 个连续操作的并行流?在 JSON 中,您需要生成 20 个 JSON blob,每个都在其单独的步骤中;在 Code 中只需 1 个步骤。

    • 论文显示,平均而言,代码操作所需的步骤比 JSON 少 30%,这相当于生成的token也减少了 30%。由于 LLM 调用通常是Agent系统的度量成本,这意味着Agent系统运行成本降低了约 30%。

  • 代码允许重复使用来自公共库的工具

  • 基准测试中表现更佳,原因有二:

    • 更直观的表达动作的方式

    • LLM在训练中广泛接触代码

制造合适的工具

现在需要为Agent提供正确的工具集。

  • 网络浏览器。虽然需要像Operator这样的功能齐全的网络浏览器交互才能实现全部性能,但目前我们从一个非常简单的基于文本的网络浏览器开始进行第一个概念验证。

  • 一个简单的文本检查器,能够读取一堆文本文件格式。

这些工具取自微软研究院出色的Magentic-One Agent!

以下是可以真正提高这些工具性能的改进的简短路线图

  • 扩展可读取的文件格式的数量

  • 提出更细粒度的文件处理

  • 用基于视觉的浏览器取代网络浏览器

结果

在24 小时以上的复制冲刺中,已经看到 GAIA 上的Agent性能稳步提升!

已经从之前采用开放框架的 SoTA(Magentic-One 的准确率约为 46%)迅速上升到目前验证集上的 54% 的准确率。

性能的提升主要归功于让Agent用代码编写操作!事实上,当切换到用 JSON 而不是代码编写操作的标准Agent时,相同设置的性能在验证集上会立即下降到平均33%。

https://huggingface.co/blog/open-deep-research

http://www.ppmy.cn/ops/157514.html

相关文章

MIT6.824 Lecture 2-RPC and Threads Lecture 3-GFS

Lecture 2-RPC and Threads Go语言在多线程、同步,还有很好用的RPC包 《Effective Go》 线程是实现并发的重要工具 在分布式系统里关注多线程的原因: I/O concurrencyParallelismConvenience Thread challenges 用锁解决race问题 Coordination channel…

记录 | WPF基础学习自定义按钮

目录 前言一、解析Button.TemplateBorder和TemplateBinding 二、代码提供更新时间 前言 参考文章: 参考视频:【WPF入门教程 Visual Studio 2022】WPF界面开发入门 自己的感想 这里涉及到Template模板和事件。主要干两件事:1、template中的重写…

vue中computed和watch的区别,以及适用场景

一、computed:通过属性计算而得来的属性 computed内部的函数在调用时不加()。computed是依赖vm中data的属性变化而变化的,也就是说,当data中的属性发生改变的时候,当前函数才会执行,data中的属性没有改变的时候&#…

防御综合实验

1、实验拓扑图 2、实验步骤 需求一:完成IP配置 FW OA Web DNS PC1 Client2 需求二:DHCP分配IP 需求三:配置安全区域 需求四:防火墙地址组信息 DMZ区域 TrustA TrustB 需求五:管理员 配…

【大模型】Ubuntu下安装ollama,DeepSseek-R1:32b的本地部署和运行

1 ollama 的安装与设置 ollama官网链接:https://ollama.com/ 在左上角的【Models】中展示了ollama支持的模型在正中间的【Download】中课可以下载支持平台中的安装包。   其安装和模型路径配置操作流程如下: ollama的安装 这里选择命令安装curl -fsSL …

使用Spring boot的@Transactional进行事务管理

文章目录 一、前置条件二、基本用法1. 在方法上添加注解2. 在类上添加注解 三、核心配置参数1. 传播行为(Propagation)2. 隔离级别(Isolation)3. 超时时间(Timeout)4. 只读模式(readOnly&#x…

面试真题 | 超图骏科 C++

构造函数的类型及其描述 在C++中,构造函数是用于初始化对象的特殊成员函数。根据用途和参数的不同,可以将构造函数分为以下几种类型: 默认构造函数(Default Constructor) 描述:没有参数的构造函数。如果类中没有定义任何构造函数,编译器会自动生成一个默认构造函数。但…

JVM 中的各种收集器总结

在 Java 虚拟机(JVM)的垃圾回收体系中,垃圾收集器扮演着至关重要的角色,它们负责自动回收不再使用的内存空间,以确保 JVM 的高效运行。不同的垃圾收集器具有不同的特点和适用场景,了解它们的工作原理和特性…