Spaces:
Running
Running
| title: Oolong Viewer | |
| emoji: π΅ | |
| colorFrom: yellow | |
| colorTo: gray | |
| sdk: static | |
| pinned: false | |
| license: mit | |
| # Oolong Viewer | |
| Static viewer for [**Oolong**](https://github.com/abertsch72/oolong) | |
| ([paper](https://arxiv.org/abs/2511.02817), | |
| [HF datasets](https://huggingface.co/oolongbench)) β a benchmark for **long-context | |
| reasoning and aggregation**, where a model must reason over a single very long | |
| context window (up to ~132K tokens) to answer counting / timeline / comparison | |
| style questions. | |
| Two datasets, selectable at the top of the sidebar: | |
| - **`synth`** β [oolong-synth](https://huggingface.co/datasets/oolongbench/oolong-synth): | |
| synthetic contexts built from labeled NLP datasets (agnews, imdb, metaphors, β¦). | |
| 6,500 questions over 208 context windows. | |
| - **`real`** β [oolong-real](https://huggingface.co/datasets/oolongbench/oolong-real) | |
| `toy_dnd` config: Critical Role Dungeons & Dragons transcripts (campaign1 = test, | |
| campaign2 = validation). 949 questions over 22 context windows. | |
| Two tabs: | |
| - **π Corpus** β the context windows (the long documents). A dropdown selects a | |
| context **by title** (filter by title text, or prev/next). Each shows its | |
| metadata (source dataset / campaign / episodes, token length, how many | |
| questions use it, `context_window_id`) and its full text. Context windows are | |
| reused across many questions, so the corpus is far smaller than the question set. | |
| - **β Eval** β the questions. A dropdown selects a **question** (search + one | |
| dropdown per dataset facet β task group / answer type / source, or question | |
| type / split / campaign). Each shows the question, the gold answer, its | |
| **supporting context window** (a clickable chip that jumps to it in the Corpus | |
| tab), and all remaining metadata. | |
| ## Long contexts are capped | |
| Oolong is a long-context benchmark: some context windows are up to ~14 MB of | |
| text. To keep the viewer responsive and every file under Hugging Face's 10 MB | |
| non-LFS limit, each context-window shard is **capped at 2 MB** (with a | |
| `truncated in viewer` note); the full contexts live on the HF datasets. The | |
| `context_window_text_with_labels` variant (synth) is not included. | |
| ## Data layout | |
| | File | Contents | | |
| |---|---| | |
| | `sets.json` | manifest: per-set question/context counts + filter `facets` | | |
| | `corpus_<set>.json` | context-window **index**: `{cwid, title, size, truncated, n_questions, file, β¦}` | | |
| | `corpus_<set>/*.txt` | one (capped) context-window **shard**, lazy-loaded | | |
| | `eval_<set>.json` | questions: `{id, context_window_id, question, answer, meta{β¦}}` | | |
| ## Rebuilding the data | |
| ```bash | |
| python scripts/build_data.py --data-dir /mnt/tmp/oolong | |
| ``` | |
| Reads the downloaded `oolong-synth/` (parquet) + `oolong-real/toy_dnd/` (jsonl), | |
| dedupes context windows into shards, projects the questions, and rewrites | |
| `corpus_<set>.json` + `corpus_<set>/` + `eval_<set>.json` + `sets.json`. The raw | |
| datasets (12 GB / 1.4 GB) are **not** committed here. Use `--only synth|real` to | |
| rebuild a single set. | |
| ## Local dev | |
| ```bash | |
| python -m http.server 8000 # then open http://localhost:8000/ | |
| ``` | |
| Serves statically β no build step. Push to the HF Space remote to deploy. | |
| Dataset license: see the Oolong repo / dataset cards. | |