LongCat‑Video Edit (Image‑to‑Video) क्विकस्टार्ट¶
यह गाइड LongCat‑Video के image‑to‑video वर्कफ़्लो को प्रशिक्षण और वैलिडेशन के लिए बताती है। आपको flavours बदलने की आवश्यकता नहीं है; वही final चेकपॉइंट text‑to‑video और image‑to‑video दोनों को कवर करता है। अंतर आपके datasets और validation सेटिंग्स से आता है।
1) बेस LongCat‑Video के मुकाबले मॉडल अंतर¶
| बेस (text2video) | Edit / I2V | |
|---|---|---|
| Flavour | final |
final (same weights) |
| कंडीशनिंग | none | conditioning frame आवश्यक (पहला latent स्थिर रहता है) |
| टेक्स्ट एन्कोडर | Qwen‑2.5‑VL | Qwen‑2.5‑VL (same) |
| पाइपलाइन | TEXT2IMG | IMG2VIDEO |
| वैलिडेशन इनपुट्स | केवल prompt | prompt और conditioning image |
| Buckets / stride | 64px buckets, (frames-1)%4==0 |
same |
मुख्य डिफ़ॉल्ट्स जो आपको मिलते हैं
- shift 12.0 के साथ फ्लो‑मैचिंग।
- आस्पेक्ट बकेट्स 64px पर लागू।
- Qwen‑2.5‑VL टेक्स्ट एन्कोडर; CFG ऑन होने पर खाली नेगेटिव अपने‑आप जोड़े जाते हैं।
- डिफ़ॉल्ट फ्रेम्स: 93 ((frames-1)%4==0 को संतुष्ट करता है)।
2) कॉन्फ़िग बदलाव (CLI/WebUI)¶
{
"model_family": "longcat_video",
"model_flavour": "final",
"model_type": "lora",
"train_batch_size": 1,
"gradient_checkpointing": true,
"lora_rank": 8,
"learning_rate": 1e-4,
"validation_resolution": "480x832",
"validation_num_video_frames": 93,
"validation_num_inference_steps": 40,
"validation_guidance": 4.0,
"validation_using_datasets": true,
"eval_dataset_id": "longcat-video-val"
}
aspect_bucket_alignment को 64 पर रखें। पहला latent फ्रेम स्टार्ट इमेज रखता है; उसे बदले नहीं। 93 फ्रेम्स पर बने रहें (VAE stride नियम (frames - 1) % 4 == 0 से पहले से मेल खाता है) जब तक बदलने का मज़बूत कारण न हो।
त्वरित सेटअप:
model_family, model_flavour, output_dir, data_backend_config, और eval_dataset_id भरें। ऊपर दिए डिफ़ॉल्ट्स को तब तक रखें जब तक आपको कुछ अलग न चाहिए।
CUDA attention विकल्प:
- CUDA पर, LongCat‑Video उपलब्ध होने पर bundled block‑sparse Triton kernel को प्राथमिकता देता है और अन्यथा standard dispatcher पर fallback करता है। कोई मैनुअल टॉगल आवश्यक नहीं।
- यदि आप xFormers मजबूरी से चाहते हैं, तो config/CLI में attention_implementation: "xformers" सेट करें।
3) Dataloader: क्लिप्स को start frames के साथ जोड़ें¶
- दो datasets बनाएँ:
- Clips: target videos + captions (edit निर्देश)। इन्हें
is_i2v: trueमार्क करें औरconditioning_dataको start‑frame dataset ID पर सेट करें। - Start frames: प्रति क्लिप एक इमेज, वही फ़ाइलनाम, कोई कैप्शन नहीं।
- दोनों को 64px ग्रिड पर रखें (जैसे 480x832)। height/width 16 से विभाज्य होना चाहिए। frame counts को
(frames - 1) % 4 == 0पूरा करना चाहिए; 93 पहले से मान्य है। - clips और start frames के लिए अलग VAE caches रखें।
उदाहरण multidatabackend.json:
[
{
"id": "longcat-video-train",
"type": "local",
"dataset_type": "video",
"is_i2v": true,
"instance_data_dir": "/data/video-clips",
"caption_strategy": "textfile",
"resolution": 480,
"cache_dir_vae": "/cache/vae/longcat/video",
"conditioning_data": ["longcat-video-cond"]
},
{
"id": "longcat-video-cond",
"type": "local",
"dataset_type": "conditioning",
"instance_data_dir": "/data/video-start-frames",
"caption_strategy": null,
"resolution": 480,
"cache_dir_vae": "/cache/vae/longcat/video-cond"
}
]
caption_strategyविकल्प और आवश्यकताओं के लिए DATALOADER.md देखें।
4) वैलिडेशन विशिष्टताएँ¶
- प्रशिक्षण जैसी paired संरचना वाला एक छोटा validation split जोड़ें।
validation_using_datasets: trueसेट करें औरeval_dataset_idको उस split पर पॉइंट करें (जैसेlongcat-video-val), ताकि validation start frame स्वतः लाए। - WebUI previews:
simpletuner serverशुरू करें, LongCat‑Video edit चुनें, और start frame + prompt अपलोड करें। - Guidance: 3.5–5.0 अच्छा है; CFG ऑन होने पर खाली नेगेटिव अपने‑आप भरते हैं।
- कम VRAM previews/ट्रेनिंग के लिए
musubi_blocks_to_swap(4–8 से शुरू करें) और वैकल्पिक रूप सेmusubi_block_swap_deviceसेट करें ताकि forward/backward के दौरान आख़िरी transformer blocks CPU से स्ट्रीम हों। इससे throughput कुछ घटेगा लेकिन VRAM peak कम होंगे। - Sampling के दौरान conditioning frame स्थिर रहता है; केवल बाद वाले फ्रेम denoise होते हैं।
5) प्रशिक्षण शुरू (CLI)¶
कॉन्फ़िग और dataloader सेट होने के बाद:
सुनिश्चित करें कि training डेटा में conditioning frames मौजूद हों, ताकि पाइपलाइन conditioning latents बना सके।6) समस्या समाधान¶
- Missing conditioning image:
conditioning_dataसे conditioning dataset जोड़ें और फ़ाइलनाम मैच कराएँ;eval_dataset_idको validation split ID पर सेट करें। - Height/width errors: आयाम 16 से विभाज्य रखें और 64px ग्रिड पर रखें।
- First frame drifts: guidance 3.5–4.0 करें या steps घटाएँ।