Skip to content

Commit cdddb8e

Browse files
eicherseijidshepelev15
authored andcommitted
[Serve.llm][Bugfix] Allow users to enable log_stats (ray-project#54719)
Signed-off-by: Seiji Eicher <[email protected]> Signed-off-by: dshepelev15 <[email protected]>
1 parent 69bb0f3 commit cdddb8e

File tree

3 files changed

+24
-9
lines changed

3 files changed

+24
-9
lines changed

python/ray/llm/_internal/serve/configs/server_models.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
PositiveInt,
1919
PrivateAttr,
2020
field_validator,
21+
model_validator,
2122
)
2223

2324
import ray
@@ -311,6 +312,17 @@ def validate_deployment_config(cls, value: Dict[str, Any]) -> Dict[str, Any]:
311312

312313
return value
313314

315+
@model_validator(mode="after")
316+
def _check_log_stats_with_metrics(self):
317+
# Require disable_log_stats is not set to True when log_engine_metrics is enabled.
318+
if self.log_engine_metrics and self.engine_kwargs.get("disable_log_stats"):
319+
raise ValueError(
320+
"disable_log_stats cannot be set to True when log_engine_metrics is enabled. "
321+
"Engine metrics require log stats to be enabled."
322+
)
323+
324+
return self
325+
314326
def multiplex_config(self) -> ServeMultiplexConfig:
315327
multiplex_config = None
316328
if self.lora_config:

python/ray/llm/_internal/serve/deployments/llm/vllm/vllm_models.py

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -136,15 +136,6 @@ def get_initialization_kwargs(self) -> dict:
136136
else:
137137
engine_kwargs["distributed_executor_backend"] = "ray"
138138

139-
if (
140-
"disable_log_stats" in engine_kwargs
141-
and not engine_kwargs["disable_log_stats"]
142-
):
143-
logger.warning(
144-
"disable_log_stats = False is not allowed in engine_kwargs when using Ray Serve LLM Configs. Setting it to True."
145-
)
146-
engine_kwargs["disable_log_stats"] = True
147-
148139
return engine_kwargs
149140

150141
def get_runtime_env_with_local_env_vars(self) -> dict:

python/ray/llm/tests/serve/cpu/configs/test_models.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -273,6 +273,18 @@ def test_experimental_configs(self):
273273
experimental_configs={123: "value1"},
274274
)
275275

276+
def test_log_engine_metrics_disable_log_stats_validation(self):
277+
"""Test that log_engine_metrics=True prevents disable_log_stats=True."""
278+
with pytest.raises(
279+
pydantic.ValidationError,
280+
match="disable_log_stats cannot be set to True when log_engine_metrics is enabled",
281+
):
282+
LLMConfig(
283+
model_loading_config=ModelLoadingConfig(model_id="test_model"),
284+
log_engine_metrics=True,
285+
engine_kwargs={"disable_log_stats": True},
286+
)
287+
276288

277289
if __name__ == "__main__":
278290
sys.exit(pytest.main(["-v", __file__]))

0 commit comments

Comments
 (0)