Gerchegg commited on
Commit
72b28aa
·
verified ·
1 Parent(s): 76d0226

Upload README.md with huggingface_hub

Browse files
Files changed (1) hide show
  1. README.md +251 -12
README.md CHANGED
@@ -1,12 +1,251 @@
1
- ---
2
- title: Qwen Model Converter
3
- emoji: 🚀
4
- colorFrom: green
5
- colorTo: indigo
6
- sdk: gradio
7
- sdk_version: 5.49.1
8
- app_file: app.py
9
- pinned: false
10
- ---
11
-
12
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ title: Qwen Model Converter
3
+ emoji: 🔄
4
+ colorFrom: green
5
+ colorTo: blue
6
+ sdk: gradio
7
+ sdk_version: "5.9.1"
8
+ app_file: app.py
9
+ pinned: false
10
+ license: apache-2.0
11
+ tags:
12
+ - model-conversion
13
+ - diffusers
14
+ - qwen
15
+ - safetensors
16
+ - automation
17
+ short_description: Convert Qwen models from safetensors to Diffusers
18
+ ---
19
+
20
+ # 🔄 Qwen Model Converter
21
+
22
+ **Автоматическая конвертация моделей** из safetensors в Diffusers формат с загрузкой на HuggingFace.
23
+
24
+ ## 🎯 Что делает этот Space
25
+
26
+ ### Полный автоматический пайплайн:
27
+
28
+ 1. **📥 Скачивание** safetensors модели с HuggingFace (по приватному токену)
29
+ 2. **📥 Скачивание** базовой модели для компонентов (VAE, Text Encoder, Tokenizer)
30
+ 3. **🔄 Конвертация** в Diffusers формат с упаковкой всех компонентов
31
+ 4. **📤 Загрузка** готовой модели обратно на HuggingFace
32
+
33
+ **Всё происходит автоматически в облаке!**
34
+
35
+ ---
36
+
37
+ ## ✨ Особенности
38
+
39
+ - ✅ **Полностью автоматизирован** - нужно только указать параметры
40
+ - ✅ **Работает в облаке** - не нужно скачивать 40GB+ локально
41
+ - ✅ **Поддержка больших моделей** - 40GB+ safetensors файлы
42
+ - ✅ **Resumable uploads** - продолжает загрузку после прерывания
43
+ - ✅ **Подробные логи** - отслеживание каждого этапа
44
+ - ✅ **API доступ** - можно использовать программно
45
+
46
+ ---
47
+
48
+ ## 🚀 Использование
49
+
50
+ ### Web UI
51
+
52
+ 1. Откройте Space: https://huggingface.co/spaces/Gerchegg/Qwen-Model-Converter
53
+ 2. Заполните форму:
54
+ - **Source Repo** - репозиторий с safetensors файлом
55
+ - **Source File** - имя safetensors файла
56
+ - **Base Model** - базовая модель (обычно `Qwen/Qwen-Image`)
57
+ - **Target Repo** - куда загрузить результат
58
+ - **HF Token** - ваш токен с write доступом
59
+ 3. Нажмите **"Запустить конвертацию"**
60
+ 4. Дождитесь завершения (45-90 минут)
61
+
62
+ ### API
63
+
64
+ ```python
65
+ from gradio_client import Client
66
+
67
+ client = Client("Gerchegg/Qwen-Model-Converter")
68
+
69
+ result = client.predict(
70
+ source_repo_id="Gerchegg/QwenSolobandModel",
71
+ source_filename="Qwen_Soloband_Model_V1-000140.safetensors",
72
+ base_model_id="Qwen/Qwen-Image",
73
+ target_repo_id="YourUsername/Your-Model-Diffusers",
74
+ hf_token="hf_your_token_here",
75
+ api_name="/convert"
76
+ )
77
+
78
+ status, logs = result
79
+ print(status) # "✅ Готово! URL: https://..."
80
+ ```
81
+
82
+ ---
83
+
84
+ ## 📋 Требования
85
+
86
+ ### HuggingFace Token
87
+
88
+ Нужен токен с правами:
89
+ - ✅ **Read** - для скачивания source модели
90
+ - ✅ **Write** - для создания target репозитория
91
+
92
+ Получить токен: https://huggingface.co/settings/tokens
93
+
94
+ ### Source Model
95
+
96
+ - Формат: **safetensors** (один файл или папка)
97
+ - Архитектура: **Qwen-Image DiT** (или совместимая)
98
+ - Размер: любой (поддерживаются файлы 40GB+)
99
+
100
+ ### Base Model
101
+
102
+ - Обычно: `Qwen/Qwen-Image`
103
+ - Должна содержать компоненты: VAE, Text Encoder, Tokenizer, Scheduler
104
+
105
+ ---
106
+
107
+ ## 💡 Примеры
108
+
109
+ ### Пример 1: Конвертация Qwen Soloband
110
+
111
+ ```
112
+ Source Repo: Gerchegg/QwenSolobandModel
113
+ Source File: Qwen_Soloband_Model_V1-000140.safetensors
114
+ Base Model: Qwen/Qwen-Image
115
+ Target Repo: YourUsername/Qwen-Soloband-Diffusers
116
+ ```
117
+
118
+ **Результат**: Готовая Diffusers модель (~58GB)
119
+
120
+ ### Пример 2: Конвертация кастомной LoRA
121
+
122
+ ```
123
+ Source Repo: Username/CustomLoRAModel
124
+ Source File: custom_lora.safetensors
125
+ Base Model: Qwen/Qwen-Image
126
+ Target Repo: Username/CustomLoRA-Diffusers
127
+ ```
128
+
129
+ ---
130
+
131
+ ## 📊 Процесс конвертации
132
+
133
+ ### Что происходит внутри:
134
+
135
+ ```
136
+ [1/4] Скачивание safetensors (~40GB)
137
+ ├─ Скачивает кастомные веса модели
138
+ └─ Время: 5-10 минут
139
+
140
+ [2/4] Скачивание базовой модели (~18GB)
141
+ ├─ Скачивает VAE, Text Encoder, Tokenizer, Scheduler
142
+ └─ Время: 5-10 минут
143
+
144
+ [3/4] Конвертация в Diffusers
145
+ ├─ Создает структуру папок
146
+ ├─ Копирует компоненты базовой модели
147
+ ├─ Добавляет кастомный transformer
148
+ ├─ Создает config.json
149
+ └─ Время: 1-2 минуты
150
+
151
+ [4/4] Загрузка на HuggingFace (~58GB)
152
+ ├─ Создает Model репозиторий
153
+ ├─ Загружает все файлы через HF API
154
+ └─ Время: 30-60 минут
155
+ ```
156
+
157
+ **Общее время**: 45-90 минут
158
+
159
+ ---
160
+
161
+ ## 🔍 Структура результата
162
+
163
+ После конвертации модель будет иметь структуру:
164
+
165
+ ```
166
+ YourModel-Diffusers/
167
+ ├── model_index.json # Главный конфиг pipeline
168
+ ├── vae/ # VAE encoder/decoder
169
+ │ ├── config.json
170
+ │ └── diffusion_pytorch_model.safetensors
171
+ ├── text_encoder/ # Text Encoder (Qwen2)
172
+ │ ├── config.json
173
+ │ ├── model-00001-of-00004.safetensors
174
+ │ ├── model-00002-of-00004.safetensors
175
+ │ ├── model-00003-of-00004.safetensors
176
+ │ └── model-00004-of-00004.safetensors
177
+ ├── tokenizer/ # Tokenizer
178
+ │ ├── tokenizer_config.json
179
+ │ ├── vocab.json
180
+ │ └── merges.txt
181
+ ├── scheduler/ # Noise scheduler
182
+ │ └── scheduler_config.json
183
+ └── transformer/ # Кастомный transformer
184
+ ├── config.json
185
+ └── diffusion_pytorch_model.safetensors # Ваши веса
186
+ ```
187
+
188
+ ---
189
+
190
+ ## 💻 Локальное использование
191
+
192
+ Если хотите запустить локально:
193
+
194
+ ```bash
195
+ git clone https://huggingface.co/spaces/Gerchegg/Qwen-Model-Converter
196
+ cd Qwen-Model-Converter
197
+ pip install -r requirements.txt
198
+ python app.py
199
+ ```
200
+
201
+ ---
202
+
203
+ ## 🐛 Troubleshooting
204
+
205
+ ### Проблема: "Invalid HF Token"
206
+
207
+ **Решение**:
208
+ - Проверьте что токен начинается с `hf_`
209
+ - Убедитесь что токен имеет права **write** для model repositories
210
+ - Создайте новый токен: https://huggingface.co/settings/tokens
211
+
212
+ ### Проблема: "Out of Memory"
213
+
214
+ **Решение**:
215
+ - Этот Space работает в облаке HuggingFace
216
+ - Обычно памяти достаточно
217
+ - Если проблема - попробуйте позже
218
+
219
+ ### Проблема: Upload timeout
220
+
221
+ **Решение**:
222
+ - HF API автоматически возобновляет загрузку
223
+ - Просто подождите или перезапустите
224
+ - Загрузка продолжится с места остановки
225
+
226
+ ### Проблема: "Repository already exists"
227
+
228
+ **Решение**:
229
+ - Это нормально, модель будет обновлена
230
+ - Или укажите другое имя target repository
231
+
232
+ ---
233
+
234
+ ## 📚 Дополнительная информация
235
+
236
+ - **Diffusers Documentation**: https://huggingface.co/docs/diffusers
237
+ - **HuggingFace Hub**: https://huggingface.co/docs/hub
238
+ - **Qwen-Image**: https://huggingface.co/Qwen/Qwen-Image
239
+
240
+ ---
241
+
242
+ ## 📝 License
243
+
244
+ Apache 2.0
245
+
246
+ ## 🤝 Credits
247
+
248
+ - Qwen Team за базовую модель
249
+ - Diffusers Team за библиотеку
250
+ - HuggingFace за инфраструктуру
251
+