Skip to content

HuggingFace dataset integration: auto-push spreads + leaderboard dataset card #45

Description

@jkbennitt

Goal

Make HuggingFace the public, citable home for RLE benchmark data — every spread lands on the Hub automatically, with a dataset card that doubles as a live leaderboard.

Current state

  • tracking/hf_logger.py exists (pushes benchmark_history.jsonl, baselines, run dirs) but has never run: the default repo_id points at a namespace that doesn't exist, and --push-hf in run_benchmark.py is gated behind --runs 4+ so N=1 spreads can't push at all.
  • scripts/export_site_data.py (PR feat: add export_site_data.py website fold-in exporter #43) already emits site_data.json — the exact machine-readable payload the dataset should carry.

Work

  • Point repo_id at the real dataset (env-overridable, e.g. HF_DATASET_REPO)
  • Drop/relax the --runs 4+ gate — N=1 content spreads are valid dataset entries when labeled as such
  • Dataset card generator: README.md with an auto-regenerated leaderboard table (from leaderboard.json), N=1 framing note, link to rle.appsprout.dev
  • Push site_data.json + leaderboard.json + per-run summaries/CSVs alongside history and baselines (exclude raw video/media)
  • Standalone scripts/push_hf.py so an existing spread dir can be pushed without re-running the benchmark
  • Backfill: v0.3.0 validation spread (2026-06-11) + static baseline as the inaugural dataset
  • Later: Gradio leaderboard Space reading the dataset (HF discovery surface)

Notes

Auth via HF_TOKEN. Real OpenRouter billed costs now flow automatically (PR #44), so future pushes carry ground-truth real_cost_usd without hand-patching.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions