MCPcopy
hub / github.com/mosaicml/composer / ensure_evaluator

Function ensure_evaluator

composer/core/evaluator.py:123–142  ·  view source on GitHub ↗

Ensure that ``evaluator`` is an :class:`.Evaluator`. Args: evaluator (Evaluator | DataSpec | Iterable | dict[str, Any]): A dataloader, :class:`.DataSpec` instance, dictionary of :class:`.DataSpec` kwargs, or existing evaluator. default_metric_names (list[str]): The n

(evaluator: Union[Evaluator, DataSpec, Iterable, dict[str, Any]], default_metric_names: list[str])

Source from the content-addressed store, hash-verified

121
122
123def ensure_evaluator(evaluator: Union[Evaluator, DataSpec, Iterable, dict[str, Any]], default_metric_names: list[str]):
124 """Ensure that ``evaluator`` is an :class:`.Evaluator`.
125
126 Args:
127 evaluator (Evaluator | DataSpec | Iterable | dict[str, Any]): A dataloader,
128 :class:`.DataSpec` instance, dictionary of :class:`.DataSpec` kwargs, or existing evaluator.
129 default_metric_names (list[str]): The names of the metrics for the ``evaluator``,
130 if a dataloader was specified.
131
132 Returns:
133 Evaluator: An evaluator.
134 """
135 if isinstance(evaluator, Evaluator):
136 return evaluator
137 else:
138 return Evaluator(
139 label='eval',
140 dataloader=evaluator,
141 metric_names=default_metric_names,
142 )
143
144
145def _is_auto_microbatching(device_eval_microbatch_size: Optional[Union[int, str, float]]):

Callers 3

__init__Method · 0.90
fitMethod · 0.90
evalMethod · 0.90

Calls 1

EvaluatorClass · 0.85

Tested by

no test coverage detected