diff --git a/api/onnx_web/convert/__main__.py b/api/onnx_web/convert/__main__.py index 8adc8370..272a1aac 100644 --- a/api/onnx_web/convert/__main__.py +++ b/api/onnx_web/convert/__main__.py @@ -546,7 +546,7 @@ def convert_models(conversion: ConversionContext, args, models: Models): logger.error("error while converting models: %s", model_errors) -def main() -> int: +def main(args = None) -> int: parser = ArgumentParser( prog="onnx-web model converter", description="convert checkpoint models to ONNX" ) @@ -582,7 +582,7 @@ def main() -> int: help="HuggingFace token with read permissions for downloading models.", ) - args = parser.parse_args() + args = args or parser.parse_args() logger.info("CLI arguments: %s", args) server = ConversionContext.from_environ() diff --git a/api/onnx_web/server/admin.py b/api/onnx_web/server/admin.py index 67a40676..ac106e9d 100644 --- a/api/onnx_web/server/admin.py +++ b/api/onnx_web/server/admin.py @@ -48,9 +48,10 @@ def update_extra_models(server: ServerContext): return make_response(jsonify({})), 401 extra_schema = load_config("./schemas/extras.yaml") + data_str = request.data.decode(encoding=request.content_encoding) try: - data = load_config_str(request.data) + data = load_config_str(data_str) try: validate(data, extra_schema) except ValidationError: @@ -60,11 +61,13 @@ def update_extra_models(server: ServerContext): # TODO: make a backup with open(server.extra_models[0], mode="w") as f: - f.write(request.data) + f.write(data_str) + from argparse import Namespace from onnx_web.convert.__main__ import main as convert + logger.warning("downloading and converting models to ONNX") - convert() + convert(args=Namespace(correction=True, diffusion=True, upscalinng=True, extras=server.extra_models)) return jsonify(data)