Spaces:
Sleeping
Sleeping
File size: 1,538 Bytes
7337389 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | # -*- coding: utf-8 -*-
"""
Đẩy dữ liệu lên một HF Dataset PRIVATE để Space tải về lúc khởi động.
passages.jsonl có nội dung từ tạp chí/trang thương mại nên KHÔNG được để trong
repo Space (repo Space public ai cũng xem được file). Dataset private thì chỉ
người có token đọc được.
pip install huggingface_hub
huggingface-cli login # token quyền write
python tools/upload_data.py --src ../../nambo_run/data --repo <user>/namboqa-private
"""
import argparse
from pathlib import Path
from huggingface_hub import HfApi
FILES = ["passages.jsonl", "places_clean.json", "qa_final.jsonl"] # split tự tính bằng chia_tap.py
ap = argparse.ArgumentParser()
ap.add_argument("--src", required=True, help="thư mục dữ liệu, vd ../../nambo_run/data")
ap.add_argument("--repo", required=True, help="vd: minhluan/namboqa-private")
ap.add_argument("--emb", nargs="*", default=[],
help="(tuỳ chọn) file emb_*.npy đã tính sẵn để Space khỏi mã hoá lại")
a = ap.parse_args()
api = HfApi()
api.create_repo(a.repo, repo_type="dataset", private=True, exist_ok=True)
src = Path(a.src)
for f in FILES + a.emb:
p = src / f if not Path(f).is_absolute() and (src / f).exists() else Path(f)
api.upload_file(path_or_fileobj=str(p), path_in_repo=p.name, repo_id=a.repo, repo_type="dataset")
print("đã đẩy", p.name)
print(f"Xong. Đặt biến DATA_REPO={a.repo} và secret HF_TOKEN (quyền read) cho Space.")
|