in aidial_assistant/utils/yaml_loader.py [0:0]
def construct_include(loader: Loader, node: yaml.Node) -> Any:
"""Include file referenced at node."""
filename = os.path.abspath(
os.path.join(loader.root, loader.construct_scalar(node)) # type: ignore
)
extension = os.path.splitext(filename)[1].lstrip(".")
with open(filename, "r") as f:
if extension in ("yaml", "yml"):
return yaml.load(f, Loader)
elif extension in ("json",):
return json.load(f)
else:
return "".join(f.readlines())