Multi-Rag / utils /main_utils.py
VashuTheGreat2's picture
Upload folder using huggingface_hub
5551822 verified
import yaml
import os
import logging
def load_yaml(file_path: str):
if not os.path.exists(file_path):
return {}
with open(file_path, "r") as f:
return yaml.safe_load(f) or {}
def write_yaml(file_path: str, data: dict, mode: str = "w"):
if mode == "a":
existing_data = load_yaml(file_path)
if isinstance(existing_data, dict) and isinstance(data, dict):
# If we are appending to a specific list within the dict
for key, value in data.items():
if key in existing_data and isinstance(existing_data[key], list) and isinstance(value, list):
existing_data[key].extend(value)
else:
existing_data[key] = value
data = existing_data
elif isinstance(existing_data, list) and isinstance(data, list):
existing_data.extend(data)
data = existing_data
with open(file_path, "w") as f:
yaml.dump(data, f)