انتقل إلى المحتوى الرئيسي
العودة إلى الفئة

تثبيت Stable Diffusion: إنتاج صور مستضاف ذاتياً

تثبيت Stable Diffusion، واجهات AUTOMATIC1111 و ComfyUI، تنزيل النماذج، تدريب LoRA، استخدام ControlNet وإنتاج صور مستضاف ذاتياً مع Docker.

وقت القراءة: 16 دقيقة الذكاء الاصطناعي على خادمك
stable-diffusionإنتاج صورذكاء اصطناعيself-hostingcomfyuigpu
الكاتب
REXE Teknoloji Network & Security Team
المحرر
REXE Teknoloji Technical Editorial
أول نشر
آخر تحديث

تثبيت Stable Diffusion: إنتاج صور مستضاف ذاتياً

Stable Diffusion هو نموذج ذكاء اصطناعي مفتوح المصدر ينتج صوراً من النص. بتشغيله على خادمك الخاص، يمكنك إنتاج صور غير محدودة، وتدريب نماذج مخصصة، والعمل بخصوصية كاملة. يغطي هذا الدليل تثبيت AUTOMATIC1111 Web UI و ComfyUI، وإدارة النماذج، واستخدام LoRA و ControlNet بالتفصيل.

ما هو Stable Diffusion؟

Stable Diffusion هو نموذج انتشار كامن طورته Stability AI. الميزات الرئيسية:

  • نص إلى صورة (txt2img): إنتاج صور من أوصاف نصية
  • صورة إلى صورة (img2img): إنتاج صور جديدة باستخدام صور موجودة كمرجع
  • Inpainting: تعديل مناطق محددة من الصورة
  • ControlNet: إنتاج متحكم به باستخدام خرائط الوضعية والحواف والعمق
  • LoRA: ضبط دقيق للنموذج بموارد منخفضة
  • Upscaling: تكبير الصور منخفضة الدقة

متطلبات النظام

المكونالحد الأدنىالموصى به
GPUNVIDIA 6 جيجابايت VRAMNVIDIA 12 جيجابايت+ VRAM
RAM16 جيجابايت32 جيجابايت+
القرص30 جيجابايت100 جيجابايت+ (للنماذج)
نظام التشغيلUbuntu 22.04 LTSUbuntu 22.04/24.04 LTS
CUDA11.8+12.1+
Python3.10+3.10.x

تثبيت AUTOMATIC1111 Web UI

AUTOMATIC1111 هو أشهر واجهة ويب لـ Stable Diffusion.

التثبيت اليدوي

hljs bash
# التبعيات
sudo apt-get update
sudo apt-get install -y python3-venv python3-pip git wget

# استنساخ المستودع
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
cd stable-diffusion-webui

# تنزيل النموذج (Stable Diffusion XL)
wget -O models/Stable-diffusion/sd_xl_base_1.0.safetensors \
  "https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors"

# التشغيل
./webui.sh --listen --port 7860 --xformers --enable-insecure-extension-access

Docker مع AUTOMATIC1111

hljs yaml
version: '3.8'
services:
  stable-diffusion:
    image: ghcr.io/abetlen/stable-diffusion-webui-docker:latest
    container_name: sd-webui
    ports:
      - "7860:7860"
    volumes:
      - sd_models:/app/models
      - sd_outputs:/app/outputs
      - sd_extensions:/app/extensions
    environment:
      - COMMANDLINE_ARGS=--listen --xformers --enable-insecure-extension-access --no-half-vae
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]
    restart: unless-stopped

volumes:
  sd_models:
  sd_outputs:
  sd_extensions:

تثبيت ComfyUI

ComfyUI هو واجهة Stable Diffusion متقدمة قائمة على العقد. مثالي لإنشاء سير عمل معقدة.

hljs bash
git clone https://github.com/comfyanonymous/ComfyUI.git
cd ComfyUI

python3 -m venv venv
source venv/bin/activate

pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu121
pip install -r requirements.txt

python main.py --listen 0.0.0.0 --port 8188

تنزيل وإدارة النماذج

hljs bash
# Stable Diffusion XL Base
wget -O models/Stable-diffusion/sd_xl_base_1.0.safetensors \
  "https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors"

# Stable Diffusion 1.5 (لـ VRAM منخفض)
wget -O models/Stable-diffusion/v1-5-pruned-emaonly.safetensors \
  "https://huggingface.co/runwayml/stable-diffusion-v1-5/resolve/main/v1-5-pruned-emaonly.safetensors"

استخدام LoRA

LoRA (Low-Rank Adaptation) يسمح بالضبط الدقيق للنماذج الكبيرة بموارد منخفضة.

hljs bash
mkdir -p models/Lora

استخدام LoRA في prompt الخاص بـ AUTOMATIC1111:

a beautiful landscape, mountains, sunset <lora:detail-enhancer:0.7>

تثبيت ControlNet

hljs bash
cd extensions
git clone https://github.com/Mikubill/sd-webui-controlnet.git

mkdir -p models/ControlNet
wget -O models/ControlNet/control_v11p_sd15_canny.pth \
  "https://huggingface.co/lllyasviel/ControlNet-v1-1/resolve/main/control_v11p_sd15_canny.pth"

إنتاج الصور عبر API

hljs python
import requests
import base64
from pathlib import Path

def generate_image(prompt, negative_prompt="", steps=30, width=1024, height=1024):
    url = "http://localhost:7860/sdapi/v1/txt2img"
    payload = {
        "prompt": prompt,
        "negative_prompt": negative_prompt,
        "steps": steps,
        "width": width,
        "height": height,
        "sampler_name": "DPM++ 2M Karras",
        "cfg_scale": 7,
        "seed": -1
    }
    
    response = requests.post(url, json=payload)
    result = response.json()
    
    image_data = base64.b64decode(result["images"][0])
    Path("output.png").write_bytes(image_data)
    print("تم حفظ الصورة: output.png")

generate_image(
    prompt="a futuristic data center, neon lights, cyberpunk style, 8k",
    negative_prompt="blurry, low quality, distorted"
)

تحسين الأداء

hljs bash
pip install xformers

./webui.sh --listen --xformers --opt-sdp-attention --no-half-vae --medvram --port 7860

معلمات توفير الذاكرة

المعلمةالوصفتوفير VRAM
--xformersxformers attentionمتوسط
--medvramوضع VRAM متوسطعالي
--lowvramوضع VRAM منخفضعالي جداً
--opt-sdp-attentionSDP attentionمتوسط
--no-half-vaeVAE float32تحسين الجودة

أنتج صوراً غير محدودة مع Stable Diffusion على خوادم REXE GPU. نماذج SDXL تعمل بسرعة عالية مع NVIDIA A100 GPU.

الأسئلة الشائعة

ما الفرق بين AUTOMATIC1111 و ComfyUI؟

AUTOMATIC1111 يقدم واجهة ويب سهلة الاستخدام ومثالي للمبتدئين. ComfyUI يوفر واجهة قائمة على العقد لإنشاء سير عمل معقدة. ComfyUI مفضل للمستخدمين المتقدمين والأتمتة.

ما الحد الأدنى من VRAM المطلوب لـ Stable Diffusion؟

نماذج SD 1.5 يمكن أن تعمل بـ 4 جيجابايت VRAM في وضع --lowvram. نماذج SDXL تتطلب 8 جيجابايت VRAM كحد أدنى. يُنصح بـ 12 جيجابايت+ VRAM للاستخدام المريح.

ما هو LoRA وكيف يُستخدم؟

LoRA (Low-Rank Adaptation) يسمح بالضبط الدقيق للنماذج الكبيرة على نمط أو موضوع محدد بموارد منخفضة. ضع ملفات LoRA في مجلد models/Lora واستخدمها في prompts بتنسيق <lora:اسم_النموذج:الوزن>.

ما فائدة ControlNet؟

ControlNet يسمح بالتحكم في إنتاج الصور باستخدام إشارات تحكم مثل الوضعية (OpenPose)، خرائط الحواف (Canny)، العمق والتجزئة. هذا يمنحك تحكماً دقيقاً في تكوين الصور المنتجة.

هل يمكن استخدام الصور المنتجة تجارياً؟

Stable Diffusion يُوزع تحت رخصة CreativeML Open RAIL-M. الصور المنتجة مناسبة عموماً للاستخدام التجاري، لكن يُنصح بالتحقق من رخصة النموذج و LoRA المحدد المستخدم.

كيف يتم إنتاج الصور بالدفعات؟

في AUTOMATIC1111 استخدم معلمات Batch count و Batch size للإنتاج الجماعي. يمكنك أيضاً إرسال طلبات متعددة عبر API في حلقة. في ComfyUI أنشئ سير عمل دفعية مع نظام الطوابير.

مقالات ذات صلة

حركة الشبكةالداخل Gbpsالخارج Gbps