taiwanese-hakka-tts / ipa /__init__.py
txya900619's picture
feat: init upload
5e8e534
raw
history blame
831 Bytes
import requests
from omegaconf import OmegaConf
def gh_download(repo, path, token):
paths = [path] if isinstance(path, str) else path
result = None
headers = {"Authorization": f"Bearer {token}", "Accept": "application/vnd.github.raw+json"}
for path in paths:
url = f"https://api.github.com/repos/{repo}/contents/{path}"
response = requests.get(url, headers=headers)
if response.status_code != 200:
raise Exception(f"Failed to download {path} from {repo}")
if result is None:
result = response.json()
elif isinstance(result, list):
result.extend(response.json())
elif isinstance(result, dict):
result.update(response.json())
return result
OmegaConf.register_new_resolver("gh_download", gh_download)