bridge.data.datasets.preference_pair#
Module Contents#
Classes#
Preference-pair dataset that tokenizes rows on fetch. |
Data#
API#
- bridge.data.datasets.preference_pair.logger#
‘getLogger(…)’
- class bridge.data.datasets.preference_pair.PreferencePairDataset(
- source: collections.abc.Sequence[collections.abc.Mapping[str, Any]],
- tokenizer,
- max_seq_length: int,
- pad_token_id: int | None = None,
- pad_seq_length_to_mult: int = 1,
- chosen_key: str = 'chosen',
- rejected_key: str = 'rejected',
- prompt_key: str | None = None,
- tools_key: str | None = None,
- chat_template_kwargs: collections.abc.Mapping[str, Any] | None = None,
- ref_logprobs: collections.abc.Mapping[int, collections.abc.Mapping[str, Any]] | None = None,
Bases:
torch.utils.data.DatasetPreference-pair dataset that tokenizes rows on fetch.
Fields may be message lists or plain strings; nothing is tokenized at init, and each
__getitem__runs the chat template on that pair.__len__must stay fixed for the sampler, so invalid pairs are not dropped - they are emitted as two-token stubs withloss_multiplier=0.0and contribute nothing to the loss.pair_idis the source row index, which is whatref_logprobs(the scorer’s output) is keyed by.Initialization
- __len__() int#
- _stub_record(idx: int, reason: str) dict[str, Any]#
- __getitem__(idx: int) dict[str, Any]#