Compare commits

..

1 Commits

Author SHA1 Message Date
ef412c4657 [Frontend] change default log request behavior 2025-07-17 14:51:19 -07:00
5 changed files with 38 additions and 31 deletions

View File

@ -253,7 +253,7 @@ export https_proxy=http://your.proxy.server:port
https_proxy=http://your.proxy.server:port huggingface-cli download <model_name>
# or use vllm cmd directly
https_proxy=http://your.proxy.server:port vllm serve <model_name> --disable-log-requests
https_proxy=http://your.proxy.server:port vllm serve <model_name>
```
- Set the proxy in Python interpreter:

View File

@ -290,6 +290,22 @@ def test_prefix_cache_default():
assert not engine_args.enable_prefix_caching
def test_log_request_default_and_legacy_flag(caplog_vllm):
parser = AsyncEngineArgs.add_cli_args(FlexibleArgumentParser())
args = parser.parse_args([])
caplog_vllm.clear()
engine_args = AsyncEngineArgs.from_cli_args(args=args)
assert engine_args.disable_log_requests
assert "--disable-log-requests" in caplog_vllm.text
caplog_vllm.clear()
args = parser.parse_args(["--enable-legacy-log-requests"])
engine_args = AsyncEngineArgs.from_cli_args(args=args)
assert not engine_args.disable_log_requests
assert caplog_vllm.text == ""
# yapf: disable
@pytest.mark.parametrize(("arg", "expected", "option"), [
(None, None, "mm-processor-kwargs"),

View File

@ -881,6 +881,17 @@ class EngineArgs:
attrs = [attr.name for attr in dataclasses.fields(cls)]
# Set the attributes from the parsed arguments.
engine_args = cls(**{attr: getattr(args, attr) for attr in attrs})
if isinstance(engine_args, AsyncEngineArgs):
if getattr(args, 'disable_log_requests', False):
engine_args.disable_log_requests = True
elif getattr(args, 'enable_legacy_log_requests', False):
engine_args.disable_log_requests = False
else:
engine_args.disable_log_requests = True
logger.warning(
"'--disable-log-requests' is now enabled by default. "
"Use --enable-legacy-log-requests to restore the previous "
"request logging behavior.")
return engine_args
def create_model_config(self) -> ModelConfig:
@ -1701,10 +1712,6 @@ class EngineArgs:
@dataclass
class AsyncEngineArgs(EngineArgs):
"""Arguments for asynchronous vLLM engine."""
# Request logging is disabled by default. ``--disable-log-requests`` is
# kept for backwards compatibility but has no effect. ``--enable-legacy-
# log-requests`` can be used to restore the previous behaviour of logging
# each request.
disable_log_requests: bool = True
enable_legacy_log_requests: bool = False
@ -1719,34 +1726,13 @@ class AsyncEngineArgs(EngineArgs):
parser = EngineArgs.add_cli_args(parser)
parser.add_argument('--disable-log-requests',
action='store_true',
default=None,
help='[DEPRECATED] Request logging is disabled by '
'default.')
help='Disable logging requests.')
parser.add_argument('--enable-legacy-log-requests',
action='store_true',
help='Enable legacy request logging behavior.')
current_platform.pre_register_and_update(parser)
return parser
@classmethod
def from_cli_args(cls, args: argparse.Namespace):
engine_args = super().from_cli_args(args)
if args.enable_legacy_log_requests:
engine_args.disable_log_requests = False
else:
if args.disable_log_requests is None:
logger.warning(
"Request logging is disabled by default. Use "
"--enable-legacy-log-requests to restore the previous "
"behaviour.")
engine_args.disable_log_requests = True
else:
engine_args.disable_log_requests = True
engine_args.enable_legacy_log_requests = args.enable_legacy_log_requests
return engine_args
def _raise_or_fallback(feature_name: str, recommend_to_remove: bool):
if envs.is_set("VLLM_USE_V1") and envs.VLLM_USE_V1:

View File

@ -1448,13 +1448,14 @@ async def init_app_state(
vllm_config: VllmConfig,
state: State,
args: Namespace,
engine_args: AsyncEngineArgs,
) -> None:
if args.served_model_name is not None:
served_model_names = args.served_model_name
else:
served_model_names = [args.model]
if args.disable_log_requests:
if engine_args.disable_log_requests:
request_logger = None
else:
request_logger = RequestLogger(max_log_len=args.max_log_len)
@ -1704,12 +1705,16 @@ async def run_server_worker(listen_address,
if log_config is not None:
uvicorn_kwargs['log_config'] = log_config
async with build_async_engine_client(args, client_config) as engine_client:
engine_args = AsyncEngineArgs.from_cli_args(args)
async with build_async_engine_client_from_engine_args(
engine_args, args.disable_frontend_multiprocessing,
client_config) as engine_client:
maybe_register_tokenizer_info_endpoint(args)
app = build_app(args)
vllm_config = await engine_client.get_vllm_config()
await init_app_state(engine_client, vllm_config, app.state, args)
await init_app_state(engine_client, vllm_config, app.state, args,
engine_args)
logger.info("Starting vLLM API server %d on %s", server_index,
listen_address)

View File

@ -326,7 +326,7 @@ async def main(args):
for name in served_model_names
]
if args.disable_log_requests:
if engine_args.disable_log_requests:
request_logger = None
else:
request_logger = RequestLogger(max_log_len=args.max_log_len)