[Easy] Add str repr for IterationStats (#26232)

Signed-off-by: 22quinn <33176974+22quinn@users.noreply.github.com>
This commit is contained in:
22quinn
2025-10-04 22:00:21 -07:00
committed by GitHub
parent 59a85c366e
commit 78c1d5bfd2
2 changed files with 26 additions and 0 deletions

View File

@ -0,0 +1,21 @@
# SPDX-License-Identifier: Apache-2.0
# SPDX-FileCopyrightText: Copyright contributors to the vLLM project
from vllm.v1.metrics.stats import IterationStats
def test_iteration_stats_repr():
iteration_stats = IterationStats()
iteration_stats.iteration_timestamp = 0
expected_repr = ("IterationStats("
"iteration_timestamp=0, "
"num_generation_tokens=0, "
"num_prompt_tokens=0, "
"num_preempted_reqs=0, "
"finished_requests=[], "
"max_num_generation_tokens_iter=[], "
"n_params_iter=[], "
"time_to_first_tokens_iter=[], "
"inter_token_latencies_iter=[], "
"waiting_lora_adapters={}, "
"running_lora_adapters={})")
assert repr(iteration_stats) == expected_repr

View File

@ -111,6 +111,11 @@ class IterationStats:
self.waiting_lora_adapters: dict[str, int] = {}
self.running_lora_adapters: dict[str, int] = {}
def __repr__(self) -> str:
field_to_value_str = ", ".join(f"{k}={v}"
for k, v in vars(self).items())
return f"{self.__class__.__name__}({field_to_value_str})"
def _time_since(self, start: float) -> float:
"""Calculate an interval relative to this iteration's timestamp."""
return self.iteration_timestamp - start