forked from bmaltais/kohya_ss
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathclass_huggingface.py
82 lines (72 loc) · 3.8 KB
/
class_huggingface.py
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
import gradio as gr
import toml
from .class_gui_config import KohyaSSGUIConfig
class HuggingFace:
def __init__(
self,
config: KohyaSSGUIConfig,
) -> None:
self.config = config
# Initialize the UI components
self.initialize_ui_components()
def initialize_ui_components(self) -> None:
# --huggingface_repo_id HUGGINGFACE_REPO_ID
# huggingface repo name to upload / huggingfaceにアップロードするリポジトリ名
# --huggingface_repo_type HUGGINGFACE_REPO_TYPE
# huggingface repo type to upload / huggingfaceにアップロードするリポジトリの種類
# --huggingface_path_in_repo HUGGINGFACE_PATH_IN_REPO
# huggingface model path to upload files / huggingfaceにアップロードするファイルのパス
# --huggingface_token HUGGINGFACE_TOKEN
# huggingface token / huggingfaceのトークン
# --huggingface_repo_visibility HUGGINGFACE_REPO_VISIBILITY
# huggingface repository visibility ('public' for public, 'private' or None for private) / huggingfaceにアップロードするリポジトリの公開設定('public'で公開、'private'またはNoneで非公開)
# --save_state_to_huggingface
# save state to huggingface / huggingfaceにstateを保存する
# --resume_from_huggingface
# resume from huggingface (ex: --resume {repo_id}/{path_in_repo}:{revision}:{repo_type}) / huggingfaceから学習を再開する(例: --resume {repo_id}/{path_in_repo}:{revision}:{repo_type})
# --async_upload upload to huggingface asynchronously / huggingfaceに非同期でアップロードする
with gr.Row():
self.huggingface_repo_id = gr.Textbox(
label="Huggingface repo id",
placeholder="huggingface repo id",
value=self.config.get("huggingface.repo_id", ""),
)
self.huggingface_token = gr.Textbox(
label="Huggingface token",
placeholder="huggingface token",
value=self.config.get("huggingface.token", ""),
)
with gr.Row():
# Repository settings
self.huggingface_repo_type = gr.Textbox(
label="Huggingface repo type",
placeholder="huggingface repo type",
value=self.config.get("huggingface.repo_type", ""),
)
self.huggingface_repo_visibility = gr.Textbox(
label="Huggingface repo visibility",
placeholder="huggingface repo visibility",
value=self.config.get("huggingface.repo_visibility", ""),
)
with gr.Row():
# File location in the repository
self.huggingface_path_in_repo = gr.Textbox(
label="Huggingface path in repo",
placeholder="huggingface path in repo",
value=self.config.get("huggingface.path_in_repo", ""),
)
with gr.Row():
# Functions
self.save_state_to_huggingface = gr.Checkbox(
label="Save state to huggingface",
value=self.config.get("huggingface.save_state_to_huggingface", False),
)
self.resume_from_huggingface = gr.Textbox(
label="Resume from huggingface",
placeholder="resume from huggingface",
value=self.config.get("huggingface.resume_from_huggingface", ""),
)
self.async_upload = gr.Checkbox(
label="Async upload",
value=self.config.get("huggingface.async_upload", False),
)