[Feature] specify model in config.yaml (#14855)

Signed-off-by: weizeng <weizeng@roblox.com>
This commit is contained in:
Wei Zeng
2025-03-21 00:26:03 -07:00
committed by GitHub
parent da6ea29f7a
commit 0fa3970deb
7 changed files with 102 additions and 30 deletions

View File

@@ -21,14 +21,16 @@ class ServeSubcommand(CLISubcommand):
@staticmethod
def cmd(args: argparse.Namespace) -> None:
# The default value of `--model`
if args.model != EngineArgs.model:
raise ValueError(
"With `vllm serve`, you should provide the model as a "
"positional argument instead of via the `--model` option.")
# If model is specified in CLI (as positional arg), it takes precedence
if hasattr(args, 'model_tag') and args.model_tag is not None:
args.model = args.model_tag
# Otherwise use model from config (already in args.model)
# EngineArgs expects the model name to be passed as --model.
args.model = args.model_tag
# Check if we have a model specified somewhere
if args.model == EngineArgs.model: # Still has default value
raise ValueError(
"With `vllm serve`, you should provide the model either as a "
"positional argument or in config file.")
uvloop.run(run_server(args))
@@ -41,10 +43,12 @@ class ServeSubcommand(CLISubcommand):
serve_parser = subparsers.add_parser(
"serve",
help="Start the vLLM OpenAI Compatible API server",
usage="vllm serve <model_tag> [options]")
usage="vllm serve [model_tag] [options]")
serve_parser.add_argument("model_tag",
type=str,
help="The model tag to serve")
nargs='?',
help="The model tag to serve "
"(optional if specified in config)")
serve_parser.add_argument(
"--config",
type=str,