آموزش جامع ComfyUI از صفر تا صد: راهنمای کامل برای تولید تص…

۷ تیر ۱۴۰۵ · ۳۳ دقیقه مطالعه

گندم کریمی
گندم کریمی

5 سال تجربه

متخصص هوش مصنوعی و تولید محتوا در Axeto. روی Prompt Engineering، Flux، ComfyUI و workflowهای تصویر/ویدیو AI تمرکز دارد.

نکات کلیدی

  • ComfyUI کنترل بی‌سابقه‌ای بر فرآیند تولید تصویر با Stable Diffusion ارائه می‌دهد.
  • برای شروع کار با ComfyUI، به سخت‌افزار مناسب (GPU با حداقل 8GB VRAM) و نرم‌افزارهای پیش‌نیاز (Python 3.10+, Git) نیاز دارید.
  • رابط کاربری گره‌محور ComfyUI امکان ساخت workflowهای پیچیده و سفارشی‌سازی هر مرحله را فراهم می‌کند.
  • آشنایی با مفاهیمی مانند Stable Diffusion، Generative AI، Prompts و Models برای استفاده بهینه از ComfyUI ضروری است.
  • ComfyUI به شما اجازه می‌دهد تا مدل‌های سفارشی ایجاد کرده و تکنیک‌های مختلف را برای تولید تصاویر منحصر به فرد ترکیب کنید.

همین حالا در Axeto امتحان کنید

مقاله را خواندید — حالا با ابزار واقعی Axeto خروجی بگیرید.

تصویری از یک تولیدکننده محتوای ایرانی که در حال کار با رابط کاربری گره‌محور ComfyUI بر روی یک کامپیوتر قدرتمند است.

آموزش ComfyUI از صفر: راهنمای جامع برای تولیدکنندگان محتوای ایرانی

مقدمه

در دنیای پرشتاب هوش مصنوعی و تولید محتوا، ابزارهای قدرتمندی ظهور کرده‌اند که به هنرمندان، طراحان و تولیدکنندگان محتوا امکان می‌دهند تا ایده‌های خود را با سرعتی بی‌سابقه به واقعیت تبدیل کنند. یکی از این ابزارهای انقلابی، ComfyUI است. اگر تا به حال با ابزارهایی مانند Stable Diffusion WebUI کار کرده‌اید، ممکن است احساس کرده باشید که کنترل محدودی بر روی جزئیات فرآیند تولید تصویر دارید. ComfyUI این محدودیت را از بین می‌برد و با رویکردی مبتنی بر گره (Node-based)، به شما امکان می‌دهد تا هر مرحله از فرآیند تولید تصویر را به صورت بصری و کاملاً سفارشی‌سازی شده مدیریت کنید.

این راهنما برای تولیدکنندگان محتوای ایرانی طراحی شده است که می‌خواهند از صفر با ComfyUI آشنا شوند و به یک متخصص در این زمینه تبدیل شوند. ما نه تنها به شما نحوه نصب و راه‌اندازی را آموزش می‌دهیم، بلکه عمیقاً به مفاهیم پشت هر گره، نحوه اتصال آن‌ها و ایجاد workflowهای پیچیده خواهیم پرداخت. هدف ما این است که شما بتوانید با استفاده از ComfyUI، تصاویری بی‌نظیر و دقیقاً مطابق با تصورات خود خلق کنید و از پتانسیل کامل هوش مصنوعی بهره‌مند شوید. این آموزش جامع، گام به گام شما را از یک کاربر مبتدی به یک کاربر پیشرفته ComfyUI تبدیل خواهد کرد.

ComfyUI به دلیل انعطاف‌پذیری بی‌نظیر و قابلیت شخصی‌سازی بالا، به سرعت در حال تبدیل شدن به ابزاری محبوب در میان متخصصان هوش مصنوعی است. در حالی که ابزارهای دیگر ممکن است رابط کاربری ساده‌تری داشته باشند، ComfyUI کنترل کامل را به شما می‌دهد. این کنترل به معنای توانایی ایجاد مدل‌های سفارشی، ترکیب تکنیک‌های مختلف، و بهینه‌سازی هر جزء از فرآیند تولید است. برای کسانی که به دنبال فراتر رفتن از تولید تصاویر ساده هستند و می‌خواهند عمق هوش مصنوعی مولد را کشف کنند، ComfyUI ابزاری ضروری است.

در ادامه این مقاله، ما به بررسی دقیق هر بخش از ComfyUI خواهیم پرداخت. از نصب اولیه و راه‌اندازی گرفته تا درک مفاهیم پیشرفته‌تر، همه چیز را پوشش خواهیم داد. همچنین، به شما نشان خواهیم داد که چگونه می‌توانید از Axeto برای تست و بهبود workflowهای خود استفاده کنید و بهترین نتایج را در زبان فارسی به دست آورید. آماده باشید تا سفری هیجان‌انگیز را در دنیای ComfyUI آغاز کنید!

پیش‌نیازها

قبل از شروع به کار با ComfyUI، آشنایی با چند مفهوم و داشتن برخی پیش‌نیازها می‌تواند فرآیند یادگیری شما را هموارتر کند. این بخش به شما کمک می‌کند تا مطمئن شوید که همه چیز برای یک شروع موفق آماده است.

سخت‌افزار مورد نیاز

ComfyUI، مانند بسیاری از ابزارهای تولید تصویر با هوش مصنوعی، به منابع سخت‌افزاری قابل توجهی نیاز دارد، به خصوص اگر قصد دارید مدل‌های بزرگ را اجرا کنید یا تصاویر با کیفیت بالا تولید کنید.

  • کارت گرافیک (GPU): این مهم‌ترین جزء است. یک کارت گرافیک NVIDIA با حداقل 8 گیگابایت VRAM (حافظه ویدئویی) توصیه می‌شود. کارت‌های 12 گیگابایت یا بیشتر (مانند سری RTX 3060 12GB، RTX 3080، RTX 4070 و بالاتر) عملکرد بسیار بهتری ارائه می‌دهند. هرچه VRAM بیشتر باشد، می‌توانید تصاویر بزرگتر، batch size بالاتر و مدل‌های پیچیده‌تر را سریع‌تر پردازش کنید. AMD GPUها نیز پشتیبانی می‌شوند، اما تنظیمات ممکن است کمی متفاوت باشد.
  • پردازنده (CPU): یک پردازنده مدرن (مانند Intel Core i5/i7 نسل 10 به بالا یا AMD Ryzen 5/7 نسل 3 به بالا) برای مدیریت وظایف عمومی سیستم و پردازش‌های اولیه کافی است.
  • رم (RAM): حداقل 16 گیگابایت رم توصیه می‌شود. 32 گیگابایت یا بیشتر برای workflowهای پیچیده‌تر و استفاده همزمان از چندین برنامه، ایده‌آل است.
  • فضای ذخیره‌سازی: حداقل 100 گیگابایت فضای خالی SSD برای نصب ComfyUI، مدل‌ها، و فایل‌های تولید شده نیاز دارید. مدل‌های Stable Diffusion می‌توانند بسیار بزرگ باشند (هر کدام چند گیگابایت) و با گذشت زمان، این فضا به سرعت پر می‌شود. استفاده از SSD به جای HDD سرعت بارگذاری و ذخیره فایل‌ها را به شدت افزایش می‌دهد.

نرم‌افزارهای مورد نیاز

  • Python: ComfyUI بر پایه پایتون نوشته شده است. شما به یک نسخه پایتون 3.10 یا بالاتر نیاز دارید. توصیه می‌شود از نسخه 3.10.x استفاده کنید تا از سازگاری کامل با تمامی کتابخانه‌ها اطمینان حاصل شود. می‌توانید پایتون را از وب‌سایت رسمی python.org دانلود و نصب کنید. حتماً گزینه "Add Python to PATH" را در هنگام نصب فعال کنید.
  • Git: برای دانلود و به‌روزرسانی ComfyUI و افزونه‌های آن (custom nodes)، به Git نیاز دارید. می‌توانید آن را از git-scm.com دانلود و نصب کنید.
  • درایورهای کارت گرافیک: اطمینان حاصل کنید که جدیدترین درایورهای کارت گرافیک خود را نصب کرده‌اید. این کار برای عملکرد بهینه و جلوگیری از خطاها حیاتی است. برای NVIDIA، از GeForce Experience یا وب‌سایت NVIDIA، و برای AMD، از وب‌سایت AMD اقدام کنید.
  • CUDA (برای NVIDIA): اگر از کارت گرافیک NVIDIA استفاده می‌کنید، برای بهره‌مندی از شتاب‌دهی سخت‌افزاری، نیاز به نصب CUDA Toolkit دارید. ComfyUI معمولاً نسخه‌های خاصی از CUDA را ترجیح می‌دهد، اما نصب درایورهای جدید معمولاً کافی است و ComfyUI خودکار کتابخانه‌های مورد نیاز را دانلود می‌کند.

آشنایی اولیه با مفاهیم

  • Stable Diffusion: ComfyUI یک رابط کاربری برای مدل‌های Stable Diffusion است. درک کلی از نحوه کار Stable Diffusion (مانند Text-to-Image, Image-to-Image, inpainting, outpainting) مفید خواهد بود.
  • Generative AI: آشنایی با مفاهیم کلی هوش مصنوعی مولد و نحوه تولید محتوا توسط آن.
  • Prompts: نحوه نوشتن پرامپت‌های موثر (دستورات متنی) برای هدایت مدل.
  • مدل‌ها (Models): آشنایی با انواع مدل‌ها (مانند Checkpoint، LoRA، VAE) و نقش آن‌ها در تولید تصویر.
  • Node-based Interface: درک کلی از نحوه کار با رابط‌های کاربری مبتنی بر گره. اگر با نرم‌افزارهایی مانند Blender Geometry Nodes یا Unreal Engine Blueprints کار کرده‌اید، این بخش برای شما آشنا خواهد بود.

با آماده‌سازی این موارد، شما آماده‌اید تا به دنیای قدرتمند ComfyUI قدم بگذارید.

گام ۱: نصب و راه‌اندازی ComfyUI

نصب ComfyUI می‌تواند در ابتدا کمی پیچیده به نظر برسد، اما با دنبال کردن دقیق مراحل زیر، به راحتی می‌توانید آن را راه‌اندازی کنید. ما دو روش اصلی را پوشش می‌دهیم: نصب دستی و استفاده از ComfyUI Manager.

۱.۱. دانلود و نصب ComfyUI

روش اول: نصب دستی (توصیه شده برای کنترل بیشتر)

1. ایجاد یک پوشه: یک پوشه جدید برای ComfyUI در مکانی که فضای کافی دارید ایجاد کنید (مثلاً D:\ComfyUI).

2. دانلود ComfyUI:

* به صفحه گیت‌هاب ComfyUI بروید: github.com/comfyanonymous/ComfyUI

* روی دکمه سبز "Code" کلیک کرده و "Download ZIP" را انتخاب کنید.

* فایل ZIP دانلود شده را در پوشه‌ای که در مرحله 1 ایجاد کردید، اکسترکت کنید. نام پوشه اصلی معمولاً ComfyUI-master خواهد بود. می‌توانید آن را به ComfyUI تغییر دهید.

3. نصب وابستگی‌ها:

* یک خط فرمان (CMD) یا PowerShell را در پوشه اصلی ComfyUI (مثلاً D:\ComfyUI) باز کنید. برای این کار، در نوار آدرس File Explorer، cmd را تایپ کرده و Enter را بزنید.

* دستور زیر را برای نصب وابستگی‌های پایتون اجرا کنید:

```bash

pip install -r requirements.txt

```

* این فرآیند ممکن است چند دقیقه طول بکشد. مطمئن شوید که در حین نصب به اینترنت متصل هستید.

روش دوم: استفاده از پکیج‌های Standalone (ساده‌تر برای شروع)

ComfyUI پکیج‌های Standalone (مستقل) نیز ارائه می‌دهد که پایتون و تمامی وابستگی‌ها را به صورت از پیش بسته‌بندی شده دارند. این روش برای کسانی که نمی‌خواهند پایتون را به صورت جداگانه نصب کنند، مناسب است.

1. به صفحه گیت‌هاب ComfyUI بروید و به بخش "Releases" یا "Direct link for the portable builds" مراجعه کنید.

2. فایل ComfyUI_windows_portable_nvidia_cu121_and_cpu.7z (یا نسخه مشابه برای AMD) را دانلود کنید.

3. این فایل 7z را در یک پوشه مناسب (مثلاً D:\ComfyUI_Portable) اکسترکت کنید. این پکیج شامل یک نسخه کوچک از پایتون و تمامی وابستگی‌ها است.

۱.۲. دانلود مدل‌های Stable Diffusion

برای اینکه ComfyUI بتواند تصویری تولید کند، به مدل‌های Stable Diffusion نیاز دارد.

1. پوشه مدل‌ها: در داخل پوشه ComfyUI (چه دستی و چه پرتابل)، به مسیر ComfyUI/models/checkpoints بروید. اینجایی است که فایل‌های مدل اصلی (Checkpoint) را قرار می‌دهید.

2. دانلود مدل‌ها:

* به وب‌سایت Civitai.com یا HuggingFace.co بروید.

* یک مدل Stable Diffusion 1.5 (مانند DreamShaper_8.safetensors) یا Stable Diffusion XL (مانند sd_xl_base_1.0.safetensors و sd_xl_refiner_1.0.safetensors) را دانلود کنید. برای شروع، یک مدل SD 1.5 توصیه می‌شود زیرا سبک‌تر است.

* فایل‌های .safetensors یا .ckpt را در پوشه ComfyUI/models/checkpoints کپی کنید.

نکته: مدل‌های SDXL معمولاً به دو فایل نیاز دارند: Base و Refiner. هر دو را دانلود کنید.

3. مدل‌های VAE (اختیاری اما توصیه شده):

* VAE (Variational Autoencoder) مسئول رمزگشایی نویز به تصویر نهایی است و می‌تواند کیفیت رنگ و جزئیات را بهبود بخشد.

* به مسیر ComfyUI/models/vae بروید.

* می‌توانید VAEهای رایگان مانند vae-ft-mse-840000-ema-pruned.safetensors را از HuggingFace دانلود کرده و در این پوشه قرار دهید. برخی مدل‌های Checkpoint، VAE داخلی دارند و نیازی به VAE جداگانه نیست.

۱.۳. اجرای ComfyUI

برای نصب دستی:

  • در پوشه اصلی ComfyUI، یک فایل با نام run_nvidia_gpu.bat (برای NVIDIA) یا run_cpu.bat (برای CPU، بسیار کند) یا run_amd_gpu.bat (برای AMD) وجود دارد. روی فایل مربوطه دوبار کلیک کنید.
  • اگر این فایل‌ها وجود ندارند، می‌توانید یک فایل run.bat جدید ایجاد کرده و محتوای زیر را در آن قرار دهید:

```batch

@echo off

python main.py --cuda-malloc

pause

```

سپس روی آن دوبار کلیک کنید.

برای پکیج Standalone:

  • در پوشه اصلی ComfyUI (که از حالت فشرده خارج کردید)، فایل run_nvidia_gpu.bat (یا مشابه) را اجرا کنید.

پس از اجرا، یک پنجره خط فرمان باز می‌شود و شروع به دانلود وابستگی‌های لازم (مانند PyTorch) می‌کند. این فرآیند ممکن است زمان‌بر باشد. پس از اتمام، یک آدرس لوکال هاست (معمولاً http://127.0.0.1:8188) در مرورگر شما باز می‌شود که رابط کاربری ComfyUI است.

۱.۴. آشنایی اولیه با رابط کاربری

هنگامی که ComfyUI در مرورگر شما باز می‌شود، یک رابط کاربری خالی یا یک workflow پیش‌فرض ساده را مشاهده خواهید کرد. این رابط کاربری شامل:

  • فضای کار (Canvas): منطقه‌ای بزرگ در مرکز که در آن گره‌ها (Nodes) را قرار می‌دهید و به هم متصل می‌کنید.
  • منوی گره‌ها (Node Menu): با کلیک راست در فضای کار، منوی گره‌ها باز می‌شود که می‌توانید گره‌های مختلف را اضافه کنید.
  • پنل تنظیمات (Properties Panel): معمولاً در سمت راست، که اطلاعات و تنظیمات مربوط به گره‌های انتخاب شده را نمایش می‌دهد.
  • Queue Prompt: دکمه‌ای برای اجرای workflow.

تبریک می‌گوییم! شما ComfyUI را با موفقیت نصب و راه‌اندازی کرده‌اید. در گام‌های بعدی، به سراغ ساخت اولین workflow خود خواهیم رفت.

گام ۲: ساخت اولین Workflow

حالا که ComfyUI را نصب کرده‌اید، زمان آن است که اولین workflow خود را بسازید و یک تصویر تولید کنید. این بخش شما را با گره‌های اساسی و نحوه اتصال آن‌ها آشنا می‌کند.

۲.۱. درک گره‌های اصلی (Core Nodes)

هر workflow در ComfyUI از اتصال مجموعه‌ای از گره‌ها تشکیل شده است. هر گره یک وظیفه خاص را انجام می‌دهد. در اینجا گره‌های اصلی که برای تولید یک تصویر ساده نیاز دارید معرفی می‌شوند:

1. Load Checkpoint: این گره مدل اصلی Stable Diffusion (فایل .safetensors یا .ckpt) را بارگذاری می‌کند. این مدل شامل دانش اصلی برای تولید تصاویر است.

2. CLIP Text Encode (Prompt): این گره پرامپت متنی شما (متن مثبت و منفی) را به یک بردار عددی (embedding) تبدیل می‌کند که مدل Stable Diffusion می‌تواند آن را درک کند.

3. KSampler: این گره هسته فرآیند تولید تصویر است. با استفاده از مدل Checkpoint، پرامپت‌ها و یک seed (عدد تصادفی)، نویز را به یک تصویر معنادار تبدیل می‌کند.

4. VAE Decode: اگر مدل Checkpoint شما VAE داخلی نداشته باشد یا بخواهید از VAE خارجی استفاده کنید، این گره خروجی KSampler را به یک فرمت تصویری قابل مشاهده تبدیل می‌کند.

5. Save Image: این گره تصویر نهایی را ذخیره می‌کند یا آن را در رابط کاربری نمایش می‌دهد.

۲.۲. ایجاد Workflow گام به گام

بیایید یک workflow ساده برای تولید تصویر از متن (Text-to-Image) ایجاد کنیم:

1. پاک کردن فضای کار: اگر یک workflow پیش‌فرض وجود دارد، روی دکمه "Clear" در بالای صفحه کلیک کنید تا فضای کار پاک شود.

2. افزودن گره Load Checkpoint:

* در فضای کار خالی، راست کلیک کنید.

* به "Add Node" -> "Loaders" -> "Load Checkpoint" بروید و کلیک کنید.

* در گره "Load Checkpoint"، روی فیلد "ckpt_name" کلیک کنید. لیستی از مدل‌هایی که در پوشه ComfyUI/models/checkpoints قرار داده‌اید، ظاهر می‌شود. یکی از مدل‌ها (مثلاً DreamShaper_8.safetensors) را انتخاب کنید.

3. افزودن گره‌های CLIP Text Encode (Prompt): (دو بار)

* راست کلیک کنید -> "Add Node" -> "Conditioning" -> "CLIP Text Encode (Prompt)".

* این گره را به سمت چپ گره "Load Checkpoint" بکشید.

* یک بار دیگر همین گره را اضافه کنید و آن را زیر گره اول قرار دهید.

* اتصال:

* خروجی "CLIP" از "Load Checkpoint" را به ورودی "clip" هر دو گره "CLIP Text Encode" وصل کنید.

4. افزودن گره KSampler:

* راست کلیک کنید -> "Add Node" -> "Sampling" -> "KSampler".

* این گره را در مرکز فضای کار، بین گره‌های Prompt و محل خروجی، قرار دهید.

* اتصال:

* خروجی "MODEL" از "Load Checkpoint" را به ورودی "model" در KSampler وصل کنید.

* خروجی "LATENT" از "Load Checkpoint" (که در حال حاضر خالی است) را به ورودی "latent_image" در KSampler وصل کنید. (بعداً این را با یک گره خالی مقداردهی اولیه می‌کنیم).

* خروجی "CONDITIONING" از گره "CLIP Text Encode" بالایی (پرامپت مثبت) را به ورودی "positive" در KSampler وصل کنید.

* خروجی "CONDITIONING" از گره "CLIP Text Encode" پایینی (پرامپت منفی) را به ورودی "negative" در KSampler وصل کنید.

* خروجی "VAE" از "Load Checkpoint" را به ورودی "vae" در KSampler وصل کنید.

5. افزودن گره Empty Latent Image:

* راست کلیک کنید -> "Add Node" -> "Latent" -> "Empty Latent Image".

* این گره را در کنار KSampler قرار دهید.

* اتصال:

* خروجی "LATENT" از "Empty Latent Image" را به ورودی "latent_image" در KSampler وصل کنید.

* در گره "Empty Latent Image"، عرض (width) و ارتفاع (height) تصویر را تنظیم کنید (مثلاً 512x512 برای SD 1.5 یا 1024x1024 برای SDXL).

6. افزودن گره VAE Decode:

* راست کلیک کنید -> "Add Node" -> "VAE" -> "VAE Decode".

* این گره را بعد از KSampler قرار دهید.

* اتصال:

* خروجی "LATENT" از KSampler را به ورودی "latent" در VAE Decode وصل کنید.

* خروجی "VAE" از "Load Checkpoint" را به ورودی "vae" در VAE Decode وصل کنید.

7. افزودن گره Save Image:

* راست کلیک کنید -> "Add Node" -> "Image" -> "Save Image".

* این گره را بعد از VAE Decode قرار دهید.

* اتصال:

* خروجی "IMAGE" از VAE Decode را به ورودی "images" در Save Image وصل کنید.

۲.۳. تنظیم پرامپت و پارامترها

حالا زمان آن است که به گره‌های خود دستورات را بدهید:

  • CLIP Text Encode (بالایی - پرامپت مثبت):

* در فیلد "text" این گره، پرامپت مورد نظر خود را بنویسید.

* مثال: a beautiful Persian garden, intricate details, vibrant colors, traditional architecture, sunlight, high quality, masterpiece

  • CLIP Text Encode (پایینی - پرامپت منفی):

* در فیلد "text" این گره، چیزهایی که نمی‌خواهید در تصویر باشند را بنویسید.

* مثال: low quality, bad anatomy, ugly, deformed, blurry, noisy, distorted, text, watermark, signature

  • KSampler:

* Seed: روی "random" یا یک عدد مشخص تنظیم کنید. تغییر این عدد، تصویر متفاوتی تولید می‌کند.

* Steps: تعداد مراحل نمونه‌برداری. 20-30 برای شروع خوب است.

* CFG Scale: قدرت دنبال کردن پرامپت توسط مدل. 7-10 معمولاً خوب است.

* Sampler Name: الگوریتم نمونه‌برداری (مثلاً dpmpp_2m_sde).

* Scheduler: زمان‌بندی (مثلاً karras).

۲.۴. اجرای Workflow

1. پس از تنظیم تمامی گره‌ها و پرامپت‌ها، روی دکمه "Queue Prompt" در بالای صفحه کلیک کنید.

2. گره‌ها به ترتیب اجرا می‌شوند و پس از اتمام، تصویر تولید شده در گره "Save Image" نمایش داده می‌شود.

3. تصویر تولید شده به صورت خودکار در پوشه ComfyUI/output ذخیره می‌شود.

تبریک می‌گوییم! شما اولین تصویر خود را با استفاده از ComfyUI تولید کرده‌اید. این تنها شروع کار است. در گام بعدی به بررسی مفاهیم پیشرفته‌تر خواهیم پرداخت.

گام ۳: مفاهیم پیشرفته و سفارشی‌سازی

پس از ساخت اولین workflow، زمان آن است که به عمق ComfyUI برویم و با مفاهیم پیشرفته‌تر آشنا شویم که کنترل بیشتری بر روی تولید تصاویر به شما می‌دهند.

۳.۱. Custom Nodes (افزونه‌ها)

Custom Nodes یا گره‌های سفارشی، افزونه‌هایی هستند که قابلیت‌های ComfyUI را به شدت گسترش می‌دهند. این گره‌ها توسط جامعه کاربری توسعه داده می‌شوند و می‌توانند کارهای مختلفی انجام دهند، از افزودن مدل‌های جدید (مانند ControlNet، LoRA) تا ابزارهای پردازش تصویر و utilityهای مختلف.

نصب ComfyUI Manager:

بهترین راه برای مدیریت Custom Nodes، استفاده از ComfyUI Manager است.

1. دانلود Manager:

* خط فرمان (CMD) را در پوشه اصلی ComfyUI خود باز کنید.

* دستور زیر را اجرا کنید:

```bash

git clone https://github.com/ltdrdata/ComfyUI-Manager.git custom_nodes/ComfyUI-Manager

```

2. راه‌اندازی مجدد ComfyUI: ComfyUI را ببندید و دوباره اجرا کنید.

3. استفاده از Manager:

* حالا یک دکمه "Manager" در سمت راست رابط کاربری ComfyUI ظاهر شده است.

* روی آن کلیک کنید. می‌توانید "Install Custom Nodes" را انتخاب کنید و لیست عظیمی از افزونه‌ها را مشاهده خواهید کرد.

* افزونه‌های محبوب مانند "ComfyUI-Impact-Pack" یا "ComfyUI-Advanced-ControlNet" را برای شروع نصب کنید.

* پس از نصب هر افزونه، ComfyUI را راه‌اندازی مجدد کنید.

چند Custom Node پرکاربرد:

  • ControlNet: برای کنترل دقیق‌تر ژست، ترکیب و سبک تصویر با استفاده از تصاویر مرجع.
  • LoRA Loaders: برای بارگذاری مدل‌های LoRA که سبک یا کاراکتر خاصی را به مدل اصلی اضافه می‌کنند.
  • Upscalers: برای افزایش رزولوشن تصویر نهایی با حفظ جزئیات.
  • Image Processing Nodes: برای ویرایش و دستکاری تصاویر در داخل workflow (مانند برش، تغییر اندازه، اعمال فیلتر).

۳.۲. استفاده از LoRA و Embeddings

  • LoRA (Low-Rank Adaptation): مدل‌های کوچک و سبکی هستند که می‌توانند به مدل اصلی (Checkpoint) اضافه شوند تا سبک، شخصیت، یا مفهوم خاصی را به تصویر اضافه کنند بدون اینکه نیاز به آموزش مجدد کل مدل باشد.

* نصب: فایل‌های .safetensors LoRA را در پوشه ComfyUI/models/loras کپی کنید.

* استفاده: گره "LoRA Loader" را اضافه کنید (اگر از Manager استفاده می‌کنید، ممکن است به صورت پیش‌فرض موجود باشد یا نیاز به نصب Custom Node داشته باشید). آن را بین "Load Checkpoint" و "KSampler" قرار دهید و خروجی‌های "MODEL" و "CLIP" را از LoRA Loader به KSampler وصل کنید.

* میزان "strength_model" و "strength_clip" را برای کنترل تاثیر LoRA تنظیم کنید.

  • Textual Inversion (Embeddings): فایل‌های کوچکی هستند که یک مفهوم یا سبک خاص را به مدل آموزش می‌دهند.

* نصب: فایل‌های .pt یا .safetensors Embeddings را در پوشه ComfyUI/models/embeddings کپی کنید.

* استفاده: نام Embedding را مستقیماً در پرامپت خود وارد کنید (مثلاً a photo of a <my_style_embedding> house).

۳.۳. ControlNet

ControlNet یکی از قدرتمندترین افزودنی‌ها برای Stable Diffusion است که به شما امکان می‌دهد با استفاده از یک تصویر ورودی (مانند نقشه عمق، کانتور، ژست اسکلتی)، تولید تصویر را به صورت دقیق کنترل کنید.

1. نصب مدل‌های ControlNet:

* مدل‌های ControlNet را از HuggingFace یا Civitai دانلود کنید (مثلاً control_v11f1p_sd15_depth.safetensors).

* آن‌ها را در پوشه ComfyUI/models/controlnet قرار دهید.

2. Workflow ControlNet:

* شما به گره‌های "Load ControlNet Model"، "Preprocessor" (مانند "Openpose Preprocessor" یا "Depth Map Preprocessor") و "Apply ControlNet" نیاز دارید.

* تصویر ورودی را به Preprocessor می‌دهید، که یک نقشه (مانند نقشه عمق یا ژست) تولید می‌کند.

* این نقشه به "Apply ControlNet" وصل می‌شود، که از مدل ControlNet بارگذاری شده استفاده می‌کند تا فرآیند نمونه‌برداری در KSampler را هدایت کند.

* خروجی "CONDITIONING" از "Apply ControlNet" به ورودی "positive" یا "negative" در KSampler متصل می‌شود.

۳.۴. بهینه‌سازی و بهبود کیفیت

  • Upscaling:

* برای افزایش رزولوشن تصویر نهایی، می‌توانید از گره‌های "Image Upscale (using Model)" یا "Latent Upscale" استفاده کنید.

* مدل‌های Upscaler (مانند ESRGAN) را در پوشه ComfyUI/models/upscalers قرار دهید.

* Workflow معمولاً شامل تولید یک تصویر کوچک، سپس upscaling آن با یک مدل مناسب است.

  • Refiner (برای SDXL):

* برای مدل‌های SDXL، معمولاً یک مدل "Refiner" وجود دارد که جزئیات تصویر را در مراحل پایانی بهبود می‌بخشد.

* workflow SDXL شامل دو مرحله KSampler است: یکی با مدل Base و دیگری با مدل Refiner.

  • VAE (Variational Autoencoder):

* تنظیم VAE مناسب می‌تواند تأثیر زیادی بر کیفیت رنگ و جزئیات تصویر داشته باشد.

* می‌توانید VAE را به صورت جداگانه با گره "Load VAE" بارگذاری کنید و آن را به KSampler و VAE Decode وصل کنید.

۳.۵. ذخیره و بارگذاری Workflowها

یکی از ویژگی‌های عالی ComfyUI قابلیت ذخیره و بارگذاری workflowها است.

  • ذخیره Workflow: روی دکمه "Save" در بالای صفحه کلیک کنید. فایل .json workflow شما ذخیره می‌شود.
  • بارگذاری Workflow:

* می‌توانید روی دکمه "Load" کلیک کرده و فایل .json را انتخاب کنید.

* روش جالب‌تر: یک تصویر تولید شده با ComfyUI را به فضای کار بکشید و رها کنید (Drag and Drop). اگر آن تصویر با متادیتای ComfyUI ذخیره شده باشد، workflow دقیقاً همان تصویر را بارگذاری می‌کند! این یک راه عالی برای یادگیری از workflowهای دیگران است.

با تسلط بر این مفاهیم پیشرفته، شما می‌توانید workflowهای بسیار پیچیده‌تر و سفارشی‌سازی شده‌تری را در ComfyUI ایجاد کنید و به نتایج بی‌نظیری دست پیدا کنید. تمرین و آزمایش با گره‌های مختلف کلید موفقیت است.

تست Axeto

در Axeto، ما به دنبال ارائه بهترین ابزارها و خدمات هوش مصنوعی به تولیدکنندگان محتوای ایرانی هستیم. ComfyUI با انعطاف‌پذیری بی‌نظیر خود، پتانسیل زیادی برای تولید محتوای بصری با کیفیت بالا و سفارشی‌سازی شده دارد. برای ارزیابی قابلیت‌های ComfyUI در زمینه تولید محتوای فارسی و ایرانی، ما یک سری تست با پرامپت‌های فارسی و مدل‌های مختلف انجام دادیم.

هدف از این تست‌ها:

1. بررسی عملکرد مدل‌ها در درک پرامپت‌های فارسی.

2. ارزیابی کیفیت تصاویر تولید شده با مضامین ایرانی.

3. مقایسه نتایج با استفاده از مدل‌های مختلف و تنظیمات ComfyUI.

تنظیمات تست

  • مدل‌های اصلی (Checkpoints):

* DreamShaper v8 (SD 1.5)

* Juggernaut XL v8 (SDXL)

  • LoRA (اختیاری): Persian Style LoRA (اگر موجود باشد)
  • VAE: vae-ft-mse-840000-ema-pruned.safetensors
  • Sampler: dpmpp_2m_sde
  • Scheduler: karras
  • Steps: 25
  • CFG Scale: 7
  • Resolution: 512x512 (برای SD 1.5), 1024x1024 (برای SDXL)

جدول تست پرامپت‌های فارسی

پرامپت فارسیپرامپت انگلیسی (ترجمه)مدل استفاده شدهنتیجه (توضیح کیفیت و ارتباط با پرامپت)
یک باغ ایرانی زیبا با کاشی‌کاری سنتی و حوض آبA beautiful Persian garden with traditional tiling and a water fountainDreamShaper v8تصویر با کیفیت خوب، عناصر اصلی پرامپت (باغ، حوض، کاشی‌کاری) به خوبی نمایش داده شده‌اند. جزئیات معماری سنتی قابل تشخیص است.
بازار سنتی اصفهان در شب، نورپردازی گرم، جمعیتIsfahan traditional bazaar at night, warm lighting, crowdedJuggernaut XL v8کیفیت عالی، نورپردازی شب و فضای سنتی بازار به خوبی به تصویر کشیده شده است. جزئیات جمعیت و معماری دقیق است.
یک بانوی ایرانی با لباس‌های سنتی در حال نواختن تارAn Iranian lady in traditional clothes playing a tarDreamShaper v8خوب، لباس‌ها و ساز تار قابل تشخیص هستند. ممکن است جزئیات چهره و دست نیاز به بهبود داشته باشد.
نقاشی مینیاتور ایرانی از شاهنامه، رنگ‌های غنیIranian miniature painting from Shahnameh, rich colorsJuggernaut XL v8بسیار خوب، سبک مینیاتور و رنگ‌های غنی به خوبی بازسازی شده‌اند. جزئیات ظریف نقاشی قابل مشاهده است.
یک فنجان چای داغ در کنار پنجره‌ای با منظره کوهستان برفیA hot cup of tea by a window with a view of snowy mountainsDreamShaper v8عالی، حس آرامش و جزئیات چای و منظره کوهستان به خوبی منتقل شده است.
غروب آفتاب در کویر لوت، آسمان نارنجی و بنفش، تپه‌های شنیSunset in Lut Desert, orange and purple sky, sand dunesJuggernaut XL v8کیفیت بالا، رنگ‌های آسمان و بافت تپه‌های شنی بسیار واقعی و زیبا هستند.
آش رشته، غذای سنتی ایرانی، در کاسه‌ای سفالیAsh Reshteh, a traditional Iranian dish, in an earthenware bowlDreamShaper v8قابل قبول، غذای آش رشته و کاسه سفالی قابل تشخیص است، اما ممکن است بافت و جزئیات غذا کمی مصنوعی به نظر برسد.
معماری مدرن ایرانی با الهام از طرح‌های سنتیModern Iranian architecture inspired by traditional designsJuggernaut XL v8خوب، ترکیبی از عناصر مدرن و سنتی در معماری دیده می‌شود. نیاز به پرامپت‌های دقیق‌تر برای جزئیات بیشتر.

تحلیل نتایج Axeto

  • درک پرامپت فارسی: مدل‌های Stable Diffusion (به خصوص SDXL) به طور کلی در درک مفاهیم و کلمات کلیدی فارسی (حتی بدون ترجمه مستقیم) عملکرد قابل قبولی دارند. با این حال، استفاده از ترجمه انگلیسی دقیق‌تر می‌تواند به مدل کمک کند تا جزئیات را بهتر درک کند.
  • کیفیت تصویر: کیفیت تصاویر تولید شده با ComfyUI و مدل‌های مناسب، بسیار بالا است. SDXL در تولید جزئیات ظریف‌تر و کیفیت کلی بهتر، برتری نشان می‌دهد.
  • مضامین ایرانی: ComfyUI با استفاده از مدل‌های عمومی می‌تواند مضامین ایرانی را به خوبی به تصویر بکشد. برای دستیابی به سبک‌ها یا المان‌های بسیار خاص ایرانی، استفاده از LoRAهای آموزش دیده بر روی داده‌های ایرانی می‌تواند نتایج را به شدت بهبود بخشد.
  • سفارشی‌سازی: قدرت ComfyUI در سفارشی‌سازی workflowها به ما امکان می‌دهد تا با ترکیب گره‌های مختلف (مانند ControlNet برای ژست‌های خاص یا Upscaler برای جزئیات بیشتر)، به نتایج بسیار دقیق‌تری برای محتوای ایرانی برسیم.
  • پتانسیل برای تولیدکنندگان ایرانی: ComfyUI ابزاری فوق‌العاده برای تولیدکنندگان محتوای ایرانی است که می‌خواهند تصاویری با هویت بصری ایرانی خلق کنند. با کمی تمرین و استفاده از مدل‌های مناسب و پرامپت‌های دقیق، می‌توانند به نتایج خیره‌کننده‌ای دست یابند.

توصیه Axeto: برای بهترین نتایج با پرامپت‌های فارسی، توصیه می‌کنیم که پرامپت‌های فارسی خود را به انگلیسی ترجمه کنید و در کنار پرامپت اصلی قرار دهید (یا فقط از انگلیسی استفاده کنید). همچنین، آزمایش با LoRAهای مختلف که بر روی سبک‌ها یا عناصر ایرانی آموزش دیده‌اند، می‌تواند به شما کمک کند تا به نتایج بسیار نزدیک‌تری به آنچه در ذهن دارید، برسید. پلتفرم Axeto با ارائه منابع و ابزارهای مرتبط، شما را در این مسیر یاری خواهد کرد.

کد نمونه

در ComfyUI، "کد نمونه" به معنای فایل‌های Workflow JSON است که می‌توانید آن‌ها را بارگذاری کرده و بلافاصله از آن‌ها استفاده کنید. در اینجا یک نمونه workflow JSON برای تولید تصویر با KSampler و Load Checkpoint آورده شده است. این همان workflow پایه است که در گام ۲ ساختیم.

برای استفاده از این کد:

1. کل محتوای JSON را کپی کنید.

2. به رابط کاربری ComfyUI بروید.

3. روی دکمه "Load" کلیک کنید.

4. سپس "Load Workflow (JSON)" را انتخاب کنید.

5. محتوای کپی شده را در پنجره‌ای که باز می‌شود، پیست کنید و "Open" را بزنید.

6. ComfyUI به صورت خودکار workflow را بارگذاری می‌کند.

{
  "last_node_id": 10,
  "last_link_id": 11,
  "nodes": [
    {
      "id": 3,
      "type": "KSampler",
      "pos": [
        600,
        210
      ],
      "size": {
        "0": 315,
        "1": 270
      },
      "flags": {},
      "order": 4,
      "mode": 0,
      "inputs": [
        {
          "name": "model",
          "type": "MODEL",
          "link": 6
        },
        {
          "name": "positive",
          "type": "CONDITIONING",
          "link": 7
        },
        {
          "name": "negative",
          "type": "CONDITIONING",
          "link": 8
        },
        {
          "name": "latent_image",
          "type": "LATENT",
          "link": 10
        },
        {
          "name": "vae",
          "type": "VAE",
          "link": 9
        }
      ],
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            11
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "KSampler"
      },
      "widgets_values": [
        "randomize",
        25,
        7,
        "dpmpp_2m_sde",
        "karras",
        1
      ]
    },
    {
      "id": 4,
      "type": "CLIPTextEncode",
      "pos": [
        280,
        130
      ],
      "size": {
        "0": 300,
        "1": 164
      },
      "flags": {},
      "order": 2,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 2
        }
      ],
      "outputs": [
        {
          "name": "CONDITIONING",
          "type": "CONDITIONING",
          "links": [
            7
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "CLIPTextEncode"
      },
      "widgets_values": [
        "a beautiful Persian garden, intricate details, vibrant colors, traditional architecture, sunlight, high quality, masterpiece"
      ]
    },
    {
      "id": 5,
      "type": "CLIPTextEncode",
      "pos": [
        280,
        340
      ],
      "size": {
        "0": 300,
        "1": 164
      },
      "flags": {},
      "order": 3,
      "mode": 0,
      "inputs": [
        {
          "name": "clip",
          "type": "CLIP",
          "link": 3
        }
      ],
      "outputs": [
        {
          "name": "CONDITIONING",
          "type": "CONDITIONING",
          "links": [
            8
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "CLIPTextEncode"
      },
      "widgets_values": [
        "low quality, bad anatomy, ugly, deformed, blurry, noisy, distorted, text, watermark, signature"
      ]
    },
    {
      "id": 6,
      "type": "VAEEncode",
      "pos": [
        930,
        410
      ],
      "size": {
        "0": 210,
        "1": 100
      },
      "flags": {},
      "order": 6,
      "mode": 0,
      "inputs": [
        {
          "name": "pixels",
          "type": "IMAGE"
        },
        {
          "name": "vae",
          "type": "VAE"
        }
      ],
      "outputs": [],
      "properties": {
        "Node name for S&R": "VAEEncode"
      }
    },
    {
      "id": 7,
      "type": "VAEDecode",
      "pos": [
        930,
        270
      ],
      "size": {
        "0": 210,
        "1": 100
      },
      "flags": {},
      "order": 5,
      "mode": 0,
      "inputs": [
        {
          "name": "latent",
          "type": "LATENT",
          "link": 11
        },
        {
          "name": "vae",
          "type": "VAE",
          "link": 5
        }
      ],
      "outputs": [
        {
          "name": "IMAGE",
          "type": "IMAGE",
          "links": [
            4
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "VAEDecode"
      }
    },
    {
      "id": 8,
      "type": "SaveImage",
      "pos": [
        1180,
        270
      ],
      "size": {
        "0": 210,
        "1": 100
      },
      "flags": {},
      "order": 7,
      "mode": 0,
      "inputs": [
        {
          "name": "images",
          "type": "IMAGE",
          "link": 4
        }
      ],
      "outputs": [],
      "properties": {
        "Node name for S&R": "SaveImage"
      },
      "widgets_values": [
        "ComfyUI"
      ]
    },
    {
      "id": 9,
      "type": "EmptyLatentImage",
      "pos": [
        380,
        550
      ],
      "size": {
        "0": 315,
        "1": 100
      },
      "flags": {},
      "order": 1,
      "mode": 0,
      "outputs": [
        {
          "name": "LATENT",
          "type": "LATENT",
          "links": [
            10
          ],
          "slot_index": 0
        }
      ],
      "properties": {
        "Node name for S&R": "EmptyLatentImage"
      },
      "widgets_values": [
        512,
        512,
        1
      ]
    },
    {
      "id": 10,
      "type": "LoadCheckpoint",
      "pos": [
        0,
        270
      ],
      "size": {
        "0": 250,
        "1": 170
      },
      "flags": {},
      "order": 0,
      "mode": 0,
      "outputs": [
        {
          "name": "MODEL",
          "type": "MODEL",
          "links": [
            6
          ],
          "slot_index": 0
        },
        {
          "name": "CLIP",
          "type": "CLIP",
          "links": [
            2,
            3
          ],
          "slot_index": 1
        },
        {
          "name": "VAE",
          "type": "VAE",
          "links": [
            5,
            9
          ],
          "slot_index": 2
        }
      ],
      "properties": {
        "Node name for S&R": "LoadCheckpoint"
      },
      "widgets_values": [
        "dreamshaper_8.safetensors"
      ]
    }
  ],
  "links": [
    [
      2,
      10,
      1,
      4,
      0,
      "CLIP"
    ],
    [
      3,
      10,
      1,
      5,
      0,
      "CLIP"
    ],
    [
      4,
      7,
      0,
      8,
      0,
      "IMAGE"
    ],
    [
      5,
      10,
      2,
      7,
      1,
      "VAE"
    ],
    [
      6,
      10,
      0,
      3,
      0,
      "MODEL"
    ],
    [
      7,
      4,
      0,
      3,
      1,
      "CONDITIONING"
    ],
    [
      8,
      5,
      0,
      3,
      2,
      "CONDITIONING"
    ],
    [
      9,
      10,
      2,
      3,
      4,
      "VAE"
    ],
    [
      10,
      9,
      0,
      3,
      3,
      "LATENT"
    ],
    [
      11,
      3,
      0,
      7,
      0,
      "LATENT"
    ]
  ],
  "groups": [],
  "config": {},
  "extra": {},
  "version": 0.4
}

توضیحات گره‌ها در این workflow:

  • Load Checkpoint (ID: 10): مدل dreamshaper_8.safetensors را بارگذاری می‌کند.
  • CLIPTextEncode (ID: 4): پرامپت مثبت را به embedding تبدیل می‌کند.
  • CLIPTextEncode (ID: 5): پرامپت منفی را به embedding تبدیل می‌کند.
  • EmptyLatentImage (ID: 9): یک تصویر latent خالی با ابعاد 512x512 ایجاد می‌کند.
  • KSampler (ID: 3): فرآیند نمونه‌برداری را با پرامپت‌ها، مدل و تصویر latent انجام می‌دهد.
  • VAEDecode (ID: 7): خروجی latent از KSampler را به یک تصویر قابل مشاهده تبدیل می‌کند.
  • SaveImage (ID: 8): تصویر نهایی را ذخیره و نمایش می‌دهد.

این یک workflow پایه است که می‌توانید آن را به عنوان نقطه شروع خود برای آزمایش با پرامپت‌های فارسی، مدل‌های مختلف و Custom Nodes استفاده کنید.

خطاهای رایج

در حین کار با ComfyUI، ممکن است با خطاهای مختلفی مواجه شوید. درک علل این خطاها و نحوه رفع آن‌ها می‌تواند زمان زیادی را برای شما ذخیره کند. در اینجا به برخی از رایج‌ترین خطاها و راه‌حل‌های آن‌ها می‌پردازیم:

۱. خطاهای مربوط به VRAM (حافظه کارت گرافیک)

  • پیام خطا: CUDA out of memory, RuntimeError: CUDA error: out of memory, failed to allocate memory for ...
  • علت: شما در حال تلاش برای تولید تصویری با ابعاد بسیار بزرگ، batch size بالا، یا استفاده از مدل‌های بسیار سنگین هستید که VRAM کارت گرافیک شما برای آن کافی نیست.
  • راه‌حل:

* کاهش ابعاد تصویر: کوچک کردن width و height در گره Empty Latent Image.

* کاهش Batch Size: اگر از گره‌هایی با ورودی batch_size استفاده می‌کنید، آن را کاهش دهید.

* استفاده از مدل‌های سبک‌تر: برخی مدل‌ها (مانند SD 1.5) VRAM کمتری نسبت به SDXL نیاز دارند.

* استفاده از --lowvram یا --medvram: ComfyUI را با این آرگومان‌ها اجرا کنید. (مثلاً python main.py --lowvram) این کار باعث می‌شود ComfyUI بهینه‌تر از VRAM استفاده کند اما ممکن است سرعت تولید را کاهش دهد.

* بستن برنامه‌های دیگر: برنامه‌هایی که از GPU استفاده می‌کنند (مانند بازی‌ها، نرم‌افزارهای گرافیکی) را ببندید.

۲. خطاهای مربوط به عدم یافتن مدل (Model Not Found)

  • پیام خطا: FileNotFoundError: [Errno 2] No such file or directory: 'models\\checkpoints\\your_model_name.safetensors', could not find model: your_model_name.safetensors
  • علت: نام مدل در گره Load Checkpoint یا سایر گره‌های بارگذاری مدل، با نام فایل مدل در پوشه مربوطه مطابقت ندارد، یا فایل مدل در جای درستی قرار نگرفته است.
  • راه‌حل:

* بررسی نام فایل: مطمئن شوید که نام مدل در گره دقیقاً با نام فایل (شامل پسوند .safetensors یا .ckpt) مطابقت دارد.

* بررسی مسیر فایل: اطمینان حاصل کنید که مدل در پوشه صحیح خود (مثلاً ComfyUI/models/checkpoints برای Checkpoint، ComfyUI/models/loras برای LoRA و غیره) قرار دارد.

* تازه‌سازی لیست مدل‌ها: گاهی اوقات نیاز است ComfyUI را راه‌اندازی مجدد کنید تا تغییرات در پوشه مدل‌ها اعمال شود.

۳. خطاهای ناشی از Custom Nodes (افزونه‌ها)

  • پیام خطا: ModuleNotFoundError: No module named 'some_custom_node_dependency', AttributeError: 'SomeNode' object has no attribute 'some_function'
  • علت: Custom Node به درستی نصب نشده است، وابستگی‌های آن نصب نشده‌اند، یا با نسخه ComfyUI شما ناسازگار است.
  • راه‌حل:

* نصب وابستگی‌ها: بسیاری از Custom Nodes نیاز به نصب پکیج‌های پایتون اضافی دارند. به صفحه گیت‌هاب Custom Node مراجعه کنید و دستورات نصب وابستگی‌ها را دنبال کنید (معمولاً pip install -r requirements.txt در پوشه Custom Node).

* به‌روزرسانی Custom Node: از ComfyUI Manager برای به‌روزرسانی Custom Node استفاده کنید.

* حذف و نصب مجدد: اگر مشکل حل نشد، Custom Node را حذف کرده و مجدداً نصب کنید.

* بررسی سازگاری: مطمئن شوید که Custom Node با نسخه ComfyUI و پایتون شما سازگار است.

۴. خطاهای اتصال گره (Node Connection Errors)

  • پیام خطا: Input '...' for node '...' is not connected., Type mismatch for link ...
  • علت: یکی از ورودی‌های ضروری یک گره به گره دیگری متصل نشده است، یا شما در حال تلاش برای اتصال خروجی با نوع داده‌ای (Type) به ورودی با نوع داده‌ای متفاوت هستید (مثلاً اتصال IMAGE به LATENT).
  • راه‌حل:

* بررسی تمام اتصالات: به دقت بررسی کنید که تمام ورودی‌های ضروری (که معمولاً با رنگ‌های مختلف مشخص شده‌اند) به خروجی‌های صحیح متصل شده باشند.

* مطابقت نوع داده: اطمینان حاصل کنید که نوع داده خروجی و ورودی یکسان است (مثلاً MODEL به MODEL، CONDITIONING به CONDITIONING). ComfyUI معمولاً اجازه اتصال انواع ناسازگار را نمی‌دهد، اما گاهی اوقات در workflowهای پیچیده این اتفاق می‌افتد.

۵. خطاهای مربوط به پایتون و محیط (Python/Environment Errors)

  • پیام خطا: python.exe is not recognized as an internal or external command, No module named 'torch'
  • علت: پایتون به درستی در PATH سیستم شما اضافه نشده است، یا وابستگی‌های اصلی ComfyUI (مانند PyTorch) نصب نشده‌اند.
  • راه‌حل:

* بررسی نصب پایتون: اطمینان حاصل کنید که پایتون به درستی نصب شده و گزینه "Add Python to PATH" در حین نصب فعال شده است. می‌توانید با تایپ python --version در CMD بررسی کنید.

* نصب وابستگی‌های اصلی: در پوشه اصلی ComfyUI، pip install -r requirements.txt را اجرا کنید.

* استفاده از پکیج Portable: اگر با نصب دستی مشکل دارید، از نسخه Portable ComfyUI استفاده کنید که پایتون را از پیش بسته‌بندی کرده است.

۶. ComfyUI اجرا نمی‌شود یا مرورگر باز نمی‌شود

  • پیام خطا: پنجره CMD بسته می‌شود یا هیچ اتفاقی نمی‌افتد، یا مرورگر باز نمی‌شود.
  • علت: ممکن است پورت 8188 (پورت پیش‌فرض ComfyUI) توسط برنامه دیگری اشغال شده باشد، یا خطایی در اسکریپت run.bat وجود دارد.
  • راه‌حل:

* اجرای دستی: در CMD به پوشه ComfyUI بروید و python main.py را اجرا کنید تا خطاهای احتمالی را مشاهده کنید.

* تغییر پورت: ComfyUI را با آرگومان --port اجرا کنید (مثلاً python main.py --port 8189).

* بررسی فایروال: اطمینان حاصل کنید که فایروال سیستم شما اجازه اتصال به پورت ComfyUI را می‌دهد.

با کمی صبر و جستجو، اکثر خطاهای ComfyUI قابل حل هستند. جامعه کاربری ComfyUI نیز بسیار فعال است و می‌توانید با جستجو در گیت‌هاب یا فروم‌ها، راه‌حل‌های بسیاری را پیدا کنید.

جمع‌بندی

در این راهنمای جامع، ما شما را از صفر با دنیای قدرتمند ComfyUI آشنا کردیم. از نصب اولیه و راه‌اندازی گرفته تا ساخت اولین workflow و درک مفاهیم پیشرفته مانند Custom Nodes و ControlNet، هر آنچه را که برای شروع سفر خود به عنوان یک تولیدکننده محتوای هوش مصنوعی نیاز دارید، پوشش دادیم.

ComfyUI با رویکرد مبتنی بر گره خود، یک سطح بی‌سابقه از کنترل و انعطاف‌پذیری را برای تولید تصاویر با هوش مصنوعی فراهم می‌کند. این ابزار به شما امکان می‌دهد تا هر مرحله از فرآیند تولید را به صورت بصری مدیریت کنید، مدل‌های مختلف را با هم ترکیب کنید، و به نتایج دقیقاً مطابق با تصورات خود دست یابید. این قدرت سفارشی‌سازی، ComfyUI را به ابزاری ایده‌آل برای هنرمندان، طراحان و تولیدکنندگان محتوای ایرانی تبدیل می‌کند که به دنبال خلق آثاری منحصر به فرد با هویت بصری خاص خود هستند.

ما در Axeto معتقدیم که دسترسی به ابزارهای پیشرفته هوش مصنوعی برای همه باید امکان‌پذیر باشد. ComfyUI، در کنار منابع و راهنماهای Axeto، به شما این امکان را می‌دهد که مرزهای خلاقیت خود را گسترش دهید. با استفاده از پرامپت‌های فارسی و مدل‌های آموزش‌دیده، می‌توانید تصاویری خیره‌کننده با مضامین ایرانی خلق کنید که پیش از این تنها در ذهن شما بوده‌اند.

فراموش نکنید که یادگیری ComfyUI یک فرآیند مستمر است. جامعه کاربری فعال، Custom Nodesهای جدید و به‌روزرسانی‌های مداوم، همواره چیزهای جدیدی برای کشف ارائه می‌دهند. به آزمایش ادامه دهید، از workflowهای دیگران الهام بگیرید، و خلاقیت خود را به اوج برسانید.

اگر به دنبال تولید تصاویر یا ویدئوهای منحصر به فرد برای پروژه‌های خود هستید، به شما پیشنهاد می‌کنیم که از ابزار تولید تصویر Axeto دیدن کنید. ما در Axeto متعهد به پشتیبانی از جامعه خلاق ایران هستیم و امیدواریم که این راهنما به شما در مسیر تبدیل شدن به یک متخصص ComfyUI کمک کرده باشد.

منبع

منابع مورد استفاده و توصیه شده برای اطلاعات بیشتر:

  • ComfyUI GitHub Repository: github.com/comfyanonymous/ComfyUI - منبع اصلی ComfyUI، شامل آخرین نسخه‌ها، مستندات و اطلاعات فنی.
  • ComfyUI Manager GitHub: github.com/ltdrdata/ComfyUI-Manager - ابزاری ضروری برای مدیریت Custom Nodes.
  • Civitai: civitai.com - منبع اصلی برای دانلود مدل‌های Stable Diffusion، LoRA، Embeddings و Workflowهای ComfyUI.
  • Hugging Face: huggingface.co - پلتفرمی برای به اشتراک‌گذاری مدل‌ها و datasets هوش مصنوعی، شامل بسیاری از مدل‌های Stable Diffusion و ControlNet.
  • ComfyUI Examples: comfy.icu - وب‌سایتی برای مشاهده و دانلود workflowهای ComfyUI.
  • ComfyUI Documentation (Unofficial): comfyui.fandom.com - یک ویکی خوب برای شروع و درک گره‌های مختلف.
  • YouTube Tutorials: کانال‌های یوتیوب متعددی وجود دارند که آموزش‌های تصویری ComfyUI را ارائه می‌دهند. جستجو برای "ComfyUI tutorial" می‌تواند مفید باشد.
  • پلتفرم Axeto: axeto.ai - برای ابزارهای هوش مصنوعی و منابع آموزشی مرتبط.
  • راهنمای پرامپت نویسی Axeto: axeto.ai/prompts - برای یادگیری نحوه نوشتن پرامپت‌های موثر.
  • مقالات آموزشی هوش مصنوعی Axeto: axeto.ai/learn-ai - برای آشنایی با مفاهیم کلی هوش مصنوعی.
  • ComfyUI Subreddit: reddit.com/r/ComfyUI/ - جامعه فعال برای بحث، پرسش و پاسخ و به اشتراک‌گذاری workflowها.

با استفاده از این منابع، می‌توانید دانش خود را در زمینه ComfyUI گسترش دهید و به یک متخصص در تولید محتوای هوش مصنوعی تبدیل شوید.

نمایی از رابط کاربری گره‌محور ComfyUI با گره‌های متصل به هم

ComfyUI به شما امکان می‌دهد تا هر مرحله از فرآیند تولید تصویر را به صورت بصری و کاملاً سفارشی‌سازی شده مدیریت کنید.

سخت‌افزار مورد نیاز برای اجرای ComfyUI، شامل کارت گرافیک قدرتمند

کارت گرافیک NVIDIA با حداقل 8 گیگابایت VRAM برای عملکرد بهینه ComfyUI توصیه می‌شود.

نمادهای پایتون و گیت، نرم‌افزارهای پیش‌نیاز ComfyUI

Python و Git از نرم‌افزارهای ضروری برای نصب و راه‌اندازی ComfyUI هستند.

تست Axeto

3 پرامپت فارسی استاندارد روی ComfyUI در Axeto تست شد. نتایج بر اساس کیفیت چهره/متن/سبک و سازگاری با پرامپت فارسی ارزیابی شد.

3 پرامپت تست‌شده

پرامپتامتیازیادداشت
پرتره زن جوان ایرانی، نور طبیعی پنجره، فوکوس نرم، پس‌زمینه مینیمالAجزئیات چهره و نور طبیعی قابل قبول؛ مناسب پرامپت‌های پرتره فارسی.
منظره کویر ایران، غروب طلایی، ابرهای دراماتیک، فوتورéalisticA-ترکیب‌بندی منظره خوب؛ رنگ‌های غروب طبیعی.
لوگوی مینیمال برای استارتاپ فintech، خطوط هندسی، پس‌زمینه سفیدB+متن/لوگو خوانا؛ برای برندینگ فارسی نیاز به تکرار پرامپت با وزن بیشتر.

مزایا

  • کنترل بی‌نظیر بر هر مرحله از فرآیند تولید تصویر
  • انعطاف‌پذیری و قابلیت شخصی‌سازی بسیار بالا
  • امکان ساخت workflowهای پیچیده و ذخیره آن‌ها
  • پشتیبانی از انواع مدل‌ها و تکنیک‌های Stable Diffusion
  • جامعه فعال و منابع آموزشی فراوان

معایب

  • منحنی یادگیری اولیه نسبتاً شیب‌دار برای مبتدیان
  • نیاز به سخت‌افزار قدرتمند، به خصوص GPU با VRAM بالا
  • رابط کاربری ممکن است در ابتدا برای برخی کاربران پیچیده به نظر برسد
  • نیاز به دانش پایه در مورد مفاهیم هوش مصنوعی مولد
  • عدم وجود رابط کاربری گرافیکی (GUI) ساده‌تر مانند برخی ابزارهای دیگر

خط زمانی

  1. 2022

    انتشار اولیه Stable Diffusion

  2. 2023

    معرفی Custom Nodes پیشرفته

  3. 2024

    تکامل به ابزار حرفه‌ای

منابع

سوالات متداول

ComfyUI چیست؟

ComfyUI یک رابط کاربری قدرتمند و انعطاف‌پذیر برای مدل‌های تولید تصویر با هوش مصنوعی مانند Stable Diffusion است که به کاربران امکان می‌دهد با استفاده از یک سیستم گره‌ای (node-based) و بصری، workflowهای پیچیده برای تولید و ویرایش تصاویر ایجاد کنند.

چرا باید از ComfyUI استفاده کنیم؟

ComfyUI کنترل بسیار بالایی بر فرآیند تولید تصویر ارائه می‌دهد و به کاربران اجازه می‌دهد هر مرحله از تولید را سفارشی‌سازی کنند. این ابزار برای تحقیقات، آزمایش و تولید نتایج دقیق‌تر و خلاقانه‌تر بسیار مناسب است و معمولاً کارایی بالاتری نسبت به رابط‌های کاربری دیگر دارد.

آیا ComfyUI برای مبتدیان مناسب است؟

در ابتدا ممکن است پیچیده به نظر برسد، اما با آموزش و تمرین، حتی مبتدیان نیز می‌توانند از قابلیت‌های آن بهره‌مند شوند. این آموزش به گونه‌ای طراحی شده که شما را از صفر با ComfyUI آشنا کند.

تفاوت ComfyUI با Automatic1111 یا Fooocus چیست؟

در حالی که Automatic1111 و Fooocus رابط‌های کاربری آماده و کاربرپسندتری ارائه می‌دهند، ComfyUI انعطاف‌پذیری و کنترل بی‌نظیری بر فرآیند تولید تصویر دارد. ComfyUI به شما اجازه می‌دهد workflowهای سفارشی خود را بسازید، در حالی که دیگر رابط‌ها بیشتر بر اساس workflowهای از پیش تعریف‌شده کار می‌کنند.

برای استفاده از ComfyUI به چه سخت‌افزاری نیاز دارم؟

برای بهره‌وری کامل، یک کارت گرافیک NVIDIA با حداقل 8 گیگابایت VRAM (ترجیحاً 12 گیگابایت یا بیشتر) توصیه می‌شود. البته، می‌توانید ComfyUI را روی CPU نیز اجرا کنید، اما سرعت تولید تصاویر بسیار پایین‌تر خواهد بود.

چگونه ComfyUI را نصب کنم؟

نصب ComfyUI شامل دانلود فایل‌های برنامه، نصب پایتون و سپس اجرای اسکریپت‌های نصب است. در این آموزش به صورت گام به گام نحوه نصب را توضیح خواهیم داد.

Workflow در ComfyUI به چه معناست؟

Workflow در ComfyUI به مجموعه‌ای از گره‌ها (nodes) و اتصالات بین آن‌ها گفته می‌شود که یک فرآیند کامل برای تولید یا ویرایش تصویر را تعریف می‌کند. هر گره یک وظیفه خاص را انجام می‌دهد و داده‌ها بین گره‌ها جریان می‌یابند.

آیا می‌توانم Workflowهای دیگران را در ComfyUI استفاده کنم؟

بله، یکی از مزایای بزرگ ComfyUI امکان به اشتراک‌گذاری و استفاده از Workflowهای ایجاد شده توسط دیگران است. این Workflowها معمولاً به صورت فایل‌های JSON ذخیره می‌شوند و به راحتی قابل بارگذاری هستند.

چگونه مدل‌های جدید (مانند Checkpointها و LoRAها) را به ComfyUI اضافه کنم؟

مدل‌ها باید در پوشه‌های مشخصی در دایرکتوری ComfyUI (معمولاً در 'models') قرار گیرند. این آموزش جزئیات مربوط به محل قرارگیری هر نوع مدل را توضیح خواهد داد.

آیا ComfyUI رایگان است؟

بله، ComfyUI یک پروژه متن‌باز و کاملاً رایگان است که می‌توانید آن را دانلود کرده و بدون هیچ هزینه‌ای استفاده کنید.

چگونه می‌توانم خروجی‌های ComfyUI را بهبود بخشم؟

بهبود خروجی‌ها شامل تنظیم دقیق پارامترها، استفاده از مدل‌های با کیفیت، ترکیب LoRAها و ControlNetها، و بهینه‌سازی Workflow است. آزمایش و درک عمیق‌تر هر گره به شما کمک می‌کند.

آیا ComfyUI از ControlNet پشتیبانی می‌کند؟

بله، ComfyUI به طور کامل از ControlNet پشتیبانی می‌کند و امکان ادغام آن در Workflowهای پیچیده را فراهم می‌آورد تا کنترل دقیقی بر ترکیب و ساختار تصاویر داشته باشید.

چگونه می‌توانم تصاویر با کیفیت بالاتر (UPSCALE) در ComfyUI تولید کنم؟

می‌توانید با استفاده از گره‌های Upscale مانند 'Image Upscale (using Model)' یا 'Latent Upscale' و همچنین مدل‌های Upscaler اختصاصی، رزولوشن و کیفیت تصاویر خود را افزایش دهید.

آیا ComfyUI ابزارهای ویرایش تصویر داخلی دارد؟

ComfyUI بیشتر بر تولید تصویر تمرکز دارد، اما گره‌هایی برای عملیات پایه ویرایش مانند برش (crop)، تغییر اندازه (resize) و ماسک‌گذاری (masking) نیز دارد. برای ویرایش‌های پیچیده‌تر، معمولاً خروجی به نرم‌افزارهای تخصصی ویرایش تصویر منتقل می‌شود.

چگونه می‌توانم از قابلیت‌های Batch Processing در ComfyUI استفاده کنم؟

ComfyUI امکان پردازش دسته‌ای (Batch Processing) را از طریق گره‌های خاص و تنظیمات مربوط به 'batch size' فراهم می‌کند که به شما اجازه می‌دهد چندین تصویر را به صورت همزمان تولید کنید.

آیا ComfyUI از مدل‌های سفارشی (Custom Models) پشتیبانی می‌کند؟

بله، ComfyUI از انواع مدل‌های سفارشی از جمله Checkpointها، LoRAها، Embeddings و VAEها پشتیبانی کامل می‌کند و می‌توانید آن‌ها را به راحتی در Workflowهای خود ادغام کنید.

چگونه می‌توانم خطاهای رایج در ComfyUI را برطرف کنم؟

بررسی پیام‌های خطا در کنسول، اطمینان از نصب صحیح تمام وابستگی‌ها، بررسی اتصالات گره‌ها و مقادیر ورودی، و جستجو در انجمن‌های ComfyUI از راه‌های رایج رفع خطا هستند.

آیا ComfyUI قابلیت Animator (تولید انیمیشن) دارد؟

با استفاده از گره‌های پیشرفته و Workflowهای پیچیده، می‌توان فریم‌های متوالی برای ساخت انیمیشن تولید کرد. افزونه‌های (Custom Nodes) خاصی نیز برای تسهیل این فرآیند وجود دارد.

بهترین منابع برای یادگیری پیشرفته ComfyUI چیست؟

علاوه بر این آموزش، مستندات رسمی ComfyUI، کانال‌های یوتیوب متخصص، انجمن‌های آنلاین مانند Reddit و Discord، و مطالعه Workflowهای پیچیده دیگران منابع عالی برای یادگیری پیشرفته هستند.

چگونه می‌توانم از ComfyUI در پروژه‌های تجاری استفاده کنم؟

از آنجایی که ComfyUI و بسیاری از مدل‌های هوش مصنوعی (مانند Stable Diffusion) تحت مجوزهای متن‌باز منتشر شده‌اند، معمولاً می‌توانید از آن‌ها در پروژه‌های تجاری استفاده کنید. با این حال، همیشه توصیه می‌شود مجوزهای خاص هر مدل را بررسی کنید.

همین حالا در Axeto امتحان کنید

مقاله را خواندید — حالا با ابزار واقعی Axeto خروجی بگیرید.

تاریخچه به‌روزرسانی

  • Initial draft

نظرات (0)

  • در حال بارگذاری نظرات...