زاوية Anderson

كيفية تدريب واستخدام نماذج LoRA الفيديوية Hunyuan

mm
ChatGPT-4o: Variation on 'Create me an image 1792 x 1024. It should be in the style of Théodore Géricault, and should depict a dark medieval figure seated in front of a laptop, illuminated by the screen. We are facing the figure, and can only see the back of the laptop lid. Around the seated medieval figure are many other medieval men and women, curious as to what is happening on the computer screen'

هذا المقال سيعرض لك كيفية تثبيت واستخدام برنامج يعمل على نظام التشغيل Windows يمكنه تدريب نماذج LoRA الفيديوية Hunyuan، مما يسمح للمستخدم بإنشاء شخصيات مخصصة في نموذج Hunyuan Video Foundation.

انقر للتشغيل. أمثلة من الانفجار الأخير من Hunyuan LoRAs المشهورة من مجتمع civit.ai.

في الوقت الحالي، هناك طريقتان شائعتان لإنشاء نماذج LoRA Hunyuan محليًا:

1) إطار diffusion-pipe-ui القائم على Docker، الذي يعتمد على نظام التشغيل Windows Subsystem for Linux (WSL) لمعالجة بعض العمليات.

2) Musubi Tuner، وهو إضافة جديدة إلى هندسة Diffusion Training الشهيرة Kohya ss. لا يتطلب Musubi Tuner Docker ولا يعتمد على WSL أو وكلاء لينكس آخرين – لكنه قد يكون صعبًا للتشغيل على Windows.

لذلك، سيركز هذا العرض على Musubi Tuner، وعلى تقديم حل محلي كامل لتدريب وإنشاء LoRA Hunyuan، دون استخدام مواقع API أو عمليات استئجار GPU التجارية مثل Runpod.

https://www.unite.ai/wp-content/uploads/2025/01/musubi-activated-environment.jpg\Desktop\Musubi\.

في Powershell، انتقل إلى هذا المجلد عن طريق إدخال:

cd C:\Users\[Your Profile Name]\Desktop\Musubi

نريد أن يكون للبيئة الافتراضية إمكانية الوصول إلى ما قمنا بتثبيته بالفعل (特别 Triton)، لذلك سنستخدم علامة --system-site-packages. أدخل هذا:

python -m venv --system-site-packages musubi

انتظر حتى يتم إنشاء البيئة، ثم شغلها عن طريق إدخال:

.\musubi\Scripts\activate

من هذه النقطة فصاعدًا، يمكنك أن تعرف أنك في البيئة الافتراضية المفعلة من خلال ظهور (musubi) في بداية جميع سلاسل الأوامر.

استنساخ المستودع

انتقل إلى المجلد musubi الجديد (الذي يوجد داخل المجلد Musubi على سطح المكتب):

cd musubi

الآن بعد أن وصلنا إلى المكان الصحيح، أدخل الأمر التالي:

git clone https://github.com/kohya-ss/musubi-tuner.git

انتظر حتى يتم استنساخه (سيستغرق الأمر وقتًا قصيرًا).

تثبيت المتطلبات

انتقل إلى مجلد التثبيت:

cd musubi-tuner

أدخل:

pip install -r requirements.txt

انتظر حتى يتم تثبيت العديد من التثبيتات (سيستغرق هذا وقتًا أطول).

تسهيل الوصول إلى بيئة Hunyuan Video Venv

للوصول بسهولة إلى بيئة venv الجديدة في الجلسات المستقبلية، لصق النص التالي في Notepad و احفظه باسم activate.bat، مع خيار All files (انظر الصورة أدناه).

@echo off

call C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\Scripts\activate

cd C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\musubi-tuner

cmd

(استبدل [Your Profile Name] باسم ملف تعريف Windows الحقيقي)

لا يهم إلى أي موقع تحفظه.

من الآن فصاعدًا، يمكنك تشغيل activate.bat وبدء العمل على الفور.

استخدام Musubi Tuner

تحميل النماذج

عملية تدريب Hunyuan Video LoRA تتطلب تحميل ما لا يقل عن سبعة نماذج لتمكين جميع خيارات التحسين الممكنة للتحميل المسبق والتدريب على Hunyuan Video LoRA. معًا، تزن هذه النماذج أكثر من 60GB.

يمكن العثور على تعليمات التحميل الحالية في https://github.com/kohya-ss/musubi-tuner?tab=readme-ov-file#model-download

ومع ذلك، هذه هي تعليمات التحميل في وقت كتابة هذا المقال:

clip_l.safetensors
llava_llama3_fp16.safetensors و
llava_llama3_fp8.safetensors
يمكن تحميلها من:
https://huggingface.co/Comfy-Org/HunyuanVideo_repackaged/tree/main/split_files/text_encoders

mp_rank_00_model_states.pt
mp_rank_00_model_states_fp8.pt و
mp_rank_00_model_states_fp8_map.pt
يمكن تحميلها من:
https://huggingface.co/tencent/HunyuanVideo/tree/main/hunyuan-video-t2v-720p/transformers

pytorch_model.pt
يمكن تحميلها من:
https://huggingface.co/tencent/HunyuanVideo/tree/main/hunyuan-video-t2v-720p/vae

على الرغم من أنك يمكنك وضعها في أي مجلد تختاره، من أجل الاتساق مع البرمجة النصية اللاحقة، دعونا وضعها في:

C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\musubi-tuner\models\

هذا يتوافق مع ترتيب المجلدات حتى هذه النقطة؛ ولا تنسى استبدال [Your Profile Name] باسم مجلد ملف تعريف Windows الحقيقي.

تحضير البيانات

من المستحيل أن تتناقش في نقطة أنك ستحتاج إلى ما بين 10-100 صورة لبيانات التدريب ل LoRA Hunyuan. يمكن الحصول على نتائج جيدة جدًا حتى مع 15 صورة، طالما كانت الصور متوازنة وجيدة الجودة.

يمكن تدريب Hunyuan LoRA على الصور أو مقاطع الفيديو القصيرة والمنخفضة الدقة، أو حتى مزيج من كليهما – على الرغم من أن استخدام مقاطع الفيديو كبيانات تدريب يُعد تحديًا، حتى مع بطاقة 24GB.

ومع ذلك، فإن مقاطع الفيديو مفيدة حقًا فقط إذا كان لديك شخصية تتحرك بطريقة غير عادية قد لا تعرفها Hunyuan Video Foundation Model، أو لا تتمكن من تخمينها.

أمثلة على ذلك روجر رابيت، و xenomorph، و The Mask، و Spider-Man، أو شخصيات أخرى تمتلك حركات مميزة.

منذ أن تعرف Hunyuan Video بالفعل كيف يتحرك الرجال والنساء العاديون، فإن مقاطع الفيديو ليست ضرورية لتحصل على شخصية Hunyuan Video LoRA مقنعة. لذلك سنستخدم الصور الثابتة.

تحضير الصور

قائمة الدلو

النسخة المختصرة:

من الأفضل استخدام صور جميعها بنفس الحجم لمجموعة بياناتك، أو استخدام تقسيم 50/50 بين حجمين مختلفين، أي 10 صور بحجم 512x768px و 10 صور بحجم 768x512px.

الtraining قد ينجح حتى لو لم تفعل ذلك – Hunyuan Video LoRAs يمكن أن تكون متسامحة بشكل مدهش.

النسخة الأطول:

كما هو الحال مع LoRAs Kohya-ss للنظم التوليدية الثابتة مثل Stable Diffusion، الرزم تستخدم لتوزيع العبء عبر صور بحجم مختلف، مما يسمح باستخدام صور أكبر دون حدوث أخطاء ناتجة عن عدم كفاية الذاكرة (أي أن الرزم “تقسم” الصور إلى قطع يمكن للGPU التعامل معها، مع الحفاظ على السلامة النصية للصورة بأكملها).

对于 كل حجم صورة تضيفه إلى مجموعة بياناتك (أي 512x768px)، سيتم إنشاء سلة أو “مهمة فرعية” لهذا الحجم. إذا كان لديك التوزيع التالي للصور:

2x 512x768px images
7x 768x512px images
1x 1000x600px image
3x 400x800px images

يمكننا أن نرى أن انتباه السلة غير متوازن بين هذه الصور:

لذلك، إما أن تلتزم بformat واحد، أو تحاول الحفاظ على توزيع الأحجام المختلفة متساويًا.

في كلتا الحالتين، تجنب الصور الكبيرة، لأن هذا قد يبطئ من التدريب، دون فائدة ملحوظة.

من أجل البساطة، لجأت إلى استخدام 512x768px لجميع الصور في مجموعة البيانات.

الاستثناء: النموذج (الشخص) المستخدم في مجموعة البيانات أعطاني الإذن الكامل لاستخدام هذه الصور لهذا الغرض، ووافق على جميع الإخراجات القائمة على الذكاء الاصطناعي التي تظهر شبهه في هذا المقال.

مجموعة بياناتي تتكون من 40 صورة، بصيغة PNG (على الرغم من أن JPG جيدة أيضًا). تم تخزين صوري في C:\Users\Martin\Desktop\DATASETS_HUNYUAN\examplewoman

يجب عليك إنشاء مجلد cache داخل مجلد الصور:

الآن، هيا ننشئ ملفًا خاصًا سيساعد في تكوين التدريب.

ملفات TOML

عمليات التدريب والتحميل المسبق لنماذج LoRA Hunyuan Video تكتسب مسارات الملفات من ملف نص مسطح مع الامتداد .toml.

لما يخصي، يتم وضع ملف TOML في C:\Users\Martin\Desktop\DATASETS_HUNYUAN\training.toml

محتوى ملف TOML الخاص بي يبدو هكذا:

[general]

resolution = [512, 768]

caption_extension = ".txt"

batch_size = 1

enable_bucket = true

bucket_no_upscale = false

[[datasets]]

image_directory = "C:\\Users\\Martin\\Desktop\\DATASETS_HUNYUAN\\examplewoman"

cache_directory = "C:\\Users\\Martin\\Desktop\\DATASETS_HUNYUAN\\examplewoman\\cache"

num_repeats = 1

(الشرطات المزدوجة للشريطي لا داعي لاستخدامها دائمًا، لكنها يمكن أن تساعد في تجنب الأخطاء في حالات وجود مسافات في المسار).

نرى في قسم resolution أن هناك حجمين يُعتبران – 512px و 768px. يمكنك أيضًا تركها عند 512px، وستحصل على نتائج جيدة.

التعليقات

Hunyuan Video هو نموذج أساسي للرؤية + النص، لذلك намحتاج إلى تعليقات وصفية لهذه الصور، والتي سيتم النظر فيها أثناء التدريب. عملية التدريب ستفشل بدون تعليقات.

هناك عديد من أنظمة التعليق المفتوحة المصدر التي يمكننا استخدامها لهذه المهمة، لكن هيا نستخدم نظام taggui البسيط. على الرغم من أنه مخزن في GitHub، و على الرغم من أنه ي下载 بعض نماذج الذكاء الاصطناعي الثقيلة عند التشغيل لأول مرة، إلا أنه يأتي في شكل تطبيق Windows بسيط يحتوي على واجهة مستخدم رسومية بسيطة.

بعد تشغيل Taggui، استخدم File > Load Directory للتنقل إلى مجموعة بيانات الصور، واختر معرّف رمز (في هذه الحالة، examplewoman) الذي سيتم إضافته إلى جميع التعليقات:

(تأكد من إيقاف Load in 4-bit عند فتح Taggui لأول مرة – سوف يلقي أخطاء أثناء التعليق إذا تم تركها).

حدد صورة في عمود المعاينة الأيسر واضغط على CTRL+A لتحديد جميع الصور. ثم اضغط على زر Start Auto-Captioning على اليمين:

ست thấy Taggui ي下载 النماذج في الشريط الصغير من سطر الأوامر على العمود الأيمن، ولكن فقط إذا كان هذا هو المرة الأولى التي تشغل فيها البرنامج. خلاف ذلك، ست thấy معاينة للتعليقات.

الآن، كل صورة لها ملف تعليق .txt tương ứng مع وصف لمحتوى الصورة:

يمكنك النقر على Advanced Options في Taggui لزيادة طول ونمط التعليقات، ولكن هذا يخرج عن نطاق هذا العرض.

اغلق Taggui و هيا ننتقل إلى…

التحميل المسبق اللاتنتي

من أجل تجنب التحميل الزائد للGPU في وقت التدريب، من الضروري إنشاء نوعين من الملفات المحملة مسبقًا – واحد لتمثيل الصورة اللاتنتية المستمدة من الصور نفسها، وآخر لتقييم ترميز النص المتعلق بمحتوى التعليق.

لتبسيط العمليات الثلاث (2x التحميل المسبق + التدريب)، يمكنك استخدام ملفات .BAT التفاعلية التي ستسألك أسئلة وتنجز العمليات عندما تقدم المعلومات الضرورية.

对于 التحميل المسبق اللاتنتي، لصق النص التالي في Notepad و احفظه كملف .BAT (أي اسمه latent-precache.bat أو أي اسم تريده)، كما فعلنا من قبل، مع التأكد من أن نوع الملف في قائمة التنزيل في حوار Save As هو All Files (انظر الصورة أدناه):

@echo off

REM Activate the virtual environment

call C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\Scripts\activate.bat

REM Get user input

set /p IMAGE_PATH=Enter the path to the image directory:

set /p CACHE_PATH=Enter the path to the cache directory:

set /p TOML_PATH=Enter the path to the TOML file:

echo You entered:

echo Image path: %IMAGE_PATH%

echo Cache path: %CACHE_PATH%

echo TOML file path: %TOML_PATH%

set /p CONFIRM=Do you want to proceed with latent pre-caching (y/n)?

if /i "%CONFIRM%"=="y" (

REM Run the latent pre-caching script

python C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\musubi-tuner\cache_latents.py --dataset_config %TOML_PATH% --vae C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\musubi-tuner\models\pytorch_model.pt --vae_chunk_size 32 --vae_tiling

) else (

echo Operation canceled.

)

REM Keep the window open

pause

(تأكد من استبدال [Your Profile Name] باسم ملف تعريف Windows الحقيقي)

الآن يمكنك تشغيل ملف .BAT للتحميل المسبق اللاتنتي:

عندما يطلب منك ملف .BAT الأسئلة المختلفة، لصق أو اكتب مسار مجموعة بياناتك، مجلدات الذاكرة المؤقتة، وملف TOML.

التحميل المسبق للنص

سننشئ ملف .BAT آخر، هذه المرة للتحميل المسبق للنص.

@echo off

REM Activate the virtual environment

call C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\Scripts\activate.bat

REM Get user input

set /p IMAGE_PATH=Enter the path to the image directory:

set /p CACHE_PATH=Enter the path to the cache directory:

set /p TOML_PATH=Enter the path to the TOML file:

echo You entered:

echo Image path: %IMAGE_PATH%

echo Cache path: %CACHE_PATH%

echo TOML file path: %TOML_PATH%

set /p CONFIRM=Do you want to proceed with text encoder output pre-caching (y/n)?

if /i "%CONFIRM%"=="y" (

REM Use the python executable from the virtual environment

python C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\musubi-tuner\cache_text_encoder_outputs.py --dataset_config %TOML_PATH% --text_encoder1 C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\musubi-tuner\models\llava_llama3_fp16.safetensors --text_encoder2 C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\musubi-tuner\models\clip_l.safetensors --batch_size 16

) else (

echo Operation canceled.

)

REM Keep the window open

pause

احفظه كملف .BAT (مثل text-cache.bat) في أي موقع مناسب، كما فعلنا من قبل.

شغل ملف .BAT الجديد، اتبع الإرشادات، وستظهر الملفات المحملة مسبقًا في مجلد cache:

تدريب Hunyuan Video LoRA

تدريب LoRA الفعلي سيستغرق وقتًا أطول بكثير من العمليات التحضيرية هذه.

على الرغم من وجود العديد من المتغيرات التي يمكننا القلق بشأنها (مثل حجم الدفعة، وعدد التكرارات، وعدد الحقبات، وما إذا كان استخدام النماذج الكاملة أو المكمّلة)، سنترك هذه الاعتبارات لمقال لاحق، وسترة أعمق في دقائق إنشاء LoRA.

سننشئ ملف .BAT آخر، هذه المرة لبدء التدريب. لصق النص التالي في Notepad و احفظه كملف .BAT (مثل training.bat):

@echo off

REM Activate the virtual environment

call C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\Scripts\activate.bat

REM Get user input

set /p DATASET_CONFIG=Enter the path to the dataset configuration file:

set /p EPOCHS=Enter the number of epochs to train:

set /p OUTPUT_NAME=Enter the output model name (e.g., example0001):

set /p LEARNING_RATE=Choose learning rate (1 for 1e-3, 2 for 5e-3, default 1e-3):

if "%LEARNING_RATE%"=="1" set LR=1e-3

if "%LEARNING_RATE%"=="2" set LR=5e-3

if "%LEARNING_RATE%"=="" set LR=1e-3

set /p SAVE_STEPS=How often (in steps) to save preview images:

set /p SAMPLE_PROMPTS=What is the location of the text-prompt file for training previews?

echo You entered:

echo Dataset configuration file: %DATASET_CONFIG%

echo Number of epochs: %EPOCHS%

echo Output name: %OUTPUT_NAME%

echo Learning rate: %LR%

echo Save preview images every %SAVE_STEPS% steps.

echo Text-prompt file: %SAMPLE_PROMPTS%

REM Prepare the command

set CMD=accelerate launch --num_cpu_threads_per_process 1 --mixed_precision bf16 ^

C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\musubi-tuner\hv_train_network.py ^

--dit C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\musubi-tuner\models\mp_rank_00_model_states.pt ^

--dataset_config %DATASET_CONFIG% ^

--sdpa ^

--mixed_precision bf16 ^

--fp8_base ^

--optimizer_type adamw8bit ^

--learning_rate %LR% ^

--gradient_checkpointing ^

--max_data_loader_n_workers 2 ^

--persistent_data_loader_workers ^

--network_module=networks.lora ^

--network_dim=32 ^

--timestep_sampling sigmoid ^

--discrete_flow_shift 1.0 ^

--max_train_epochs %EPOCHS% ^

--save_every_n_epochs=1 ^

--seed 42 ^

--output_dir "C:\Users\[Your Profile Name]\Desktop\Musubi\Output Models" ^

--output_name %OUTPUT_NAME% ^

--vae C:/Users/[Your Profile Name]/Desktop/Musubi/musubi/musubi-tuner/models/pytorch_model.pt ^

--vae_chunk_size 32 ^

--vae_spatial_tile_sample_min_size 128 ^

--text_encoder1 C:/Users/[Your Profile Name]/Desktop/Musubi/musubi/musubi-tuner/models/llava_llama3_fp16.safetensors ^

--text_encoder2 C:/Users/[Your Profile Name]/Desktop/Musubi/musubi/musubi-tuner/models/clip_l.safetensors ^

--sample_prompts %SAMPLE_PROMPTS% ^

--sample_every_n_steps %SAVE_STEPS% ^

--sample_at_first

echo The following command will be executed:

echo %CMD%

set /p CONFIRM=Do you want to proceed with training (y/n)?

if /i "%CONFIRM%"=="y" (

%CMD%

) else (

echo Operation canceled.

)

REM Keep the window open

cmd /k

احفظه كملف .BAT (مثل training.bat)، كما فعلنا من قبل.

تأكد من أن المجلد C:\Users\[Your Profile Name]\Desktop\Musubi\Output Models\ موجود، و أنشئه في ذلك الموقع إذا لم يكن موجودًا.

معاينات التدريب

هناك ميزة معاينة تدريب أساسية تم تمكينها مؤخرًا لموسوبي تونر، مما يسمح لك بتشغيل نموذج التدريب وتوليد صور بناءً على تعليمات نصية محفوظة.

لتمكين ذلك، ستحتاج إلى حفظ على الأقل تعليمات نصية واحدة في ملف نصي. سيسأل ملف .BAT الخاص بالتدريب عن موقع ملف التعليقات؛ لذلك يمكنك تسمية ملف التعليقات بأي اسم تريده، ووضعه في أي موقع.

هنا بعض الأمثلة على تعليمات نصية لملف سيولد ثلاث صور مختلفة عند الطلب من قبل روتين التدريب:

كما ترون، يمكنك وضع علامات في نهاية التعليقات التي تؤثر على الصور:

–w هو العرض (افتراضيًا 256px إذا لم يتم تحديده، وفقًا الوثائق)
–h هو الطول (افتراضيًا 256px إذا لم يتم تحديده)
–f هو عدد الإطارات. إذا تم تحديده إلى 1، يتم إنشاء صورة؛ أكثر من 1، يتم إنشاء فيديو.
–d هو البذرة. إذا لم يتم تحديده، يكون عشوائيًا؛ لكن يجب عليك تحديده لرؤية تعليق واحد يتطور.
–s هو عدد الخطوات في التوليد، افتراضيًا 20.

انظر الوثائق الرسمية للاطلاع على علامات إضافية.

على الرغم من أن معاينات التدريب يمكن أن تكشف بسرعة عن بعض المشاكل التي قد تؤدي إلى إلغاء التدريب واعادة النظر في البيانات أو الإعدادات، تذكر أن كل تعليق إضافي يبطئ التدريب قليلاً.

كما أن حجم صورة معاينة التدريب الأوسع والأطول (كما هو محدد في العلامات المذكورة أعلاه) يبطئ التدريب.

شغل ملف .BAT الخاص بالتدريب.

السؤال #1 هو ‘ادخل مسار ملف تكوين مجموعة البيانات’. لصق أو اكتب المسار الصحيح لملف TOML.

السؤال #2 هو ‘ادخل عدد الحقبات للتدريب’. هذا متغير تجريبي، لأنه يتأثر بعدد الصور وجودة الصور، وكذلك التعليقات، وعوامل أخرى. بشكل عام، من الأفضل تحديده إلى قيمة أعلى من اللازم، لأنك يمكنك دائمًا إيقاف التدريب باستخدام Ctrl+C في نافذة التدريب إذا شعرت أن النموذج قد تقدم بما فيه الكفاية. حدد قيمة 100 في البداية، وسترى كيف سيتطور.

السؤال #3 هو ‘ادخل اسم النموذج المخرج’. اسم النموذج! قد يكون من الأفضل الحفاظ على الاسم قصيرًا وبسيطًا.

السؤال #4 هو ‘اختر معدل التعلم’, الذي يُحدد افتراضيًا إلى 1e-3 (خيار 1). هذا مكان جيد للبدء، مع خبرة لاحقة.

السؤال #5 هو ‘كم عدد الخطوات لحفظ معاينات الصور’. إذا حددت قيمة منخفضة جدًا، ست看到 تقدمًا قليلًا بين حفظ معاينات الصور، وسيبطئ التدريب.

السؤال #6 هو ‘ما موقع ملف تعليمات نصية معاينة التدريب؟’. لصق أو اكتب مسار ملف التعليقات.

سوف يظهر لك ملف .BAT الأمر الذي سيتم إرساله إلى نموذج Hunyuan، ويسأل إذا كنت تريد المتابعة، y/n.

امضِ قدمًا و ابدأ التدريب:

خلال هذا الوقت، إذا قمت بفحص قسم GPU من علامة التبويب الأداء في مدير المهام في Windows، ست thấy عملية تستهلك حوالي 16GB من VRAM.

قد لا تكون هذه قيمة عشوائية، لأنها كمية VRAM المتاحة على العديد من بطاقات الرسومات NVIDIA، وقد تم تحسين الكود الأصلي لتناسب هذه المهمة في 16GB لمساعدة أولئك الذين يمتلكون مثل هذه البطاقات.

على أي حال، من السهل جدًا رفع استخدام VRAM هذا، من خلال إرسال علامات أكثر طموحًا إلى أمر التدريب.

خلال التدريب، ست thấy رقمًا لوقت المضي، ووقت التدريب المقدر (الذي سيختلف بشكل كبير اعتمادًا على العلامات المحددة، وعدد صور التدريب، وعدد صور معاينة التدريب، وعوامل أخرى).

معدل التدريب النموذجي هو حوالي 3-4 ساعات على إعدادات متوسطة، اعتمادًا على الأجهزة المتاحة، وعدد الصور، وضبط العلامات، وعوامل أخرى.

استخدام نماذج LoRA المدربة في Hunyuan Video

اختيار النقاط

عند انتهاء التدريب، ستكون لديك نقطة تثبيت واحدة لكل حقبة من التدريب.

يمكن تغيير تواتر الحفظ هذا عن طريق تعديل رقم --save_every_n_epochs [N] في ملف .BAT الخاص بالتدريب. إذا أضفت رقمًا منخفضًا لعدد الخطوات عند إعداد التدريب، ستكون هناك عدد كبير من ملفات تثبيت النقاط.

أي نقطة يجب اختيارها؟

كما ذكرنا سابقًا، النماذج المُدرَّبة في البداية ستكون أكثر مرونة، في حين قد تقدم النقاط اللاحقة التفاصيل الأكثر.

الطريقة الوحيدة لاختبار هذه العوامل هي تشغيل بعض LoRAs وتوليد بعض الفيديوهات. بهذه الطريقة، يمكنك التعرف على النقاط الأكثر إنتاجية، والتي تمثل أفضل توازن بين المرونة والدقة.

ComfyUI

بيئة Hunyuan Video LoRAs الأكثر شعبية (في الوقت الحالي) هي ComfyUI، وهو محرر قائم على العقد يحتوي على واجهة Gradio متقدمة تعمل في متصفح الويب.

مصدر: https://github.com/comfyanonymous/ComfyUI

مصدر: https://github.com/comfyanonymous/ComfyUI

تعليمات التثبيت بسيطة ومتاحة في المستودع الرسمي على GitHub (سيتم تحميل نماذج إضافية).

تحويل النماذج ل ComfyUI

نماذجك المدربة يتم حفظها في تنسيق (diffusers) غير متوافق مع معظم تنفيذات ComfyUI. Musubi قادرة على تحويل نموذج إلى تنسيق متوافق مع ComfyUI. هيا ننشئ ملف .BAT لتنفيذ ذلك.

قبل تشغيل ملف .BAT هذا، أنشئ مجلد C:\Users\[Your Profile Name]\Desktop\Musubi\CONVERTED\ الذي يتوقعها البرنامج.

@echo off

REM Activate the virtual environment

call C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\Scripts\activate.bat

:START

REM Get user input

set /p INPUT_PATH=Enter the path to the input Musubi safetensors file (or type "exit" to quit):

REM Exit if the user types "exit"

if /i "%INPUT_PATH%"=="exit" goto END

REM Extract the file name from the input path and append 'converted' to it

for %%F in ("%INPUT_PATH%") do set FILENAME=%%~nF

set OUTPUT_PATH=C:\Users\[Your Profile Name]\Desktop\Musubi\Output Models\CONVERTED\%FILENAME%_converted.safetensors

set TARGET=other

echo You entered:

echo Input file: %INPUT_PATH%

echo Output file: %OUTPUT_PATH%

echo Target format: %TARGET%

set /p CONFIRM=Do you want to proceed with the conversion (y/n)?

if /i "%CONFIRM%"=="y" (

REM Run the conversion script with correctly quoted paths

python C:\Users\[Your Profile Name]\Desktop\Musubi\musubi\musubi-tuner\convert_lora.py --input "%INPUT_PATH%" --output "%OUTPUT_PATH%" --target %TARGET%

echo Conversion complete.

) else (

echo Operation canceled.

)

REM Return to start for another file

goto START

:END

REM Keep the window open

echo Exiting the script.

pause

احفظه كملف .BAT (مثل convert.bat)، كما فعلنا من قبل.

عندما يتم حفظه، شغل ملف .BAT الجديد، الذي سيسأل عن موقع ملف لتحويله.

لصق أو اكتب مسار النموذج المدرب الذي تريد تحويله، ثم اضغط على y وادخل.

بعد حفظ النموذج المحول في مجلد CONVERTED، سيسأل البرنامج إذا كنت تريد تحويل ملف آخر. إذا كنت تريد اختبار عدة نقاط في ComfyUI، احفظ عدة نماذج.

عندما تحول ما يكفي من النماذج، أغلق نافذة الأمر.

يمكنك الآن نسخ النماذج المحولة إلى مجلد models\loras في تثبيت ComfyUI.

عادةً ما يكون الموقع الصحيح هو:

C:\Users\[Your Profile Name]\Desktop\ComfyUI\models\loras\

إنشاء Hunyuan Video LoRAs في ComfyUI

على الرغم من أن تدفقات العقد في ComfyUI قد تظهر معقدة في البداية، يمكن تحميل إعدادات مستخدمين آخرين أكثر خبرة عن طريق سحب صورة (مُنشأة باستخدام إعدادات ComfyUI الخاصة بهم) مباشرة إلى نافذة ComfyUI. يمكن تصدير تدفقات العمل أيضًا كملفات JSON، والتي يمكن استيرادها يدويًا أو سحبها إلى نافذة ComfyUI.

بعض التدفقات المستوردة قد تملك зависимости لا توجد في تثبيتك. لذلك، قم بتثبيت ComfyUI-Manager، الذي يمكنه استرداد الوحدات الناقصة تلقائيًا.

مصدر: https://github.com/ltdrdata/ComfyUI-Manager

مصدر: https://github.com/ltdrdata/ComfyUI-Manager

لتحميل واحد من التدفقات المستخدمة لإنشاء فيديوهات من النماذج في هذا البرنامج التعليمي، حمل هذا الملف JSON و اسحبه إلى نافذة ComfyUI (على الرغم من أن هناك أمثلة تدفق أفضل متاحة في المجتمعات المختلفة التي اعتمدت Hunyuan Video، وملفي مُعدل من واحد منهم).

هذا ليس المكان المناسب لبرنامج تعليمي موسع في استخدام ComfyUI، لكن من الجدير ذكر بعض المعاملات الحاسمة التي ستؤثر على الإخراج إذا قمت بتحميل وتثبيت تخطيط JSON المذكور أعلاه.

1) العرض والطول

كلما كانت الصورة أكبر، زادت مدة التوليد، وازداد خطر حدوث خطأ ناتج عن عدم كفاية الذاكرة (OOM).

2) الطول

هذا هو القيمة العددية لعدد الإطارات. كم عدد الثواني التي تتراكم إليها يعتمد على معدل الإطار (محدد عند 30 إطارًا في الثانية في هذا التخطيط). يمكنك تحويل الثواني إلى إطارات بناءً على معدل الإطار على Omnicalculator.

3) حجم الدفعة

كلما زادت دفعة المعالجة، زادت السرعة المحتملة للنتيجة، ولكن ازدادت عبء VRAM. حدد دفعة المعالجة كبيرة جدًا، وستحصل على خطأ ناتج عن عدم كفاية الذاكرة (OOM).

4) التحكم بعد التوليد

هذا يتحكم في البذرة العشوائية. خيارات العقدة الفرعية هي ثابت، زيادة، تنقاص، و توليد عشوائي. إذا تركتها على ثابت، و لم تتغير تعليمات النص، ستحصل على نفس الصورة كل مرة. إذا قمت بتعديل تعليمات النص، ستتغير الصورة إلى حد ما. إعدادات زيادة و تنقاص تسمح لك باستكشاف قيم بذرة قريبة، بينما يمنحك توليد عشوائي تفسيرًا جديدًا تمامًا للتعليمات.

5) اسم LoRA

ستحتاج إلى تحديد نموذجك المثبت هنا، قبل محاولة التوليد.

6) الرمز

إذا قمت بتدريب نموذجك لتحفيز مفهوم ما (مثل ‘example-person’)، ضع كلمة التحفيز في تعليماتك.

7) الخطوات

هذا يمثل عدد الخطوات التي ستطبقها على عملية التوليد. خطوات أعلى قد تحصل على تفاصيل أفضل، ولكن هناك سقف لمدى فعالية هذا النهج، ويمكن أن يكون من الصعب العثور عليه. النطاق الشائع للخطوات هو حول 20-30.

8) حجم البلاط

هذا يحدد كمية المعلومات التي يتم التعامل معها في وقت واحد أثناء التوليد. إنه محدد افتراضيًا إلى 256. زيادة حجم البلاط يمكن أن تسرع التوليد، ولكن زيادته بشكل كبير يمكن أن يؤدي إلى تجربة OOM محبطة، لأنها تحدث في نهاية عملية طويلة.

9) التأثير الزمني

توليد Hunyuan Video لشخصيات يمكن أن يؤدي إلى “تأثير شبح” أو حركة غير مقنعة إذا تم تحديده إلى قيمة منخفضة. بشكل عام، يُعتبر الحكمة الحالية أن يتم تعيينه إلى قيمة أعلى من عدد الإطارات، لتحسين الحركة.

الختام

على الرغم من أن استكشاف استخدام ComfyUI يخرج عن نطاق هذا المقال، يمكن أن يسهل خبرة المجتمع في Reddit و Discords منحنى التعلم، وهناك عدة دلائل trực tuyến تُقدم أساسياته.

أوّلاً، تم نشر هذا المقال يوم الخميس، 23 يناير 2025.

كاتب في تعلم الآلة، متخصص في مجال 합성 الصور البشرية. السابق رئيس محتوى البحث في Metaphysic.ai.
الsite الشخصي: martinanderson.ai
التواصل: [email protected]
تويتر: @manders_ai