العودة للتوثيق
Stability AI LogoStability AI

نموذج SDXL-Turbo للسرعة القصوى

تقنية Adversarial Diffusion Distillation (ADD) لتوليد الصور بلحظات

المعالج (CPU)

يفضل معالج متعدد الأنوية (مثل AMD اللي عندك) لرفع الصور ومعالجتها.

الرامات (RAM)

حد أدنى 16GB RAM للنظام، ويفضل 8GB VRAM على الأقل لكرت الشاشة.

زمن التوليد

أقل من ثانية واحدة (1-2 Steps) على كروت RTX الفئة المتوسطة.

أولاً: تحميل الموديل بذكاء

نقوم بتحميل الموديل مع التحقق من توفر CUDA لاستخدام دقة float16 لتوفير الذاكرة وتسريع التوليد.

from diffusers import AutoPipelineForText2Image
import torch

device = "cuda" if torch.cuda.is_available() else "cpu"

# تحميل الموديل مع تحسينات الذاكرة
pipe = AutoPipelineForText2Image.from_pretrained(
    "stabilityai/sdxl-turbo", 
    torch_dtype=torch.float16 if device == "cuda" else torch.float32, 
    variant="fp16" if device == "cuda" else None
)
pipe.to(device)

# تحسين إضافي للسرعة (فقط للـ CUDA)
if device == "cuda":
    pipe.enable_xformers_memory_efficient_attention() # يقلل استهلاك الـ VRAM جداً

ثانياً: بناء الـ Endpoint المحسن

لتحقيق أعلى سرعة في محرك ONYX، نستخدم 2 Steps فقط، ونقوم بتعطيل guidance_scale كما توصي Stability AI.

import io
from fastapi import Response

async def generate_image_endpoint(prompt: str):
    try:
        # توليد الصورة (Turbo Mode)
        image = pipe(
            prompt=prompt, 
            num_inference_steps=2,    # Turbo يحتاج خطوات قليلة جداً
            guidance_scale=0.0,       # تعطيله أساسي لسرعة الموديل
            width=512,
            height=512
        ).images[0]
        
        # تحويل الصورة لـ JPEG (أخف وأسرع من PNG)
        img_byte_arr = io.BytesIO()
        image.save(img_byte_arr, format='JPEG', quality=80)
        
        return Response(content=img_byte_arr.getvalue(), media_type="image/jpeg")
    except Exception as e:
        return {"error": str(e)}

المكاتب المطلوبة (requirements.txt)

diffusers>=0.24.0
transformers
accelerate
torch
xformers # اختيارية لتسريع الكرت

تنبيهات الاستخدام

  • الموديل مخصص للصور بدقة 512x512؛ الدقات الأعلى قد تقلل الجودة بشكل ملحوظ.
  • لا يدعم الموديل النصوص المقروءة داخل الصور بشكل جيد.
  • الاستخدام التجاري يتطلب مراجعة رخصة Stability AI.

Author: ONYX (2026)

Base Model: SDXL-Turbo