feat: add Oolong benchmark example with recursive rollouts#34
Open
alt-glitch wants to merge 1 commit intoalexzhang13:mainfrom
Open
feat: add Oolong benchmark example with recursive rollouts#34alt-glitch wants to merge 1 commit intoalexzhang13:mainfrom
alt-glitch wants to merge 1 commit intoalexzhang13:mainfrom
Conversation
Adds an example demonstrating recursive RLM rollouts on the Oolong benchmark. Previously, examples lacked coverage of recursive calls. - Loads context and question from oolongbench/oolong-real dataset - Runs RLM completion with logging enabled - Validates response against expected answer
87757d3 to
6367b6d
Compare
ShaneIsley
pushed a commit
to ShaneIsley/rlm
that referenced
this pull request
Jan 14, 2026
Adds an example demonstrating recursive RLM rollouts on the Oolong benchmark. Previously, examples lacked coverage of recursive calls. - Loads context and question from oolongbench/oolong-real dataset - Runs RLM completion with logging enabled - Validates response against expected answer Original-Author: alt-glitch (balyan.sid@gmail.com) Upstream-PR: alexzhang13#34
Comment on lines
+25
to
+29
| def load_oolong_row(index: int = 1) -> dict: | ||
| """Load a single row from the Oolong benchmark.""" | ||
| streaming_ds = load_dataset("oolongbench/oolong-real", "toy_dnd", split="test", streaming=True) | ||
| row = next(islice(streaming_ds, index, index + 1)) | ||
| return row |
There was a problem hiding this comment.
Suggested change
| def load_oolong_row(index: int = 1) -> dict: | |
| """Load a single row from the Oolong benchmark.""" | |
| streaming_ds = load_dataset("oolongbench/oolong-real", "toy_dnd", split="test", streaming=True) | |
| row = next(islice(streaming_ds, index, index + 1)) | |
| return row | |
| def cp1252_fix(row: dict | str) -> dict | str: | |
| """Fixes cp1252 encoding issues in dataset rows.""" | |
| if isinstance(row, dict): | |
| for key, value in row.items(): | |
| if isinstance(value, str): | |
| row[key] = value.encode('cp1252','replace').decode('cp1252') | |
| else: | |
| row = row.encode('cp1252','replace').decode('cp1252') | |
| return row | |
| def load_oolong_row(index: int = 1) -> dict: | |
| """Load a single row from the Oolong benchmark.""" | |
| streaming_ds = load_dataset("oolongbench/oolong-real", "toy_dnd", split="test", streaming=True) | |
| row = next(islice(streaming_ds, index, index + 1)) | |
| return cp1252_fix(row) |
Thanks for sharing this example! I noticed that cp1252 decoding is broken on windows, so here's a quick fix for that.
fundthmcalculus
approved these changes
Jan 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
hey @alexzhang13! adding an example from oolong bench to the
examples/.running this gives a proper RLM rollout that people can look at and play with.
PR Summary
oolongbench/oolong-realdataset