遇见数据集

SaaSBench

收藏
Hugging Face2026-07-23 更新2026-07-24 收录
官方服务:

资源简介:

SaaSBench是一个专为智能体基准测试设计的任务输入数据集,包含30个独立任务,每个任务都源自一个真实的开源软件即服务(SaaS)项目。每个任务提供两个核心文件:一份自然语言编写的产品需求文档(PRD),以及一个用于澄清PRD中模糊或歧义点的知识库文件。数据集的主要目的是为评估智能体在理解复杂软件需求并据此生成代码或解决方案的能力提供标准化的输入。数据以结构化形式组织,可通过HuggingFace datasets库加载,每个数据行代表一个任务,包含任务ID、需求文档文本和知识库JSON字符串三个字段。

SaaSBench is a task input dataset specifically designed for agent benchmarking. It contains 30 independent tasks, each derived from a real open-source Software as a Service (SaaS) project. Each task provides two core files: a product requirement document (PRD) written in natural language, and a knowledge base file to clarify ambiguous or unclear points in the PRD. The main purpose of the dataset is to provide standardized inputs for evaluating agents ability to understand complex software requirements and generate code or solutions accordingly. The data is organized in a structured format and can be loaded via the HuggingFace datasets library, with each data row representing a task and containing three fields: task ID, requirement document text, and knowledge base JSON string.

创建时间:
2026-07-13
原始信息汇总

SaaSBench 数据集概述

SaaSBench 是一个专为智能体(agent)基准测试设计的数据集,包含30个自包含的任务,每个任务均源自真实的开源SaaS项目。

任务构成

每个任务包含两种文件:

  • task.md:自然语言产品需求文档(PRD),描述任务的目标和要求。
  • knowledge_base.json:针对PRD中模糊内容的澄清说明,以JSON格式存储。

数据集结构

  • 语言:英文
  • 许可协议:Apache-2.0
  • 任务类型:文本生成
  • 配置:仅包含 default 配置
  • 数据文件data/train.jsonl,训练集

数据列说明

数据集共有三列:

  • task_id(字符串):任务唯一标识符。
  • task_md(字符串):任务PRD的原始文本内容。
  • knowledge_base(JSON字符串):知识库的JSON格式字符串,可解析为字典。

加载方式

  • 通过Hugging Face Datasets库:使用 load_dataset("SaaSBench/SaaSBench") 加载,返回一个包含30个样本的数据集。
  • 直接下载原始文件:使用 snapshot_download 下载,文件路径为 {路径}/tasks/<task_id>/task.md{路径}/tasks/<task_id>/knowledge_base.json

补充说明

该数据集仅托管任务输入,评估框架相关代码托管于GitHub仓库,不包含在此数据集中。

搜集汇总
数据集介绍
SaaSBench 数据集图片
构建方式
SaaSBench数据集的构建根植于对真实开源SaaS项目的深度剖析,精选出30个具备自包含特性的任务。每个任务均配备一份自然语言描述的产品需求文档(task.md),用以勾勒功能轮廓,并辅以一份知识库文件(knowledge_base.json),专门澄清需求文档中可能存在的歧义。任务输入以JSONL格式组织于train.jsonl文件中,每行对应一个任务,包含任务标识符、需求文档全文以及结构化的知识库信息,确保了数据集的独立性与可复现性。
特点
该数据集的核心特色在于其任务来源的真实性与复杂性——每个任务均脱胎于实际的开源SaaS项目,而非人工虚构的简化案例。任务输入采用双文档结构,即产品需求文档与知识库相结合,模拟了真实软件开发中需求分析与澄清的流程。数据集提供两种灵活加载方式:既可通过HuggingFace Datasets库直接访问,也可通过snapshot_download下载原始文件,满足不同场景下的使用偏好。
使用方法
使用者可借助HuggingFace的datasets库,通过load_dataset('SaaSBench/SaaSBench')命令便捷加载数据集,其中train['task_md']字段直接提供需求文档文本,而knowledge_base字段需通过json.loads()解析为字典对象。对于偏好原生文件访问的用户,可利用huggingface_hub的snapshot_download功能将整个数据集下载至本地,文件按tasks/<task_id>/路径组织,task.md与knowledge_base.json分别位于对应子目录中,便于集成至自定义的智能体评估框架。
背景与挑战
背景概述
在软件即服务(SaaS)领域,自动化构建与维护复杂业务系统已成为提升开发效率的关键。然而,现有基准测试多聚焦于通用编程或孤立API调用,缺乏对SaaS全栈、多服务协作场景的评估能力。SaaSBench由研究团队于近期创建,旨在填补这一空白。该数据集精心设计30个自包含任务,每个任务均源自真实开源SaaS项目,并提供自然语言产品需求文档(PRD)与知识库文件,以模拟从需求解析到代码实现的完整闭环。通过聚焦SaaS特有的多服务编排与领域知识融合难题,SaaSBench为智能体系统的能力评估与进化提供了标准化测试平台,对推动对话式编程及自动化运维研究具有重要参考价值。
当前挑战
SaaSBench面临的双重挑战体现在领域问题与构建过程两个维度。在领域问题上,其核心挑战在于训练智能体从模糊的PRD中准确理解SaaS业务逻辑,并协调多个微服务间的交互以实现端到端任务。这与传统代码生成任务不同,需模型具备跨模块的上下文整合与错误恢复能力。在构建过程中,主要挑战包括:从三十余个真实开源项目中提炼代表性任务,需平衡任务复杂度与可复现性;为每个任务手动编写清晰且包含歧义的PRD与知识库,模拟真实需求的不确定性;此外,确保所有任务依赖环境可被自动化部署与验证,以支撑公平的基准评测。
常用场景
经典使用场景
SaaSBench作为一个精心设计的智能体基准测试数据集,其核心应用在于评估和推动大语言模型在软件即服务产品开发中的自动化能力。该数据集包含30个源自真实开源SaaS项目的自包含任务,每个任务都配备了详细的产品需求文档和知识库文件,为研究者提供了模拟真实SaaS开发环境的标准化测试平台。研究者可以借助该数据集系统性地考察语言模型在理解复杂业务需求、利用领域知识进行推理、以及生成可执行代码或解决方案方面的综合表现,从而推动智能编程助手从简单的代码补全向端到端产品级应用开发演进。
解决学术问题
SaaSBench数据集着力解决当前学术界在软件工程与人工智能交叉领域面临的核心挑战:如何客观、可复现地评估大语言模型在真实复杂SaaS场景下的任务完成能力。传统基准测试多局限于代码生成或简单对话任务,难以反映实际产品开发中需求理解、知识整合与功能实现的综合难度。该数据集通过构建30个源自真实项目的标准化任务,为研究者提供了统一的质量度量标准,使得不同模型在需求解析准确度、知识库利用效率、以及最终产品功能完整性等维度上的比较成为可能。这一体系化的评估框架有效填补了智能体在复杂软件工程应用研究中的方法论空白。
衍生相关工作
SaaSBench的发布催生了多项富有影响力的后续研究工作。研究者基于该数据集开发了多任务学习框架,探索如何通过知识迁移机制提升模型在不同SaaS任务间的泛化能力。另一项重要工作聚焦于需求理解的可解释性,通过分析模型在任务中提取和使用知识库信息的行为模式,揭示了当前模型在处理复杂软件需求时的认知局限与改进方向。此外,SaaSBench还激发了针对长上下文建模的专项研究,研究者尝试运用检索增强生成和渐进式推理等技术,显著提升了模型在海量产品文档和代码库中定位并利用关键信息的能力。该数据集已成为验证新一代软件智能体系统性能的标杆性评估平台。
以上内容由遇见数据集搜集并总结生成
二维码
社区交流群
二维码
科研交流群
商业服务