Spaces:
Sleeping
A newer version of the Gradio SDK is available:
6.2.0
title: Takween Model
emoji: 🖼
colorFrom: purple
colorTo: red
sdk: gradio
sdk_version: 5.34.2
app_file: app.py
pinned: false
license: apache-2.0
short_description: ' هو نموذج ذكاء اصطناعي متخصص تم تدريبه لفهم وتوليد الأشكال '
مشروع تكوين (Takween Project)
مشروع متقدم في الذكاء الاصطناعي يهدف إلى تخصيص نموذج الانتشار المستقر (Stable Diffusion) لتوليد صور عالية الدقة للأشكال الهندسية بناءً على الأوصاف النصية. يستخدم المشروع تقنيات الضبط الدقيق الفعالة (LoRA) لتدريب النموذج على فهم وتكوين صور دقيقة تعكس العلاقات المكانية، الألوان، والخصائص المحددة في النص.
توليد صور هندسية من النص: القدرة على تحويل الأوصاف النصية المعقدة (مثل "مثلث أزرق مفرغ على يسار مربع أصفر") إلى صور دقيقة. كفاءة في التدريب: استخدام تقنية LoRA (Low-Rank Adaptation) لضبط النموذج، مما يقلل بشكل كبير من متطلبات الذاكرة ويسرع عملية التدريب. خط أنابيب بيانات مخصص: نظام مرن لمعالجة البيانات يربط كل صورة بمجموعة من الأوصاف النصية المعززة (Augmented) لتدريب أكثر ثراءً. واجهة مستخدم تفاعلية: واجهة ويب سهلة الاستخدام تم بناؤها باستخدام Gradio، تتيح لأي شخص تجربة النموذج بسهولة. دعم ControlNet (اختياري): إطار عمل جاهز لدمج ControlNet، مما يفتح الباب أمام تحكم هيكلي أكثر دقة في الصور المولدة. الهيكل التقني يعتمد المشروع على مجموعة من التقنيات والمكتبات الحديثة في مجال تعلم الآلة:
النموذج الأساسي: runwayml/stable-diffusion-v1-5 إطار العمل: PyTorch مكتبات الانتشار: Hugging Face Diffusers, Transformers تقنية الضبط الدقيق: PEFT (Parameter-Efficient Fine-Tuning) التسريع والأداء: Accelerate (للتدريب بالدقة المختلطة fp16) الواجهة الرسومية: Gradio متطلبات التشغيل للتشغيل الناجح للمشروع، ستحتاج إلى:
حساب Google Drive لتخزين البيانات والنماذج. بيئة Google Colab (أو بيئة محلية مع GPU مناسبة). مكتبات Python المذكورة في ملف project.txt. يمكن تثبيت المكتبات الأساسية عبر الأوامر التالية:
Bash
!pip install -qqq diffusers transformers accelerate peft bitsandbytes torch torchvision !pip install -qqq gradio controlnet_aux إعداد المشروع استنساخ المستودع (Clone):
Bash
git clone [Your-Repository-URL] cd [Your-Repository-Name] الاتصال بـ Google Drive:
في بيئة Colab، قم بتوصيل حسابك في Google Drive. تنظيم البيانات:
أنشئ مجلدًا رئيسيًا للمشروع في Google Drive (على سبيل المثال، GeoSynthAI_Augmented_Data). داخل هذا المجلد، أنشئ مجلدين: images: ضع فيه جميع الصور الهندسية. descriptions: ضع فيه جميع الملفات النصية (.txt) التي تصف الصور. ملاحظة هامة: يجب أن يتطابق اسم ملف الصورة (بدون الامتداد) مع بداية اسم الملف النصي المرتبط به (e.g., image_0.png يرتبط بـ image_0_original.txt, image_0_aug_0.txt, etc.). طريقة الاستخدام اتبع الخطوات التالية لتشغيل المشروع بالكامل:
- تدريب النموذج قم بتشغيل خلايا الكود المسؤولة عن تحميل البيانات وإعدادها. نفّذ دالة train_and_save_model. ستبدأ عملية التدريب، وسيتم تطبيق LoRA على نموذج UNet. يتم استخدام Accelerator لتسريع العملية. بعد انتهاء التدريب، سيتم حفظ النموذج المدرب وأوزان LoRA تلقائيًا في مجلد final_model داخل Google Drive.
- تقييم النموذج بعد تدريب النموذج، قم بتنفيذ دالة evaluate_trained_model. ستقوم هذه الدالة بتوليد صور بناءً على مجموعة من الموجهات النصية المحددة مسبقًا. سيتم حفظ الصور والتقرير في مجلد evaluation_results في Google Drive.
- تشغيل الواجهة التفاعلية قم بتشغيل الخلية الأخيرة في الكود التي تحتوي على إعدادات Gradio. سيتم تحميل النموذج المدرب من Google Drive. ستظهر واجهة ويب تفاعلية تتيح لك إدخال وصف نصي وتوليد الصور مباشرة. الخطط المستقبلية تفعيل تدريب ControlNet: إعداد بيانات التحكم (مثل خرائط Canny) وتدريب النموذج بشكل كامل مع ControlNet لفرض قيود هيكلية دقيقة. توسيع مجموعة البيانات: زيادة حجم وتنوع البيانات لتغطية أشكال وعلاقات مكانية أكثر تعقيدًا. الترقية إلى نماذج أحدث: تجربة المشروع على نماذج أساسية أقوى مثل SDXL. فريق العمل هذا المشروع هو نتاج جهد وتعاون الفريق:
أسامة سعيد طارق العمري شكر وتقدير نتقدم بجزيل الشكر والتقدير لكل من ساهم في إنجاح هذا العمل بإرشاده ودعمه:
الدكتور القدير/ أكرم الصباري
أستاذ الذكاء الاصطناعي وتعلم الآلة المهندسة/ فاتن الحيافي
أستاذة الجانب العملي