Skip to content

BBH

get_input_data_model()

Returns BBH (boolean_expressions) input data model.

Source code in synalinks/src/datasets/built_in/bbh.py
@synalinks_export("synalinks.datasets.bbh.get_input_data_model")
def get_input_data_model():
    """Returns BBH (boolean_expressions) input data model."""
    return BBHBooleanQuestion

get_output_data_model()

Returns BBH (boolean_expressions) output data model.

Source code in synalinks/src/datasets/built_in/bbh.py
@synalinks_export("synalinks.datasets.bbh.get_output_data_model")
def get_output_data_model():
    """Returns BBH (boolean_expressions) output data model."""
    return BBHBooleanAnswer

iterable_dataset(repeat=1, batch_size=1, limit=None, split='test')

Streaming dataset for RL-style training.

Parameters:

Name Type Description Default
repeat int

Number of consecutive copies of each row — set equal to batch_size for GRPO-style rollouts.

1
batch_size int

Examples per yielded batch.

1
limit int

Optional cap on raw rows (useful for smoke tests).

None
split str

HF split to stream. Defaults to "test" (the only labeled split BBH ships).

'test'

Returns:

Type Description
HuggingFaceDataset

A streaming, iterable dataset.

Source code in synalinks/src/datasets/built_in/bbh.py
@synalinks_export("synalinks.datasets.bbh.iterable_dataset")
def iterable_dataset(repeat=1, batch_size=1, limit=None, split="test"):
    """
    Streaming dataset for RL-style training.

    Args:
        repeat (int): Number of consecutive copies of each row — set
            equal to ``batch_size`` for GRPO-style rollouts.
        batch_size (int): Examples per yielded batch.
        limit (int): Optional cap on raw rows (useful for smoke tests).
        split (str): HF split to stream. Defaults to ``"test"`` (the
            only labeled split BBH ships).

    Returns:
        (HuggingFaceDataset): A streaming, iterable dataset.
    """
    return HuggingFaceDataset(
        path="lukaemon/bbh",
        name="boolean_expressions",
        split=split,
        streaming=True,
        input_data_model=BBHBooleanQuestion,
        input_template=_INPUT_TEMPLATE,
        output_data_model=BBHBooleanAnswer,
        output_template=_OUTPUT_TEMPLATE,
        batch_size=batch_size,
        limit=limit,
        repeat=repeat,
    )

load_data(validation_split=0.2)

Load BIG-Bench Hard (boolean_expressions task).

BBH ships only a test split (~250 rows per task), so we split it deterministically into train / test.

Parameters:

Name Type Description Default
validation_split float

Fraction held out for evaluation (default 0.2).

0.2

Returns:

Type Description
tuple

(x_train, y_train), (x_test, y_test).

Source code in synalinks/src/datasets/built_in/bbh.py
@synalinks_export("synalinks.datasets.bbh.load_data")
def load_data(validation_split=0.2):
    """
    Load BIG-Bench Hard (boolean_expressions task).

    BBH ships only a ``test`` split (~250 rows per task), so we split
    it deterministically into train / test.

    Args:
        validation_split (float): Fraction held out for evaluation
            (default ``0.2``).

    Returns:
        (tuple): ``(x_train, y_train), (x_test, y_test)``.
    """
    x, y = load_split(
        path="lukaemon/bbh",
        name="boolean_expressions",
        split="test",
        input_data_model=BBHBooleanQuestion,
        input_template=_INPUT_TEMPLATE,
        output_data_model=BBHBooleanAnswer,
        output_template=_OUTPUT_TEMPLATE,
    )
    return split_train_test(x, y, validation_split=validation_split)