import httpx | |
from huggingface_hub import hf_hub_url | |
from huggingface_hub.utils import build_hf_headers | |
import json | |
client = httpx.AsyncClient() | |
async def load_file(path): | |
url = to_url(path) | |
r = await client.get(url) | |
return r.json() | |
async def load_details_file(path): | |
url = to_url(path) | |
r = await client.get(url, headers=build_hf_headers()) | |
return [json.loads(line) for line in r.text.splitlines()] | |
def to_url(path): | |
_, org_name, ds_name, filename = path.split("/", 3) | |
return hf_hub_url(repo_id=f"{org_name}/{ds_name}", filename=filename, repo_type="dataset") | |