Gerchegg commited on
Commit
02514bb
·
verified ·
1 Parent(s): be9602e

Upload lora_pipeline.sh

Browse files
Files changed (1) hide show
  1. lora_pipeline.sh +118 -0
lora_pipeline.sh ADDED
@@ -0,0 +1,118 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env bash
2
+ set -e
3
+
4
+ ###############################################################################
5
+ # 0. Подготовка среды: обновление apt, установка unzip
6
+ ###############################################################################
7
+ echo ">>> [Script 1] Step 0: Установка системных зависимостей ..."
8
+ apt-get update && apt-get install -y unzip
9
+
10
+
11
+ echo ">>> [Script 1] Step 1: Downloading MyRunpodLoraScripts.zip ..."
12
+ wget -O /workspace/MyRunpodLoraScripts.zip \
13
+ "https://huggingface.co/Gerchegg/FeaturesFluxAI/resolve/main/MyRunpodLoraScripts.zip"
14
+
15
+ echo ">>> [Script 1] Step 2: Unzipping MyRunpodLoraScripts.zip ..."
16
+ unzip -o /workspace/MyRunpodLoraScripts.zip -d /workspace
17
+ ###############################################################################
18
+ # 1. Копирование файлов из локальной папки в рабочую директорию
19
+ ###############################################################################
20
+ echo ">>> [Script 1] Step 1: Копирование файлов из MyRunpodLoraScripts в /workspace ..."
21
+ mkdir -p /workspace/MyRunpodLoraScripts
22
+ cp -r /workspace/MyRunpodLoraScripts/* /workspace/
23
+
24
+ ###############################################################################
25
+ # 2. Запускаем два "параллельных" потока (фона):
26
+ # - Thread 1: Устанавливает пакеты + python Download_Train_Models.py
27
+ # - Thread 2: Устанавливает нужные deps (kohya_ss, torch, xformers), запускает GUI
28
+ ###############################################################################
29
+ echo ">>> [Script 1] Запуск параллельных потоков ..."
30
+
31
+ # ------------------ Поток 1 --------------------
32
+ (
33
+ echo ">>> [Thread 1] Установка Python пакетов для huggingface ..."
34
+ pip install huggingface_hub ipywidgets hf_transfer
35
+
36
+ export HF_HUB_ENABLE_HF_TRANSFER=1
37
+
38
+ echo ">>> [Thread 1] Запуск Download_Train_Models.py ..."
39
+ dwn_path=$(find /workspace -name "Download_Train_Models.py" | head -n 1)
40
+ if [ -z "$dwn_path" ]; then
41
+ echo "[Thread 1] ОШИБКА: Download_Train_Models.py не найден!"
42
+ exit 1
43
+ fi
44
+
45
+ python "$dwn_path" --dir /workspace
46
+
47
+ echo ">>> [Thread 1] Готово."
48
+ ) &
49
+
50
+ # ------------------ Поток 2 --------------------
51
+ (
52
+ echo ">>> [Thread 2] Установка Python и OS зависимостей ..."
53
+ apt update --yes
54
+ yes | apt-get install python3.10-tk
55
+ apt-get install psmisc --yes
56
+
57
+ echo ">>> [Thread 2] Клонирование kohya_ss ..."
58
+ cd /workspace
59
+ if [ ! -d "/workspace/kohya_ss" ]; then
60
+ git clone https://github.com/bmaltais/kohya_ss.git
61
+ fi
62
+
63
+ cd /workspace/kohya_ss
64
+ git checkout sd3-flux.1
65
+
66
+ echo ">>> [Thread 2] Создание Python venv ..."
67
+ python3 -m venv venv
68
+ source venv/bin/activate
69
+ yes | apt-get install python3.10-tk
70
+
71
+ echo ">>> [Thread 2] Запуск setup.sh ..."
72
+ ./setup.sh -n -u
73
+
74
+ apt update --yes
75
+ yes | apt-get install python3.10-tk
76
+ apt-get install psmisc --yes
77
+
78
+ pip install hf_transfer
79
+ export HF_HUB_ENABLE_HF_TRANSFER=0
80
+
81
+ echo ">>> [Thread 2] Завершение процессов на порту 7860 ..."
82
+ fuser -k 7860/tcp || true
83
+
84
+ git checkout sd3-flux.1
85
+ source venv/bin/activate
86
+
87
+ echo ">>> [Thread 2] Обновление torch & xformers ..."
88
+ pip uninstall -y xformers
89
+ pip install torch==2.5.1+cu124 torchvision --index-url https://download.pytorch.org/whl/cu124
90
+ pip install xformers==0.0.28.post3 --index-url https://download.pytorch.org/whl/cu124
91
+
92
+ echo ">>> [Thread 2] Запуск kohya_ss GUI на 0.0.0.0:7860 ..."
93
+ ./gui.sh --listen=0.0.0.0 --share --noverify
94
+ ) &
95
+
96
+ ###############################################################################
97
+ # 3. Создаём общую структуру папок (Models, Images, Logs, Configs)
98
+ ###############################################################################
99
+ echo ">>> [Script 1] Создание структуры папок в /workspace/MyLoRADataset ..."
100
+ mkdir -p /workspace/MyLoRADataset/Models
101
+ mkdir -p /workspace/MyLoRADataset/Images
102
+ mkdir -p /workspace/MyLoRADataset/Logs
103
+ mkdir -p /workspace/MyLoRADataset/Configs
104
+
105
+ ###############################################################################
106
+ # 4. Копирование конфигураций LoRA в папку Configs
107
+ ###############################################################################
108
+ echo ">>> [Script 1] Копирование конфигураций LoRA в /workspace/MyLoRADataset/Configs ..."
109
+ cp -r /workspace/LoRA_Tab_LoRA_Training_Best_FLUX_Configs/* /workspace/MyLoRADataset/Configs/
110
+
111
+ ###############################################################################
112
+ # 5. Ожидаем завершения потоков
113
+ ###############################################################################
114
+ echo ">>> [Script 1] Ожидание завершения потоков ..."
115
+ wait
116
+ echo ">>> [Script 1] ГОТОВО! Теперь вы можете использовать Kohya SS GUI для обучения LoRA моделей."
117
+ echo ">>> [Script 1] Доступ к GUI: http://127.0.0.1:7860 или через внешнюю ссылку, предоставленную в выводе."
118
+ echo ">>> [Script 1] Конфигурации LoRA доступны в /workspace/MyLoRADataset/Configs"