in optimum_benchmark/scenarios/inference/config.py [0:0]
def __post_init__(self):
super().__post_init__()
self.input_shapes = {**INPUT_SHAPES, **self.input_shapes}
if self.new_tokens is not None:
LOGGER.warning(
"`new_tokens` is deprecated. Use `max_new_tokens` and `min_new_tokens` instead. "
"Setting `max_new_tokens` and `min_new_tokens` to `new_tokens`."
)
self.generate_kwargs["max_new_tokens"] = self.new_tokens
self.generate_kwargs["min_new_tokens"] = self.new_tokens
if (
"max_new_tokens" in self.generate_kwargs
and "min_new_tokens" in self.generate_kwargs
and self.generate_kwargs["max_new_tokens"] != self.generate_kwargs["min_new_tokens"]
):
raise ValueError(
"Setting `min_new_tokens` and `max_new_tokens` to different values results in non-deterministic behavior."
)
elif "max_new_tokens" in self.generate_kwargs and "min_new_tokens" not in self.generate_kwargs:
LOGGER.warning(
"Setting `max_new_tokens` without `min_new_tokens` results in non-deterministic behavior. "
"Setting `min_new_tokens` to `max_new_tokens`."
)
self.generate_kwargs["min_new_tokens"] = self.generate_kwargs["max_new_tokens"]
elif "min_new_tokens" in self.generate_kwargs and "max_new_tokens" not in self.generate_kwargs:
LOGGER.warning(
"Setting `min_new_tokens` without `max_new_tokens` results in non-deterministic behavior. "
"Setting `max_new_tokens` to `min_new_tokens`."
)
self.generate_kwargs["max_new_tokens"] = self.generate_kwargs["min_new_tokens"]
if self.energy and is_rocm_system():
raise ValueError("Energy measurement through codecarbon is not yet available on ROCm-powered devices.")