fix(api): load lists without empty items
This commit is contained in:
parent
44a23a6366
commit
9e930a91d5
|
@ -5,7 +5,7 @@ from typing import List, Optional
|
||||||
|
|
||||||
import torch
|
import torch
|
||||||
|
|
||||||
from ..utils import get_boolean
|
from ..utils import get_boolean, get_list
|
||||||
from .model_cache import ModelCache
|
from .model_cache import ModelCache
|
||||||
|
|
||||||
logger = getLogger(__name__)
|
logger = getLogger(__name__)
|
||||||
|
@ -106,20 +106,19 @@ class ServerContext:
|
||||||
model_path=environ.get("ONNX_WEB_MODEL_PATH", path.join("..", "models")),
|
model_path=environ.get("ONNX_WEB_MODEL_PATH", path.join("..", "models")),
|
||||||
output_path=environ.get("ONNX_WEB_OUTPUT_PATH", path.join("..", "outputs")),
|
output_path=environ.get("ONNX_WEB_OUTPUT_PATH", path.join("..", "outputs")),
|
||||||
params_path=environ.get("ONNX_WEB_PARAMS_PATH", "."),
|
params_path=environ.get("ONNX_WEB_PARAMS_PATH", "."),
|
||||||
# others
|
cors_origin=get_list(environ, "ONNX_WEB_CORS_ORIGIN", "*"),
|
||||||
cors_origin=environ.get("ONNX_WEB_CORS_ORIGIN", "*").split(","),
|
|
||||||
any_platform=get_boolean(
|
any_platform=get_boolean(
|
||||||
environ, "ONNX_WEB_ANY_PLATFORM", DEFAULT_ANY_PLATFORM
|
environ, "ONNX_WEB_ANY_PLATFORM", DEFAULT_ANY_PLATFORM
|
||||||
),
|
),
|
||||||
block_platforms=environ.get("ONNX_WEB_BLOCK_PLATFORMS", "").split(","),
|
block_platforms=get_list(environ, "ONNX_WEB_BLOCK_PLATFORMS", ""),
|
||||||
default_platform=environ.get("ONNX_WEB_DEFAULT_PLATFORM", None),
|
default_platform=environ.get("ONNX_WEB_DEFAULT_PLATFORM", None),
|
||||||
image_format=environ.get("ONNX_WEB_IMAGE_FORMAT", "png"),
|
image_format=environ.get("ONNX_WEB_IMAGE_FORMAT", DEFAULT_IMAGE_FORMAT),
|
||||||
cache_limit=int(environ.get("ONNX_WEB_CACHE_MODELS", DEFAULT_CACHE_LIMIT)),
|
cache_limit=int(environ.get("ONNX_WEB_CACHE_MODELS", DEFAULT_CACHE_LIMIT)),
|
||||||
show_progress=get_boolean(
|
show_progress=get_boolean(
|
||||||
environ, "ONNX_WEB_SHOW_PROGRESS", DEFAULT_SHOW_PROGRESS
|
environ, "ONNX_WEB_SHOW_PROGRESS", DEFAULT_SHOW_PROGRESS
|
||||||
),
|
),
|
||||||
optimizations=environ.get("ONNX_WEB_OPTIMIZATIONS", "").split(","),
|
optimizations=get_list(environ, "ONNX_WEB_OPTIMIZATIONS", ""),
|
||||||
extra_models=environ.get("ONNX_WEB_EXTRA_MODELS", "").split(","),
|
extra_models=get_list(environ, "ONNX_WEB_EXTRA_MODELS", ""),
|
||||||
job_limit=int(environ.get("ONNX_WEB_JOB_LIMIT", DEFAULT_JOB_LIMIT)),
|
job_limit=int(environ.get("ONNX_WEB_JOB_LIMIT", DEFAULT_JOB_LIMIT)),
|
||||||
memory_limit=memory_limit,
|
memory_limit=memory_limit,
|
||||||
admin_token=environ.get("ONNX_WEB_ADMIN_TOKEN", None),
|
admin_token=environ.get("ONNX_WEB_ADMIN_TOKEN", None),
|
||||||
|
@ -129,8 +128,8 @@ class ServerContext:
|
||||||
worker_retries=int(
|
worker_retries=int(
|
||||||
environ.get("ONNX_WEB_WORKER_RETRIES", DEFAULT_WORKER_RETRIES)
|
environ.get("ONNX_WEB_WORKER_RETRIES", DEFAULT_WORKER_RETRIES)
|
||||||
),
|
),
|
||||||
feature_flags=environ.get("ONNX_WEB_FEATURE_FLAGS", "").split(","),
|
feature_flags=get_list(environ, "ONNX_WEB_FEATURE_FLAGS", ""),
|
||||||
plugins=environ.get("ONNX_WEB_PLUGINS", "").split(","),
|
plugins=get_list(environ, "ONNX_WEB_PLUGINS", ""),
|
||||||
debug=get_boolean(environ, "ONNX_WEB_DEBUG", False),
|
debug=get_boolean(environ, "ONNX_WEB_DEBUG", False),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -18,6 +18,11 @@ logger = getLogger(__name__)
|
||||||
SAFE_CHARS = "._-"
|
SAFE_CHARS = "._-"
|
||||||
|
|
||||||
|
|
||||||
|
def split_list(val: str) -> List[str]:
|
||||||
|
parts = [part.strip() for part in val.split(",")]
|
||||||
|
return [part for part in parts if len(part.strip()) > 0]
|
||||||
|
|
||||||
|
|
||||||
def base_join(base: str, tail: str) -> str:
|
def base_join(base: str, tail: str) -> str:
|
||||||
tail_path = path.relpath(path.normpath(path.join("/", tail)), "/")
|
tail_path = path.relpath(path.normpath(path.join("/", tail)), "/")
|
||||||
return path.join(base, tail_path)
|
return path.join(base, tail_path)
|
||||||
|
@ -36,6 +41,10 @@ def get_boolean(args: Any, key: str, default_value: bool) -> bool:
|
||||||
return val.lower() in ("1", "t", "true", "y", "yes")
|
return val.lower() in ("1", "t", "true", "y", "yes")
|
||||||
|
|
||||||
|
|
||||||
|
def get_list(args: Any, key: str) -> List[str]:
|
||||||
|
return split_list(args.get(key, ""))
|
||||||
|
|
||||||
|
|
||||||
def get_and_clamp_float(
|
def get_and_clamp_float(
|
||||||
args: Any, key: str, default_value: float, max_value: float, min_value=0.0
|
args: Any, key: str, default_value: float, max_value: float, min_value=0.0
|
||||||
) -> float:
|
) -> float:
|
||||||
|
|
Loading…
Reference in New Issue