feat: support workers in run config (#4014)

Cherry-pick of #3992 to release-0.3.x

Adds support for configuring the number of workers in run.yaml
configuration files.

Co-authored-by: ehhuang <ehhuang@users.noreply.github.com>
This commit is contained in:
Ashwin Bharambe 2025-10-31 13:48:55 -07:00 committed by GitHub
parent b088665227
commit 9f1e4a07c9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 6 additions and 1 deletions

View file

@ -128,7 +128,7 @@ class StackRun(Subcommand):
config = StackRunConfig(**cast_image_name_to_string(replace_env_vars(config_contents))) config = StackRunConfig(**cast_image_name_to_string(replace_env_vars(config_contents)))
port = args.port or config.server.port port = args.port or config.server.port
host = config.server.host or ["::", "0.0.0.0"] host = config.server.host or "0.0.0.0"
# Set the config file in environment so create_app can find it # Set the config file in environment so create_app can find it
os.environ["LLAMA_STACK_CONFIG"] = str(config_file) os.environ["LLAMA_STACK_CONFIG"] = str(config_file)
@ -140,6 +140,7 @@ class StackRun(Subcommand):
"lifespan": "on", "lifespan": "on",
"log_level": logger.getEffectiveLevel(), "log_level": logger.getEffectiveLevel(),
"log_config": logger_config, "log_config": logger_config,
"workers": config.server.workers,
} }
keyfile = config.server.tls_keyfile keyfile = config.server.tls_keyfile

View file

@ -471,6 +471,10 @@ class ServerConfig(BaseModel):
"- true: Enable localhost CORS for development\n" "- true: Enable localhost CORS for development\n"
"- {allow_origins: [...], allow_methods: [...], ...}: Full configuration", "- {allow_origins: [...], allow_methods: [...], ...}: Full configuration",
) )
workers: int = Field(
default=1,
description="Number of workers to use for the server",
)
class StackRunConfig(BaseModel): class StackRunConfig(BaseModel):