FLUX.1-Kontext-dev: نموذج الذكاء الاصطناعي لتعزيز الصور

نموذج الذكاء الاصطناعي لتعزيز الصور باستخدام تعليمات النص

Page content

لقد أطلقت مختبرات Black Forest FLUX.1-Kontext-dev، نموذج ذكاء اصطناعي متقدم لتحويل الصور من خلال استخدام تعليمات نصية.

على عكس FLUX.1-dev الذي يولد الصور من النصوص فقط، فإن FLUX.1-Kontext-dev يستخدم كلًا من الصورة المدخلة والنص لخلق إصدارات معدلة مع الحفاظ على العناصر الرئيسية.

غُوَفير على دراجة هذا الصورة تُظهر قدرة FLUX.1-Kontext-dev على تحسين الصور.

الصورة الأصلية لشعار Go:

غُوَفير لشعار Go

تم تحويلها باستخدام التعليمات هذا الغُوَفير يركض على الدراجة على الطريق الجبلي. نتيجة جيدة، أليس كذلك؟

ما هو FLUX.1-Kontext-dev؟

FLUX.1-Kontext-dev تم تصميمه لـ إنشاء وتحرير الصور في السياق. ومن الميزات الرئيسية:

  • التوافق بين الشخصيات: الحفاظ على العناصر الفريدة (مثل الشخصيات أو الأشياء) عبر عدة مشاهد
  • التحرير المحلي: تعديل أجزاء معينة من الصورة دون التأثير على بقية الصورة
  • المرجعية في الأسلوب: إنشاء مشاهد جديدة مع الحفاظ على الأسلوب من الصور المرجعية
  • تحسين الصورة: تحويل الصور بناءً على تعليمات نصية

التثبيت

المتطلبات الأساسية

ستحتاج إلى:

  • 16 جيجابايت فما فوق من VRAM على وحدة معالجة الرسومات الخاصة بك (تُوصى NVIDIA RTX)
  • Python 3.8 فما فوق مع pip
  • الوصول إلى Hugging Face (حساب ورمز وصول)

خطوات التثبيت

  1. إنشاء حساب على Hugging Face في huggingface.co إذا لم يكن لديك حساب

  2. زيارة صفحة النموذج: https://huggingface.co/black-forest-labs/FLUX.1-Kontext-dev

  3. تقبّل اتفاقية الترخيص (الاستخدام غير التجاري فقط)

  4. إنشاء رمز وصول للكتابة في https://huggingface.co/settings/tokens

  5. تنزيل النموذج:

git clone https://huggingface.co/black-forest-labs/FLUX.1-Kontext-dev

أو استخدام مسار النموذج مباشرة في كودك.

التثبيت

تثبيت الحزم المطلوبة لـ Python:

pip install -U diffusers torch transformers pillow accelerate sentencepiece

أو باستخدام uv:

cd tools/fkon
uv sync

الاستخدام

نموذج بسيط لـ Python

إليك مثالًا كاملًا باستخدام FLUX.1-Kontext-dev:

import torch
from diffusers import FluxKontextPipeline
from PIL import Image

# تحميل النموذج
model_path = "/path/to/FLUX.1-Kontext-dev"
pipe = FluxKontextPipeline.from_pretrained(
    model_path, 
    torch_dtype=torch.bfloat16
)

# تفعيل تفريغ المعالج لحفظ VRAM
pipe.enable_model_cpu_offload()
pipe.enable_sequential_cpu_offload()

# تحميل الصورة المدخلة
input_image = Image.open("path/to/your/image.png").convert("RGB")

# تعريف تعليمات التحسين
prompt = "هذا الغُوَفير يركض على الدراجة على الطريق الجبلي"

# إنشاء صورة محسّنة
result = pipe(
    prompt=prompt,
    image=input_image,
    height=496,
    width=680,
    guidance_scale=3.5,
    num_inference_steps=60,
    max_sequence_length=512,
    generator=torch.Generator("cpu").manual_seed(42)
)

# حفظ النتيجة
output_image = result.images[0]
output_image.save("augmented_image.jpg")

إدارة الأبعاد

FLUX.1-Kontext-dev لديه متطلبات أبعاد محددة:

  • مضاعفات 16: يجب أن تكون الأبعاد مضاعفات لـ 16
  • التعديل التلقائي: قد يقوم النموذج بتعديل الأبعاد لتلبية متطلباته
  • إعادة التحجيم: يقوم أداةنا بإعادة تحجيم الناتج إلى الأبعاد المطلوبة

تقوم الأداة بذلك من خلال:

  1. تقريب الأبعاد المطلوبة إلى مضاعفات 16
  2. تغيير حجم الصورة المدخلة إلى الأبعاد المُقربة
  3. إنشاء الصورة (قد يقوم النموذج بتعديلها مرة أخرى)
  4. إعادة تغيير حجم الناتج إلى الأبعاد المطلوبة

أمثلة على الاستخدام

  1. تحويل الشخصية

تحويل شخصية مع الحفاظ على التوافق:

prompt = "هذا الغُوَفير يركض على الدراجة على الطريق الجبلي"
  1. إزالة الكائنات

إزالة العناصر غير المرغوب فيها:

prompt = "يرجى إزالة الشخص الذي يرتدي ملابس ميني ماوس من هذه الصورة"

النصائح والإجراءات المثلى

  1. إدارة VRAM: استخدم enable_model_cpu_offload() إذا كانت لديك VRAM محدودة
  2. التخطيط للأبعاد: اطلب أبعادًا مضاعفات لـ 16 لتقليل التعديلات
  3. وضوح التعليمات: كن محددًا في تعليماتك النصية للحصول على نتائج أفضل
  4. الإنتاج بالجملات: أنشئ عدة إصدارات (--n 4) للحصول على أفضل نتيجة
  5. التحكم في البذور: استخدم بذورًا يدوية للحصول على نتائج قابلة للتكرار

القيود

  • ترخيص غير تجاري: يتطلب ترخيصًا تجاريًا للاستخدام التجاري
  • متطلب أجهزة قوية: يحتاج إلى وحدة معالجة الرسومات قوية مع VRAM كبيرة
  • قيود الأبعاد: قد يقوم النموذج بتعديل الأبعاد تلقائيًا
  • وقت المعالجة: قد يستغرق من 10 إلى 15 دقيقة لكل صورة حسب الأجهزة

الروابط المفيدة