Skip to main content

ossdata 🚀

ossdata 是一个命令行工具,用于将 Hugging Face 上的 SWE(Software Engineering)类数据集(如 SWE-bench)高效同步到私有 OSS(对象存储服务),并提供便捷的查询与统一的读取接口。每条数据将夹带 docker_image 字段,便于各个 agent 框架统一 rollout。


🌟 功能特性

  • 一键上传:从 Hugging Face / JSON lines 加载数据集并推送到 OSS。
  • 版本管理:使用 split@revision 构成唯一 version,支持多版本管理。
  • 灵活查询:
    • 列出所有数据集
    • 查看某个数据集的所有版本
    • 查看某版本下的所有 instance_id
    • 根据 instance_id 和 key 快速获取字段值(如 problem_statement, patch 等)
  • 结构化存储:在 OSS 中按 /{name}/{version}/{instance_id}.json 组织数据,便于集成训练/评测流水线。

📦 安装与配置

pip install git+http://gitlab.alibaba-inc.com/Qwen-Coder/ossdata.git

export OSS_ACCESS_KEY_ID=""
export OSS_ACCESS_KEY_SECRET=""
export OSS_REGION="ap-southeast-1"
export OSS_ENDPOINT="https://oss-ap-southeast-1-internal.aliyuncs.com"

🛠️ 使用方法

1. 上传数据集到 OSS

ossdata upload \
  --name "princeton-nlp/SWE-bench" \
  --split "test" \
  [--docker-image-prefix "code-agi-sg-docker-registry-vpc.ap-southeast-1.cr.aliyuncs.com/eflops/swe-rebench:"] \
  [--revision "{revision}"]
  • 如果 name 以 .jsonl 结尾,则认为这是个 jsonl 文件;否则,从 HuggingFace 读取。
  • 数据将被分片上传至 OSS,并按照 /{name}/{version}/{instance_id}.json 建立索引。如果提供了 revision,则version 将被记录为:{split}@{revision},否则只有 {split}。
  • 如果提供了docker-image-prefix,则每条数据将带有 docker_image 字段,内容是 {docker-image-prefix}{instance_id}。

2. 查看数据集列表

ossdata ls

输出示例:

princeton-nlp/SWE-bench
swebench/verified

3. 查看某个数据集的所有版本

ossdata ls --name "SWE-Env/SWE-Env"

输出示例:

v1
test

4. 查看某版本下的所有 instance ID

ossdata ls --name "princeton-nlp/SWE-bench_Verified" --version "test"

输出示例:

pandas__pandas-44271
scipy__scipy-16864
numpy__numpy-12039

5. 获取某个实例

支持数据集的各种字段,如 problem_statement, patch, docker_image

ossdata get \
  --instance-id "pandas__pandas-44271" \
  --name "princeton-nlp/SWE-bench" \
  --version "test" \
  [--key "problem_statement"]
  • 如果提供了 key,则输出指定字段;否则,输出所有 json 内容。

Built with ❤️ for AI coding research.

Metadata

Release files for ossdata 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ossdata 0.1.0
File Size Uploaded
ossdata-0.1.0.tar.gz 5.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ossdata 0.1.0
File Interpreter ABI Platform
ossdata-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 11.3 kB

Release files / ossdata-0.1.0.tar.gz

Download URL ossdata-0.1.0.tar.gz
Size 5.4 kB
Tags Source
SHA-256 checksum
How to use checksums
18234288831bd944b9b6c1b283ad513e6ddc3e388c30b40158b1d32e706d97e3
BLAKE2b-256 checksum
How to use checksums
6307da1b9a8c2e84a6a191356d7854ad8a42f5a34985758214ed966c64a12b58
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.8.15

Release files / ossdata-0.1.0-py3-none-any.whl

Download URL ossdata-0.1.0-py3-none-any.whl
Size 5.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4f86bbe9547fa6da56b60ff23cefdd9d508abe7e41a9ef0d397656740d553837
BLAKE2b-256 checksum
How to use checksums
bf349e78091077d39a74f01916af8586e29452da347b8f068aa2a68e1c111b1b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.8.15

Release history Release notifications | RSS feed

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page