Hunyuan Video 1.5 क्विकस्टार्ट¶
यह गाइड Tencent के 8.3B Hunyuan Video 1.5 रिलीज़ (tencent/HunyuanVideo-1.5) पर SimpleTuner का उपयोग करके LoRA प्रशिक्षण की प्रक्रिया बताती है।
हार्डवेयर आवश्यकताएँ¶
Hunyuan Video 1.5 एक बड़ा मॉडल है (8.3B पैरामीटर)।
- न्यूनतम: 480p पर full gradient checkpointing के साथ Rank‑16 LoRA के लिए 24GB‑32GB VRAM आरामदायक है।
- अनुशंसित: 720p प्रशिक्षण या बड़े batch sizes के लिए A6000 / A100 (48GB‑80GB)।
- सिस्टम RAM: मॉडल लोडिंग संभालने के लिए 64GB+ अनुशंसित है।
पूर्वापेक्षाएँ¶
सुनिश्चित करें कि Python इंस्टॉल है; SimpleTuner 3.10 से 3.12 के साथ अच्छा काम करता है।
आप इसे चलाकर जांच सकते हैं:
यदि आपके Ubuntu पर Python 3.12 इंस्टॉल नहीं है, तो आप यह प्रयास कर सकते हैं:
Container image dependencies¶
Vast, RunPod, और TensorDock (आदि) के लिए, CUDA 12.2‑12.8 इमेज पर CUDA extensions कम्पाइल करने हेतु यह काम करेगा:
AMD ROCm follow‑up steps¶
AMD MI300X को उपयोगी बनाने के लिए निम्न चलाना आवश्यक है:
apt install amd-smi-lib
pushd /opt/rocm/share/amd_smi
python3 -m pip install --upgrade pip
python3 -m pip install .
popd
इंस्टॉलेशन¶
pip के जरिए SimpleTuner इंस्टॉल करें:
pip install 'simpletuner[cuda]'
# CUDA 13 / Blackwell users (NVIDIA B-series GPUs)
pip install 'simpletuner[cuda13]' --extra-index-url https://download.pytorch.org/whl/cu130
मैनुअल इंस्टॉलेशन या डेवलपमेंट सेटअप के लिए, installation documentation देखें।
आवश्यक checkpoints¶
मुख्य tencent/HunyuanVideo-1.5 repo में transformer/vae/scheduler हैं, लेकिन text encoder (text_encoder/llm) और vision encoder (vision_encoder/siglip) अलग downloads में हैं। लॉन्च करने से पहले SimpleTuner को अपने लोकल कॉपी पाथ बताएं:
export HUNYUANVIDEO_TEXT_ENCODER_PATH=/path/to/text_encoder_root
export HUNYUANVIDEO_VISION_ENCODER_PATH=/path/to/vision_encoder_root
यदि ये unset हैं, तो SimpleTuner उन्हें मॉडल repo से खींचने की कोशिश करता है; अधिकांश mirrors इन्हें शामिल नहीं करते, इसलिए startup errors से बचने के लिए paths स्पष्ट रूप से सेट करें।
वातावरण सेटअप¶
Web interface method¶
SimpleTuner WebUI सेटअप को सरल बनाता है। सर्वर चलाने के लिए:
यह डिफ़ॉल्ट रूप से पोर्ट 8001 पर वेब सर्वर बनाता है, जिसे आप http://localhost:8001 पर खोल सकते हैं।
Manual / command‑line method¶
command‑line टूल्स से SimpleTuner चलाने के लिए, आपको एक configuration फ़ाइल, dataset और model directories, तथा एक dataloader configuration फ़ाइल सेट करनी होगी।
Configuration file¶
एक प्रयोगात्मक स्क्रिप्ट, configure.py, इंटरैक्टिव step‑by‑step कॉन्फ़िगरेशन के जरिए इस सेक्शन को पूरी तरह स्किप करने में मदद कर सकती है।
नोट: यह आपके dataloader को कॉन्फ़िगर नहीं करता। आपको उसे बाद में मैन्युअली करना होगा।
इसे चलाने के लिए:
यदि आप मैन्युअल कॉन्फ़िगर करना पसंद करते हैं:
config/config.json.example को config/config.json में कॉपी करें:
HunyuanVideo के लिए key configuration overrides:
उदाहरण कॉन्फ़िग देखें
{
"model_type": "lora",
"model_family": "hunyuanvideo",
"pretrained_model_name_or_path": "tencent/HunyuanVideo-1.5",
"model_flavour": "t2v-480p",
"output_dir": "output/hunyuan-video",
"validation_resolution": "854x480",
"validation_num_video_frames": 61,
"validation_guidance": 6.0,
"train_batch_size": 1,
"gradient_accumulation_steps": 1,
"learning_rate": 1e-4,
"mixed_precision": "bf16",
"optimizer": "adamw_bf16",
"lora_rank": 16,
"dataset_backend_config": "config/multidatabackend.json"
}
model_flavourविकल्प:t2v-480p(डिफ़ॉल्ट)t2v-720pi2v-480p(Image‑to‑Video)i2v-720p(Image‑to‑Video)validation_num_video_frames:(frames - 1) % 4 == 0होना चाहिए। जैसे 61, 129।
उन्नत प्रयोगात्मक विशेषताएँ¶
उन्नत प्रयोगात्मक विवरण दिखाएँ
SimpleTuner में प्रयोगात्मक फीचर्स शामिल हैं जो प्रशिक्षण की स्थिरता और प्रदर्शन को काफी बेहतर कर सकते हैं। * **[Scheduled Sampling (Rollout)](../experimental/SCHEDULED_SAMPLING.md):** exposure bias कम करता है और आउटपुट गुणवत्ता बढ़ाता है, क्योंकि यह प्रशिक्षण के दौरान मॉडल को अपने इनपुट्स खुद जनरेट करने देता है। > ⚠️ ये फीचर्स प्रशिक्षण के कंप्यूटेशनल ओवरहेड को बढ़ाते हैं। #### डेटासेट विचार एक `--data_backend_config` (`config/multidatabackend.json`) दस्तावेज़ बनाएँ जिसमें यह हो:[
{
"id": "my-video-dataset",
"type": "local",
"dataset_type": "video",
"instance_data_dir": "datasets/videos",
"caption_strategy": "textfile",
"resolution": 480,
"video": {
"num_frames": 61,
"min_frames": 61,
"frame_rate": 24,
"bucket_strategy": "aspect_ratio"
},
"repeats": 10
},
{
"id": "text-embeds",
"type": "local",
"dataset_type": "text_embeds",
"default": true,
"cache_dir": "cache/text/hunyuan",
"disabled": false
}
]
प्रशिक्षण रन निष्पादित करना¶
SimpleTuner डायरेक्टरी से:
नोट्स और समस्या‑समाधान टिप्स¶
VRAM Optimization¶
- Resolution: सीमित VRAM हो तो 480p (
854x480या समान) पर टिकें। 720p (1280x720) मेमोरी उपयोग काफी बढ़ाता है। - Quantization:
base_model_precisionउपयोग करें (bf16डिफ़ॉल्ट); अतिरिक्त बचत के लिएint8-torchaoकाम करता है, लेकिन गति कम होगी। - VAE patch convolution: HunyuanVideo VAE OOMs के लिए
--vae_enable_patch_conv=trueसेट करें (या UI में टॉगल करें)। यह 3D conv/attention को slice करता है और peak VRAM कम करता है; throughput थोड़ा घटेगा।
Image‑to‑Video (I2V)¶
model_flavour="i2v-480p"याi2v-720pउपयोग करें।- SimpleTuner training के दौरान video samples के पहले frame को conditioning image के रूप में स्वतः उपयोग करता है।
I2V Validation Options¶
i2v models के साथ validation के लिए, आपके पास दो विकल्प हैं:
-
Auto-extracted first frame: Default रूप से, validation आपके dataset में video samples के पहले frame का उपयोग करता है।
-
अलग image dataset (सरल setup):
--validation_using_datasets=trueका उपयोग करें--eval_dataset_idको image dataset की ओर point करते हुए। यह आपको training में उपयोग होने वाली complex conditioning dataset pairing setup के बिना, किसी भी image dataset को validation videos के लिए first-frame conditioning input के रूप में उपयोग करने देता है।
Option 2 के लिए example config:
Text Encoders¶
Hunyuan dual text encoder सेटअप (LLM + CLIP) उपयोग करता है। caching फेज के दौरान इन्हें लोड करने के लिए पर्याप्त सिस्टम RAM सुनिश्चित करें।