Skip to content

dataset

genlm.eval.core.dataset

Instance

Bases: BaseModel

Base class for dataset instances that conform to a Pydantic schema.

Source code in genlm/eval/core/dataset.py
6
7
8
9
class Instance(BaseModel):
    """Base class for dataset instances that conform to a Pydantic schema."""

    instance_id: Union[int, str]

Dataset

Bases: Generic[T], ABC

Base class for datasets that yield instances conforming to a Pydantic schema.

Source code in genlm/eval/core/dataset.py
class Dataset(Generic[T], ABC):
    """Base class for datasets that yield instances conforming to a Pydantic schema."""

    @abstractmethod
    def __iter__(self) -> Iterator[T]:
        """Iterate over dataset instances.

        Returns:
            Iterator[T]: An iterator over instances conforming to schema T.
        """
        pass  # pragma: no cover

    @property
    @abstractmethod
    def schema(self) -> type[T]:
        """Get the Pydantic schema class for this dataset.

        Returns:
            type[T]: The Pydantic model class defining the schema.
        """
        pass  # pragma: no cover

__iter__() abstractmethod

Iterate over dataset instances.

Returns:

Type Description
Iterator[T]

Iterator[T]: An iterator over instances conforming to schema T.

Source code in genlm/eval/core/dataset.py
@abstractmethod
def __iter__(self) -> Iterator[T]:
    """Iterate over dataset instances.

    Returns:
        Iterator[T]: An iterator over instances conforming to schema T.
    """
    pass  # pragma: no cover

schema abstractmethod property

Get the Pydantic schema class for this dataset.

Returns:

Type Description
type[T]

type[T]: The Pydantic model class defining the schema.