Skip to content

Commit b3d8210

Browse files
authored
[Bugfix][Frontend] Fix openai CLI arg middleware (#21220)
Signed-off-by: 22quinn <[email protected]>
1 parent 6d0734c commit b3d8210

File tree

2 files changed

+14
-0
lines changed

2 files changed

+14
-0
lines changed

tests/entrypoints/openai/test_cli_args.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,3 +153,13 @@ def test_chat_template_validation_for_sad_paths(serve_parser):
153153
args = serve_parser.parse_args(args=["--chat-template", "does/not/exist"])
154154
with pytest.raises(ValueError):
155155
validate_parsed_serve_args(args)
156+
157+
158+
@pytest.mark.parametrize(
159+
"cli_args, expected_middleware",
160+
[(["--middleware", "middleware1", "--middleware", "middleware2"
161+
], ["middleware1", "middleware2"]), ([], [])])
162+
def test_middleware(serve_parser, cli_args, expected_middleware):
163+
"""Ensure multiple middleware args are parsed properly"""
164+
args = serve_parser.parse_args(args=cli_args)
165+
assert args.middleware == expected_middleware

vllm/entrypoints/openai/cli_args.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -215,6 +215,10 @@ def add_cli_args(parser: FlexibleArgumentParser) -> FlexibleArgumentParser:
215215

216216
# Special case: Middleware needs append action
217217
frontend_kwargs["middleware"]["action"] = "append"
218+
frontend_kwargs["middleware"]["type"] = str
219+
if "nargs" in frontend_kwargs["middleware"]:
220+
del frontend_kwargs["middleware"]["nargs"]
221+
frontend_kwargs["middleware"]["default"] = []
218222

219223
# Special case: Tool call parser shows built-in options.
220224
valid_tool_parsers = list(ToolParserManager.tool_parsers.keys())

0 commit comments

Comments
 (0)