Buckets:

mishig's picture
download
raw
35 kB
<meta charset="utf-8" /><meta name="hf:doc:metadata" content="{&quot;title&quot;:&quot;وظائف Hugging Face&quot;,&quot;local&quot;:&quot;hugging-face-jobs&quot;,&quot;sections&quot;:[{&quot;title&quot;:&quot;تدريب LoRA على Jobs&quot;,&quot;local&quot;:&quot;train-a-lora-on-jobs&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2},{&quot;title&quot;:&quot;إدارة مهمة&quot;,&quot;local&quot;:&quot;managing-a-job&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2},{&quot;title&quot;:&quot;الدراسة على صورك الخاصة&quot;,&quot;local&quot;:&quot;train-on-your-own-images&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2},{&quot;title&quot;:&quot;التدريب في FP8&quot;,&quot;local&quot;:&quot;train-in-fp8&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2},{&quot;title&quot;:&quot;تشغيل سكربت بدون ترويسة تبعيات&quot;,&quot;local&quot;:&quot;run-a-script-without-a-dependency-header&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2},{&quot;title&quot;:&quot;حفظ نقاط التفتيش للتشغيلات الطويلة&quot;,&quot;local&quot;:&quot;save-checkpoints-for-long-runs&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2},{&quot;title&quot;:&quot;الخطوات التالية&quot;,&quot;local&quot;:&quot;next-steps&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2}],&quot;depth&quot;:1}"/>
<link href="/docs/diffusers/main/en/_app/immutable/entry/start.0S0_iEoG.js" rel="modulepreload">
<link href="/docs/diffusers/main/en/_app/immutable/chunks/I9eooN77.js" rel="modulepreload">
<link href="/docs/diffusers/main/en/_app/immutable/chunks/Bupkjr9f.js" rel="modulepreload">
<link href="/docs/diffusers/main/en/_app/immutable/entry/app.CPdOxCbw.js" rel="modulepreload">
<link href="/docs/diffusers/main/en/_app/immutable/chunks/CyvZ3FS5.js" rel="modulepreload">
<link href="/docs/diffusers/main/en/_app/immutable/chunks/l0QnnOED.js" rel="modulepreload">
<link href="/docs/diffusers/main/en/_app/immutable/chunks/DnVIJfC5.js" rel="modulepreload">
<link href="/docs/diffusers/main/en/_app/immutable/chunks/DsnmJJEf.js" rel="modulepreload">
<link href="/docs/diffusers/main/en/_app/immutable/nodes/0.DteTvmQZ.js" rel="modulepreload">
<link href="/docs/diffusers/main/en/_app/immutable/chunks/CoSrdQax.js" rel="modulepreload">
<link href="/docs/diffusers/main/en/_app/immutable/nodes/371.mqOHi8TH.js" rel="modulepreload">
<link href="/docs/diffusers/main/en/_app/immutable/chunks/DSPDl1gz.js" rel="modulepreload">
<!--1ffuigs--><meta name="hf:doc:metadata" content="{&quot;title&quot;:&quot;Hugging Face Jobs&quot;,&quot;local&quot;:&quot;hugging-face-jobs&quot;,&quot;sections&quot;:[{&quot;title&quot;:&quot;Train a LoRA on Jobs&quot;,&quot;local&quot;:&quot;train-a-lora-on-jobs&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2},{&quot;title&quot;:&quot;Managing a Job&quot;,&quot;local&quot;:&quot;managing-a-job&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2},{&quot;title&quot;:&quot;Train on your own images&quot;,&quot;local&quot;:&quot;train-on-your-own-images&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2},{&quot;title&quot;:&quot;Train in FP8&quot;,&quot;local&quot;:&quot;train-in-fp8&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2},{&quot;title&quot;:&quot;Run a script without a dependency header&quot;,&quot;local&quot;:&quot;run-a-script-without-a-dependency-header&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2},{&quot;title&quot;:&quot;Save checkpoints for long runs&quot;,&quot;local&quot;:&quot;save-checkpoints-for-long-runs&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2},{&quot;title&quot;:&quot;Next steps&quot;,&quot;local&quot;:&quot;next-steps&quot;,&quot;sections&quot;:[],&quot;depth&quot;:2}],&quot;depth&quot;:1}"/><!---->
<link href="/docs/diffusers/main/en/_app/immutable/assets/0.tn0RQdqM.css" rel="modulepreload"> <!--[--><!--[0--><!--[--><!--[0--><!--[--><p></p> <div class="items-center shrink-0 min-w-[100px] max-sm:min-w-[50px] justify-end ml-auto flex" style="float: inline-end; margin-inline-start: 10px; display: inline-flex; position: relative; z-index: 10;"><div dir="ltr" class="inline-flex rounded-md max-sm:rounded-sm"><button class="inline-flex items-center gap-1 h-7 max-sm:h-7 px-2 max-sm:px-1.5 text-sm font-medium text-gray-800 border border-r-0 rounded-l-md max-sm:rounded-l-sm border-gray-200 bg-white hover:shadow-inner dark:border-gray-850 dark:bg-gray-950 dark:text-gray-200 dark:hover:bg-gray-800" aria-live="polite"><span class="inline-flex items-center justify-center rounded-md p-0.5 max-sm:p-0 hover:text-gray-800 dark:hover:text-gray-200"><svg class="sm:size-3.5 size-3" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----></span> <span dir="auto">Copy page</span></button> <button class="inline-flex items-center justify-center w-6 max-sm:w-5 h-7 max-sm:h-7 disabled:pointer-events-none text-sm text-gray-500 hover:text-gray-700 dark:hover:text-white rounded-r-md max-sm:rounded-r-sm border border-l transition border-gray-200 bg-white hover:shadow-inner dark:border-gray-850 dark:bg-gray-950 dark:text-gray-200 dark:hover:bg-gray-800" aria-haspopup="menu" aria-expanded="false" aria-label="Open copy menu"><svg class="transition-transform text-gray-400 overflow-visible sm:size-3.5 size-3 rotate-0" width="1em" height="1em" viewBox="0 0 12 7" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L6 6L11 1" stroke="currentColor"></path></svg><!----></button></div> <!--[-1--><!--]--></div><!----> <!--[0--><h1 class="relative group"><a id="hugging-face-jobs" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#hugging-face-jobs"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span><!---->وظائف Hugging Face<!----></span></h1><!--]--><!----> <p>يعمل <a href="https://huggingface.co/docs/hub/jobs" rel="nofollow">Hugging Face Jobs</a> على وحدات معالجة الرسوميات الخاصة بـ Hugging Face، لذا لا حاجة إلى إعداد جهاز، كما أن التشغيل يستمر حتى بعد إغلاق الطرفية. تعمل سكربتات التدريب الخاصة بـ Diffusers على Jobs مباشرةً من عنوان GitHub الخاص بها دون الحاجة إلى استنساخ المستودع أو تثبيت أي شيء محليًا.</p> <p>قبل أن تبدأ، اتبع <a href="https://huggingface.co/docs/hub/jobs-quickstart" rel="nofollow">دليل البدء السريع للمهام</a> لتثبيت واجهة <code>hf</code> سطر الأوامر، وتسجيل الدخول، وإضافة الرصيد إلى حسابك.</p> <!--[1--><h2 class="relative group"><a id="train-a-lora-on-jobs" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#train-a-lora-on-jobs"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span><!---->تدريب LoRA على Jobs<!----></span></h2><!--]--><!----> <p>تدرّب الأوامر أدناه نموذج LoRA على <a href="https://huggingface.co/black-forest-labs/FLUX.2-klein-4B" rel="nofollow">FLUX.2-klein-4B</a> باستخدام صور الكلاب الخمس الموجودة في <a href="https://huggingface.co/datasets/diffusers/dog-example" rel="nofollow">diffusers/dog-example</a>. يعمل الأمر على بطاقة A10G واحدة ويدفع نموذج LoRA إلى نطاقك على Hub.</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----> <div class=" absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0 "><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent;"></div> تم النسخ</div><!----></button><!----></div> <pre class="language-bash "><!----><span class="hljs-comment"># 20 steps is a test run. For a real run, raise --max_train_steps</span>
<span class="hljs-comment"># (the FLUX.2 README uses 500) and --timeout to match.</span>
hf <span class="hljs-built_in">jobs</span> uv run --flavor a10g-small --<span class="hljs-built_in">timeout</span> 30m -s HF_TOKEN -- \
https://raw.githubusercontent.com/huggingface/diffusers/main/examples/dreambooth/train_dreambooth_lora_flux2_klein.py \
--pretrained_model_name_or_path black-forest-labs/FLUX.2-klein-4B \
--dataset_name diffusers/dog-example \
--instance_prompt <span class="hljs-string">&quot;a photo of sks dog&quot;</span> \
--resolution 512 --mixed_precision bf16 --guidance_scale 1 \
--gradient_checkpointing --cache_latents \
--optimizer adamW --use_8bit_adam --learning_rate 1e-4 \
--max_train_steps 20 --seed 0 \
--output_dir /tmp/out \
--push_to_hub --hub_model_id your-username/klein-dog-lora<!----></pre></div><!----> <p>يقوم <code>uv</code> بتثبيت التبعيات المدرجة في ترويسة <code># /// script</code> الخاصة بالسكريبت، بما في ذلك Diffusers من <code>main</code>. لا تحصل المهام على رمز Hugging Face افتراضيًا، لذا يقوم <code>-s HF_TOKEN</code> بإحالة رمزك الخاص للسماح للسكريبت بدفع نموذج LoRA. يتم التخلص من قرص المهمة عند انتهائها، وأي شيء لا تدفعه سيُفقد. تشرح أدلة <a href="./dreambooth">DreamBooth</a> و<a href="./lora">LoRA</a> حُجج التدريب.</p> <!--[1--><h2 class="relative group"><a id="managing-a-job" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#managing-a-job"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span><!---->إدارة مهمة<!----></span></h2><!--]--><!----> <p>تُطبع سجلات التدريب في طرفية النظام أثناء تشغيل المهمة. إغلاق الطرفية أو الضغط على <code>Ctrl+C</code> لا يوقف التدريب، لأن المهمة تعمل على أجهزة Hugging Face. لإطلاق عملية تدريب طويلة دون إبقاء طرفية النظام مشغولة، أضف <code>-d</code> قبل <code>--</code>. سيطبع الأمر معرّف المهمة ثم يعيد.</p> <p>استخدم معرّف المهمة (Job ID) لإعادة الاتصال بالسجلات، أو التحقق من ذاكرة وحدة معالجة الرسوميات (GPU) ومستوى استخدامها أثناء تدريب النموذج، أو إيقاف تشغيل.</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----> <div class=" absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0 "><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent;"></div> تم النسخ</div><!----></button><!----></div> <pre class="language-bash "><!---->hf <span class="hljs-built_in">jobs</span> logs -f &lt;job_id&gt;
hf <span class="hljs-built_in">jobs</span> stats &lt;job_id&gt;
hf <span class="hljs-built_in">jobs</span> cancel &lt;job_id&gt;<!----></pre></div><!----> <p>إذا فشلت العملية، يعرض <code>hf jobs inspect &lt;job_id></code> رسالة الخطأ. راجع <a href="https://huggingface.co/docs/hub/jobs-manage" rel="nofollow">إدارة المهام</a> للاطلاع على الأوامر الأخرى.</p> <!--[1--><h2 class="relative group"><a id="train-on-your-own-images" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#train-on-your-own-images"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span><!---->الدراسة على صورك الخاصة<!----></span></h2><!--]--><!----> <p>لتدريب النموذج على صورك، اربط مجلد الصور بالـ Job باستخدام <code>-v</code> ومرر مسار الربط إلى <code>--instance_data_dir</code> بدلاً من <code>--dataset_name</code>. يقوم Jobs برفع المجلد إلى دلو خاص قبل بدء الـ Job ثم يربطه للقراءة فقط. عند رفع نفس المجلد مرة أخرى، يتم إرسال الملفات الجديدة أو المعدلة فقط.</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----> <div class=" absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0 "><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent;"></div> تم النسخ</div><!----></button><!----></div> <pre class="language-bash "><!---->hf <span class="hljs-built_in">jobs</span> uv run --flavor a10g-small --<span class="hljs-built_in">timeout</span> 30m -s HF_TOKEN \
-v ./my-dog:/data -- \
https://raw.githubusercontent.com/huggingface/diffusers/main/examples/dreambooth/train_dreambooth_lora_flux2_klein.py \
--pretrained_model_name_or_path black-forest-labs/FLUX.2-klein-4B \
--instance_data_dir /data \
--instance_prompt <span class="hljs-string">&quot;a photo of sks dog&quot;</span> \
--resolution 512 --mixed_precision bf16 --guidance_scale 1 \
--gradient_checkpointing --cache_latents \
--optimizer adamW --use_8bit_adam --learning_rate 1e-4 \
--max_train_steps 20 --seed 0 \
--output_dir /tmp/out \
--push_to_hub --hub_model_id your-username/klein-dog-lora<!----></pre></div><!----> <p>يفتح النص البرمجي كل ملف في <code>--instance_data_dir</code> كصورة، لذا احتفظ بالصور فقط في المجلد. يؤدي وجود ملف مخفي مثل <code>.DS_Store</code> إلى فشل التشغيل. راجع <a href="https://huggingface.co/docs/hub/jobs-configuration#local-directories" rel="nofollow">المجلدات المحلية</a> لمزيد من المعلومات حول تركيب المجلد.</p> <p>باستخدام <code>--with_prior_preservation</code>، يقوم السكربت بإنشاء صور الفئات في <code>--class_data_dir</code> قبل بدء التدريب. وجّهه إلى مسار يمكن للوظيفة الكتابة فيه. لإعادة استخدام صور الفئات في التشغيلات اللاحقة، ضعها في وحدة تخزين قابلة للقراءة والكتابة مثل تلك الموجودة في <a href="#save-checkpoints-for-long-runs">حفظ نقاط التفتيش للتشغيلات الطويلة</a>.</p> <!--[1--><h2 class="relative group"><a id="train-in-fp8" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#train-in-fp8"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span><!---->التدريب في FP8<!----></span></h2><!--]--><!----> <p>تستقبل سكربتات DreamBooth LoRA الخاصة بـ FLUX.2 و Z-Image و Ideogram 4 و Krea 2 معامل <code>--do_fp8_training</code> للتدريب باستخدام FP8 عبر <a href="https://github.com/pytorch/ao" rel="nofollow">torchao</a>، مما يُقلل من استهلاك الذاكرة. بما أن ترويسة أي سكربت لا تتضمن torchao، أضف <code>--with torchao</code> قبل <code>--</code>. كما يتطلب FP8 معالجًا رسوميًا (GPU) بقابلية حسابية 8.9 أو أعلى، مثل L4 (<code>l4x1</code>) أو L40S (<code>l40sx1</code>). ولا يدعم A10G (8.6) و A100 (8.0) هذه الميزة.</p> <!--[1--><h2 class="relative group"><a id="run-a-script-without-a-dependency-header" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#run-a-script-without-a-dependency-header"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span><!---->تشغيل سكربت بدون ترويسة تبعيات<!----></span></h2><!--]--><!----> <p>تُعلن سكربتات مجلدي <a href="https://github.com/huggingface/diffusers/tree/main/examples/dreambooth" rel="nofollow">examples/dreambooth</a> و <a href="https://github.com/huggingface/diffusers/tree/main/examples/advanced_diffusion_training" rel="nofollow">examples/advanced_diffusion_training</a> فقط عن تبعياتها في كتلة <code># /// script</code> في أعلى الملف. بعض السكربتات في تلك المجلدات، مثل <code>train_dreambooth_lora_sdxl.py</code>، لا تحتوي على هذه الكتلة.</p> <p>بالنسبة إلى سكربت لا يحتوي على ترويسة، مرّر كل اعتماد باستخدام <code>--with</code>. ثبّت Diffusers من المصدر، لأن سكربتات التدريب تتطلب الإصدار التطويري. أما الاعتمادات الأخرى فتأتي من ملف <code>requirements.txt</code> الخاص بالسكربت واستيراداته.</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----> <div class=" absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0 "><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent;"></div> تم النسخ</div><!----></button><!----></div> <pre class="language-bash "><!---->hf <span class="hljs-built_in">jobs</span> uv run --flavor a10g-small --<span class="hljs-built_in">timeout</span> 30m -s HF_TOKEN \
--with <span class="hljs-string">&quot;diffusers @ git+https://github.com/huggingface/diffusers.git&quot;</span> \
--with torch --with torchvision --with accelerate --with transformers \
--with peft --with datasets --with bitsandbytes \
--with ftfy --with tensorboard --with Jinja2 -- \
https://raw.githubusercontent.com/huggingface/diffusers/main/examples/dreambooth/train_dreambooth_lora_sdxl.py \
--pretrained_model_name_or_path stabilityai/stable-diffusion-xl-base-1.0 \
--pretrained_vae_model_name_or_path madebyollin/sdxl-vae-fp16-fix \
--dataset_name diffusers/dog-example \
--instance_prompt <span class="hljs-string">&quot;a photo of sks dog&quot;</span> \
--resolution 1024 --mixed_precision fp16 \
--gradient_checkpointing --use_8bit_adam --learning_rate 1e-4 \
--max_train_steps 20 --seed 0 \
--output_dir /tmp/out \
--push_to_hub --hub_model_id your-username/sdxl-dog-lora<!----></pre></div><!----> <!--[1--><h2 class="relative group"><a id="save-checkpoints-for-long-runs" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#save-checkpoints-for-long-runs"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span><!---->حفظ نقاط التفتيش للتشغيلات الطويلة<!----></span></h2><!--]--><!----> <p>قد يستغرق تشغيل يستمر لساعات حتى ينقطع أو يتعطل قبل اكتماله. للحفاظ على تقدمه، اربط <a href="https://huggingface.co/docs/hub/storage-buckets" rel="nofollow">Storage Bucket</a> بالوظيفة باستخدام <code>-v</code> وجعل <code>--output_dir</code> يشير إليه. أنشئ الدلو أولاً باستخدام <code>hf buckets create</code>.</p> <p>يحفظ السكربت مجلد <code>checkpoint-&lt;step></code> في <code>--output_dir</code> كل <code>--checkpointing_steps</code> خطوة (500 خطوة افتراضيًا)، لذا تُحفظ نقاط التفتيش في الدلو أثناء تقدم التدريب. يحدد <code>--checkpoints_total_limit</code> الحد الأقصى لعدد النقاط المحفوظة. يختار <code>--resume_from_checkpoint latest</code> الاستئناف من أحدث نقطة تفتيش في <code>--output_dir</code>، ويبدأ من الصفر إذا لم توجد نقطة، مما يجعل الأمر نفسه يعمل للتشغيل الأول ولكل إعادة تشغيل.</p> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg><!----> <div class=" absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0 "><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent;"></div> تم النسخ</div><!----></button><!----></div> <pre class="language-bash "><!---->hf <span class="hljs-built_in">jobs</span> uv run --flavor a10g-small --<span class="hljs-built_in">timeout</span> 8h -s HF_TOKEN \
-v hf://buckets/your-username/checkpoints:/ckpt -- \
https://raw.githubusercontent.com/huggingface/diffusers/main/examples/dreambooth/train_dreambooth_lora_flux2_klein.py \
--pretrained_model_name_or_path black-forest-labs/FLUX.2-klein-4B \
--dataset_name diffusers/dog-example \
--instance_prompt <span class="hljs-string">&quot;a photo of sks dog&quot;</span> \
--resolution 1024 --mixed_precision bf16 --guidance_scale 1 \
--gradient_checkpointing --cache_latents \
--optimizer adamW --use_8bit_adam --learning_rate 1e-4 \
--max_train_steps 5000 --seed 0 \
--checkpointing_steps 500 --checkpoints_total_limit 3 \
--resume_from_checkpoint latest \
--output_dir /ckpt/klein-dog<!----></pre></div><!----> <p>عند انتهاء التدريب، يُحفظ LoRA في الدلو على شكل <code>pytorch_lora_weights.safetensors</code>. راجع <a href="https://huggingface.co/docs/hub/jobs-configuration#volumes" rel="nofollow">Volumes</a> لمعرفة خيارات التركيب.</p> <blockquote class="note"><p>لا تضف <code>--push_to_hub</code> عندما يحتوي <code>--output_dir</code> على نقاط التفتيش. فعملية الرفع تتخطى مجلدات <code>step_*</code> و<code>epoch_*</code> فقط، لذا تُرفع مجلدات <code>checkpoint-&lt;step></code> إلى مستودع النموذج إلى جانب LoRA. بدلاً من ذلك، ارفع <code>pytorch_lora_weights.safetensors</code> إلى مستودع النموذج بنفسك.</p></blockquote> <!--[1--><h2 class="relative group"><a id="next-steps" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#next-steps"><span><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg><!----></span></a> <span><!---->الخطوات التالية<!----></span></h2><!--]--><!----> <ul><li>اقرأ <a href="https://huggingface.co/docs/hub/jobs-training" rel="nofollow">تدريب النماذج على المهام</a> في توثيقات Hub للاطلاع على الفحوصات التي يجب تنفيذها قبل مهمة طويلة وكيفية قراءة مهمة فاشلة.</li> <li>حمّل نموذج LoRA المدرّب لديك للاستدلال باستخدام دليل <a href="../tutorials/using_peft_for_inference">LoRA</a>.</li> <li>تصفّح ملفات <a href="https://github.com/huggingface/diffusers/tree/main/examples/dreambooth" rel="nofollow">DreamBooth README</a> للحصول على الأوامر وخيارات الذاكرة الخاصة بكل نموذج.</li></ul> <a class="!text-gray-400 !no-underline text-sm flex items-center not-prose mt-4" href="https://github.com/huggingface/diffusers/blob/main/docs/source/en/training/jobs.md" target="_blank"><svg class="mr-1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M31,16l-7,7l-1.41-1.41L28.17,16l-5.58-5.59L24,9l7,7z"></path><path d="M1,16l7-7l1.41,1.41L3.83,16l5.58,5.59L8,23l-7-7z"></path><path d="M12.419,25.484L17.639,6.552l1.932,0.518L14.351,26.002z"></path></svg><!----> <span><span class="underline">Update</span> on GitHub</span></a><!----> <p></p><!--]--><!----><!--]--><!--]--><!--]--> <!--[-1--><!--]--><!--]-->
<script>
{
__sveltekit_1qsdbwf = {
base: "/docs/diffusers/main/en",
assets: "/docs/diffusers/main/en"
};
const element = document.currentScript.parentElement;
Promise.all([
import("/docs/diffusers/main/en/_app/immutable/entry/start.0S0_iEoG.js"),
import("/docs/diffusers/main/en/_app/immutable/entry/app.CPdOxCbw.js")
]).then(([kit, app]) => {
kit.start(app, element, {
node_ids: [0, 371],
data: [null,null],
form: null,
error: null
});
});
}
</script>

Xet Storage Details

Size:
35 kB
·
Xet hash:
93110a5886587f155edee8f93f9c3404b115175fc63f59fc53ab03a14aa27bf3

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.