From d648d077a6e7a144dd5afc01133e38adef6c2129 Mon Sep 17 00:00:00 2001 From: fanpt <320622572@qq.com> Date: Tue, 5 Aug 2025 10:10:12 +0800 Subject: [PATCH] add --config --- api_v2.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/api_v2.py b/api_v2.py index 5947df5..4d7e407 100644 --- a/api_v2.py +++ b/api_v2.py @@ -101,6 +101,7 @@ RESP: import os import sys import traceback +import json from typing import Generator now_dir = os.getcwd() @@ -127,10 +128,24 @@ i18n = I18nAuto() cut_method_names = get_cut_method_names() parser = argparse.ArgumentParser(description="GPT-SoVITS api") +parser.add_argument("--config", type=str, default="configs/config.json", help="配置文件路径") parser.add_argument("-c", "--tts_config", type=str, default="GPT_SoVITS/configs/tts_infer.yaml", help="tts_infer路径") parser.add_argument("-a", "--bind_addr", type=str, default="127.0.0.1", help="default: 127.0.0.1") parser.add_argument("-p", "--port", type=int, default="9880", help="default: 9880") args = parser.parse_args() + +# 载入配置文件(如果存在) +try: + with open(args.config, 'r', encoding='utf-8') as f: + cfg = json.load(f) + for key, val in cfg.items(): + if hasattr(args, key) and getattr(args, key) == parser.get_default(key): + setattr(args, key, val) +except FileNotFoundError: + print(f"未找到配置文件:{args.config},将使用命令行/默认参数") +except Exception as e: + print(f"读取配置文件出错:{e},将使用命令行/默认参数") + config_path = args.tts_config # device = args.device port = args.port