数据集导出指南
数据集浏览器和自动化脚本共享同一条导出管线:一个流式返回 .eval752.zip 的 FastAPI 端点。
本文概述如何下载归档、筛选如何影响导出内容,以及 UI 如何呈现这一流程。
端点摘要
GET /datasets/{dataset_id}/export
响应: 200 OK,Content-Type: application/zip,并带有 Content-Disposition: attachment; filename=...eval752.zip。
归档中始终包含:
manifest.json:生成元数据、section 列表与计数,会尊重筛选条件。meta.json:可选的 description/schema 元数据。sections/*.jsonl:每个导出 section 对应一个 JSONL 文件。assets/...:被导出条目引用的解码后二进制资源。- 当提供
run_id时:run_config.json、results.jsonl与 LightEval config(若可用)。
Section 筛选
- 后端接受任意数量的
section_ids参数。若某个 ID 不属于该数据集,会返回400 Bad Request,避免误配。 - 筛选会同时影响数据集内容和 run 产物。
results.jsonl只包含已导出 section 内的条目,因此下游工具不会看到悬空引用。 - 如果不传
section_ids,则导出全部 sections。
示例:
Run 选择
传入 run_id 后,服务会把对应 run summary、run_config.json、LightEval config
(已去除 API keys)以及 results.jsonl 一并打入归档。
该 run 必须属于该数据集;否则 API 会返回带描述信息的 400。
你也可以把 run_id 与 section_ids 组合使用,只导出某些 section,同时保留这些 section 对应的 run 指标。
UI 与 UX 说明
- 数据集列表仍保留一键
Export按钮,用于导出完整包。 - 应用内的 Dataset Explorer 现在提供 Export view 控件,可按用户当前查看的 section 过滤导出。 按钮文案会明确说明:搜索关键字只影响预览,section 筛选才决定导出范围,降低 “所见即所得” 预期带来的误解。
- Run 详情面板仍然是“附带运行结果导出”的最直接入口。
后续设计应继续保持这一心智模型一致: 筛选 = 结构化子集,run = 行为上下文。
