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()