File size: 2,052 Bytes
5b8f678 | 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 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
#!/usr/bin/env python3
import os
from pathlib import Path
from huggingface_hub import HfApi, create_repo, upload_folder
# ===== ์ฌ์ฉ์ ์ค์ =====
# ์ค์ ๋ก ๋ง๋ค Hugging Face ๋ชจ๋ธ repo ID (์์)
REPO_ID = "roboseasylabs/SenseVoice-Small-ko" # <-- ์ํ๋ ์ด๋ฆ์ผ๋ก ์์
# ์
๋ก๋ํ ๋ก์ปฌ ํด๋ (ํ์ต ๊ฒฐ๊ณผ)
MODEL_DIR = Path("/home/khw/workspace/STTProject/SenseVoice-Small-ko")
# ๋ก์ปฌ์ ์๋ model.py๋ฅผ ํจ๊ป ์ฌ๋ฆฌ๊ณ ์ถ์ผ๋ฉด (FunASR/SenseVoice์ฉ)
# outputs ์์ ์ด๋ฏธ ๋ณต์ฌํด ๋์์ผ๋ฉด ์๋ต ๊ฐ๋ฅ
def main():
# 1) ํ ํฐ ๊ฐ์ ธ์ค๊ธฐ (ํ๊ฒฝ๋ณ์ ์ฌ์ฉ ๊ถ์ฅ)
# ๋ฏธ๋ฆฌ export HUGGINGFACE_HUB_TOKEN=hf_xxx ํ๊ธฐ
# ๋ฏธ๋ฆฌ export HF_HUB_DOWNLOAD_TIMEOUT=3600 ํ๊ธฐ (์
๋ก๋/๋ค์ด๋ก๋ ์๊ฐ ๋๋ฆฌ๊ธฐ)
token = os.environ.get("HUGGINGFACE_HUB_TOKEN")
if token is None:
raise RuntimeError(
"HUGGINGFACE_HUB_TOKEN ํ๊ฒฝ๋ณ์๊ฐ ์ค์ ๋์ด ์์ง ์์ต๋๋ค. "
"https://huggingface.co/settings/tokens ์์ ํ ํฐ์ ๋ง๋ค๊ณ ,\n"
"export HUGGINGFACE_HUB_TOKEN=hf_xxx ๋ก ์ค์ ํ ๋ค ๋ค์ ์คํํ์ธ์."
)
api = HfApi()
# 2) ๋ฆฌํฌ์งํฐ๋ฆฌ ์์ฑ (์ด๋ฏธ ์์ผ๋ฉด exist_ok=True ๋ก ๊ทธ๋ฅ ํต๊ณผ)
create_repo(
repo_id=REPO_ID,
token=token,
private=True, # ๋น๊ณต๊ฐ๋ก ์ฌ๋ฆฌ๋ ค๋ฉด True
exist_ok=True,
repo_type="model",
)
# 4) ํด๋ ํต์งธ๋ก ์
๋ก๋
print(f"[info] uploading folder: {MODEL_DIR} -> {REPO_ID}")
upload_folder(
repo_id=REPO_ID,
folder_path=str(MODEL_DIR),
path_in_repo=".", # ๋ฆฌํฌ ๋ฃจํธ์ ๊ทธ๋๋ก ์ฌ๋ฆฌ๊ธฐ
token=token,
repo_type="model",
# ignore_patterns=[
# "model.pt.ep*", # ์ฒดํฌํฌ์ธํธ๋ค ์ ์ธ
# "*.pt.ep*", # ํน์ ๋ค๋ฅธ ํ์ผ๋ช
๋ ๋น์ทํ๊ฒ ์ฐํ๋ฉด ๊ฐ์ด ์ ์ธ
# ],
)
print("[done] uploaded to:", f"https://huggingface.co/{REPO_ID}")
if __name__ == "__main__":
main()
|