File tree Expand file tree Collapse file tree 3 files changed +14
-3
lines changed Expand file tree Collapse file tree 3 files changed +14
-3
lines changed Original file line number Diff line number Diff line change @@ -10,6 +10,9 @@ include = ["*"]
1010[tool .setuptools .package-data ]
1111"guidellm.data" = [" *.gz" ]
1212
13+ [tool .pdm ]
14+ distribution = true
15+
1316
1417# ************************************************
1518# ********** Project Metadata **********
@@ -70,6 +73,10 @@ perf = [
7073 " msgspec" ,
7174 " uvloop" ,
7275]
76+ recommended = [
77+ " tiktoken>=0.11.0" , # For OpenAI tokenizer
78+ " blobfile>=3.1.0" , # For OpenAI tokenizer
79+ ]
7380dev = [
7481 # build
7582 " build>=1.0.0" ,
@@ -110,6 +117,9 @@ dev = [
110117 " mkdocs-linkcheck~=1.0.6" ,
111118]
112119
120+ [dependency-groups ]
121+ dev = [ " guidellm[dev]" ]
122+
113123[project .urls ]
114124homepage = " https://github.com/vllm-project/guidellm"
115125source = " https://github.com/vllm-project/guidellm"
Original file line number Diff line number Diff line change @@ -441,7 +441,7 @@ def __call__(
441441
442442 def compile (
443443 self , state : AggregatorState , scheduler_state : SchedulerState
444- ) -> dict [Literal ["scheduler_stats " ], BenchmarkSchedulerStats ]:
444+ ) -> dict [Literal ["run_stats " ], BenchmarkSchedulerStats ]:
445445 """
446446 Compile scheduler timing metrics into benchmark statistics.
447447
@@ -473,7 +473,7 @@ def compile(
473473 key = "worker_resolve_time" , type_ = "avg" , default = 0.0
474474 ),
475475 worker_resolve_end_delay_avg = state .get_metric (
476- key = "worker_resolve_end_delay" , type_ = "avg"
476+ key = "worker_resolve_end_delay" , type_ = "avg" , default = 0.0
477477 ),
478478 finalized_delay_avg = state .get_metric (
479479 key = "finalized_delay" , type_ = "avg" , default = 0.0
Original file line number Diff line number Diff line change @@ -680,6 +680,8 @@ def next_strategy(
680680 self .throughput_rate = (
681681 prev_benchmark .metrics .requests_per_second .successful .mean
682682 )
683+ if self .synchronous_rate <= 0 and self .throughput_rate <= 0 :
684+ raise RuntimeError ("Invalid rates in sweep; aborting. Were there any successful requests?" )
683685 self .measured_rates = list (
684686 np .linspace (
685687 self .synchronous_rate ,
@@ -698,7 +700,6 @@ def next_strategy(
698700 if strat .type_ == self .strategy_type
699701 ]
700702 )
701-
702703 if self .strategy_type == "constant" :
703704 return AsyncConstantStrategy (
704705 rate = self .measured_rates [next_rate_index ],
You can’t perform that action at this time.
0 commit comments