Heart of Machine报告编辑:Panda OpenHands开发团队刚刚发表了一篇新文章,正式宣布流行的OpenHands软件开发代理框架(拥有超过64,000个GitHub star)的代理组件已完成架构重组。综上所述,本轮OpenHands Software Agent SDK重新设计带来了显着的改进,也让OpenHands从V0演进到V1。在灵活性方面,我们设计了一个简单的界面,只需几行代码即可默认部署代理,但可以通过自定义工具、内存管理和其他功能轻松扩展为复杂的、功能齐全的代理。它提供安全性和可靠性、无缝的本地到远程执行可移植性以及集成的 REST/WebSocket 服务。为了与人类用户交互,您可以直接连接到各种界面,包括可视化工作区(VS Code、VNC、浏览器)、命令行界面和 API。比较的与现有的 OpenAI、Claude 和 Google SDK 相比,OpenHands 独特地集成了本机沙箱执行、生命周期控制、独立于模型的多 LLM 路由和内置安全分析。该团队表示:“这些元素使 OpenHands Software Agent SDK 能够为原型设计、解锁新的自定义应用程序以及自信地大规模部署代理提供实用的基础。”文章标题:OpenHands Software Agent SDK:生产代理的可组合和可扩展基础 软件代理 SDK:https://github.com/OpenHands/software-agent-sdk V1 的四个设计原则 OpenHands 团队提到,ds V0 最初被设计为整体架构,将代理、评估和应用程序逻辑结合在同一代码库中。虽然目标是实现快速原型设计和迭代,但这种设计暴露了项目开发中的诸多缺陷,包括沙箱僵化、变量配置复杂、科研与项目耦合过度等。生产。因此,全面重建势在必行。吸取这些教训,OpenHands V1 引入了一种基于四个设计原则的新架构,直接解决了 V0 的局限性。具体来说,这些原则包括: 1. V1 沙箱的默认设置(不应普遍适用且应该是可选的)是将代理和工具执行整合到单个进程中,与 MCP 先决条件一致。如果需要隔离,可以透明地包含相同的堆栈。沙盒现在是可选的,可以在不牺牲安全性的情况下保持灵活性。 2. 无状态 p 默认情况下,V1 具有单一的状态来源。 V1 将所有代理及其组件(工具、LLM 等)视为不可变的、可序列化的 Pydantic 模型,并在构建时进行验证。唯一可变的实体是会话状态。它是一个单一的、定义明确的事实来源,用于跟踪正在进行的执行。这种设计隔离了对单个位置的更改,允许确定性重复、高一致性和长期稳定的恢复。 3、严格区分相关项目。 V1 将核心与代理分离成“软件工程 SDK”。该应用程序通过 SDK API 集成,允许独立于应用程序进行研究。 4.一切都必须是安全可配置和可扩展的。 V1 将可组合性视为两个层面的主要设计目标。在实现层面,其四个模块化包(SDK、工具、工作区、代理服务器)可以灵活组合,以支持本地、托管或容器化执行。在功能层面,SDK 公开了一个书面组件模型(工具、LLM、上下文等),允许开发人员以声明方式扩展或重新配置代理,而无需触及核心。 OpenHands V1:完整的软件代理生态系统 OpenHands V1 基于以下原则: 它是一个完整的软件代理生态系统,包括 CLI 和 GUI 应用程序。他们一个它们基于名为 OpenHands Software Agent SDK 的共享基础(图 1b)。下图显示了一个最小的示例。 SDK 定义了事件源的状态模型,具有确定性回放、代理的不可变配置以及与 MCP 集成的类型化工具系统。其工作区抽象允许您在本地运行相同的代理来创建原型,或在安全的容器化环境中远程运行相同的代理,只需最少的代码更改。与以前仅提供库的 SDK 不同,OpenHands 包含用于远程执行的内置 REST/WebSocket 服务器和一组用于人工审核和控制的交互式工作区界面(基于浏览器的 VSCode IDE、VNC 桌面和持久 Chromium 浏览器)。该团队还系统地比较了 SDK 和 OpenAI 代理。我们检查了 Claude Agent SDK、Claude Agent SDK 和 Google ADK 中的 31 个功能,发现虽然其中至少有 15 个功能是共享的,但 OpenHands SDK 独特地包含了 16 个附加功能l 功能,包括本机远程执行、沙盒生产服务器以及跨 100 多家供应商的模型无关的多 LLM 路由。该 SDK 还包括用于代理操作、灵活的生命周期控制(暂停/恢复、子代理委托、历史恢复等)和生产的安全分析器。还添加了内置的质量保证(质量保证)测量(单元测试、基于 LLM 的集成测试和评估基准)以提高操作可靠性。 OpenHands Software Agent SDK 在 MIT 许可下完全开源。可靠性和评估 该团队通过两个互补的流程评估了 OpenHands Agent SDK 的可靠性和性能:持续测试和基准测试。持续测试过程是程序化测试和基于 LLM 的测试的结合,每天针对每个拉取请求自动运行一次。验证您的 SDK 在多种语言模型中的行为是否一致,并捕获回归问题早期的推理、工具使用和状态管理。 Estas pruebas auTomatized 运行每次运行仅需 0.5 至 3 美元,并且可以在 5 分钟内完成。基准测试衡量 SDK 在标准化代理任务上的整体功能,并帮助您了解模型质量和系统性能。持续质量保证 SDK 使用三层测试策略来平衡覆盖范围、成本和深度。编程测试:在每次提交时运行它们。这些测试模拟 LLM 调用并在几秒钟内验证核心逻辑、数据流和 API 合约。模拟可以加快反馈速度,并确保在进行任何外部 API 调用之前捕获大多数回归问题。基于 LLM 的测试:包括集成测试和样本测试(见下文)。拉取请求每天按需执行。这些测试使用真实模型(Claude Sonnet 4.5、GPT-5 Minor、DeepSeek Chat)来验证推理、工具调用和环境稳定性。每次运行的费用在 0.5 美元到 3 美元之间,需要 5 分钟。是nchmark 评估:高成本(每次运行 100 至 1,000 美元,需要几个小时)的按需评估,根据学术数据集衡量代理的综合能力。在集成测试中,虽然涵盖了各种基于场景的工作流程(文件操作、命令执行、git操作、导航等),但示例测试确保了所有SDK示例(自定义工具、MCP集成、持久化、异步执行、路由等)的端到端可靠性。随着新的代理行为和故障模式的发现,测试套件不断扩展以提高覆盖范围和回归灵敏度。该团队还进一步优化了 cosCI/CD 工具,以便按需执行这些基于 LLM 的测试。集成测试侧重于高风险更改,示例测试涵盖面向用户的模块,每日运行跟踪代码库更新中的回归问题。 Benchmark SDK 为评估代理功能的各种学术基准提供内置支持。如表2所示,该SDK在软件工程和通用代理基准测试中显示出具有竞争力的性能。在衡量代理执行软件工程任务的能力的 SWE-Bench Verified 中,SDK 使用带有增强思维的 Claude Sonnet 4.5 实现了 72% 的解决率。在衡量智能体解决常见计算任务能力的 GAIA 中,SDK 使用 Claude Sonnet 4.5 实现了 67.9% 的准确率,展示了其执行无限多步指令并有效使用该工具的能力。此外,强大的开源编码模型Qwen3 Coder 480B取得了41.21%的成绩。 OpenHands-Versa 的最佳结果是 SDK 架构与牺牲代理功能的研究中的系统中心的性能相当。
特别提示:以上内容(包括图片、视频,如有)由自有媒体平台“网易账号”用户上传发布。这个platform仅提供数据存储服务。注:以上内容(包括图片和视频,如有)由仅提供数据存储服务的社交媒体平台网易号用户上传并发布。