mirror of
https://github.com/theroyallab/tabbyAPI.git
synced 2026-03-15 00:07:28 +00:00
This maps the absolute path when loading the config file. Making things safer when loading and finding the correct path. Signed-off-by: kingbri <bdashore3@proton.me>
53 lines
1.5 KiB
Python
53 lines
1.5 KiB
Python
import yaml
|
|
import pathlib
|
|
|
|
from logger import init_logger
|
|
from utils import unwrap
|
|
|
|
logger = init_logger(__name__)
|
|
|
|
GLOBAL_CONFIG: dict = {}
|
|
|
|
|
|
def read_config_from_file(config_path: pathlib.Path):
|
|
"""Sets the global config from a given file path"""
|
|
global GLOBAL_CONFIG
|
|
|
|
try:
|
|
with open(str(config_path.resolve()), "r", encoding="utf8") as config_file:
|
|
GLOBAL_CONFIG = unwrap(yaml.safe_load(config_file), {})
|
|
except Exception as exc:
|
|
logger.error(
|
|
"The YAML config couldn't load because of the following error: "
|
|
f"\n\n{exc}"
|
|
"\n\nTabbyAPI will start anyway and not parse this config file."
|
|
)
|
|
GLOBAL_CONFIG = {}
|
|
|
|
|
|
def get_model_config():
|
|
"""Returns the model config from the global config"""
|
|
return unwrap(GLOBAL_CONFIG.get("model"), {})
|
|
|
|
|
|
def get_draft_model_config():
|
|
"""Returns the draft model config from the global config"""
|
|
model_config = unwrap(GLOBAL_CONFIG.get("model"), {})
|
|
return unwrap(model_config.get("draft"), {})
|
|
|
|
|
|
def get_lora_config():
|
|
"""Returns the lora config from the global config"""
|
|
model_config = unwrap(GLOBAL_CONFIG.get("model"), {})
|
|
return unwrap(model_config.get("lora"), {})
|
|
|
|
|
|
def get_network_config():
|
|
"""Returns the network config from the global config"""
|
|
return unwrap(GLOBAL_CONFIG.get("network"), {})
|
|
|
|
|
|
def get_gen_logging_config():
|
|
"""Returns the generation logging config from the global config"""
|
|
return unwrap(GLOBAL_CONFIG.get("logging"), {})
|