GPT
S

stable-diffusion-v1-4

קוד פתוח

CompViscreativeml-openrail-m2022-08-20

  • diffusers
  • safetensors
  • stable-diffusion
  • stable-diffusion-diffusers
  • text-to-image

מודל פתוח שמייצר תמונות מטקסט ישירות על חומרה מקומית צנועה. הוא מתאים למי שרוצה שליטה מלאה בתהליך היצירה בלי תלות בשירותי ענן סגורים.

  • 860Mפרמטרים
  • 21.7 GBמשקל הקבצים
  • 566,098הורדות בחודש
  • 7,061לייקים

מה זה

מדובר במודל דיפוזיה מסוג Latent Diffusion שממיר תיאורי טקסט באנגלית לתמונות ברזולוציה של 512 על 512 פיקסלים. במקום לעבוד ישירות על הפיקסלים הגולמיים, הוא רץ בתוך מרחב לטנטי מכווץ שנוצר על ידי מקודד תמונה, ונעזר במודל הטקסט הקפוא CLIP ViT-L/14 כדי להבין את ההנחיות. השיטה הזו חוסכת משאבי חישוב ומאפשרת להפיק תוצאות באיכות גבוהה בזמן קצר יחסית.

המשקולות של גרסה 1-4 נבנו על בסיס גרסה 1-2 ועברו אימון נוסף של 225 אלף צעדים על מאגר התמונות המפולטר laion-aesthetics v2 5+. האימון כלל השמטה של עשרה אחוזים מהטקסט כדי לחזק את ההיצמדות להנחיה באמצעות מנגנון דגימה מונחה, מה שמספק תמונות מדויקות יותר ויזואלית לעומת הגרסאות הקודמות בסדרה.

מתאים ל

  • מחקר על מודלים גנרטיביים

    מאפשר לבחון הטיות מובנות ואבטחה ברשתות דיפוזיה בזכות משקולות פתוחות וארכיטקטורה מוכרת.

  • סיוע בעיצוב וקונספט אמנותי

    מייצר סקיצות ורעיונות חזותיים מהירים ישירות מהנחיות טקסט באנגלית.

  • כלים חינוכיים ויצירתיים

    משתלב בקלות בתוך יישומי קוד בזכות דרישות חומרה נמוכות ותמיכה מלאה בספריית diffusers.

איפה זה נופל

הוא לא יודע לייצר טקסט קריא בתוך תמונות, והוא מתקשה מאוד בקומפוזיציות מורכבות שמגדירות יחסים בין עצמים, כמו קובייה אדומה מעל כדור כחול. פרצופים ואנשים עלולים לצאת מעוותים, ואיכות הפוטוריאליזם שלו רחוקה משלמות. בנוסף, המודל אומן בעיקר על אנגלית, כך שהזנת פרומפטים בעברית תניב תוצאות ירודות מאוד. מאגר האימון LAION הכיל תוכן למבוגרים וסבל מכפילויות, ולכן המודל עלול לשחזר תמונות קיימות או לייצר תוכן פוגעני ללא רכיב סינון חיצוני.

שאלות
נפוצות

האם המודל מבין פרומפטים בעברית?

הוא אומן על מאגר נתונים שמבוסס בעיקר על כיתובים באנגלית. אם תזינו לו טקסט בעברית התוצאות יהיו מקוטעות או שגויות לחלוטין. מומלץ לתרגם את ההנחיות לאנגלית לפני שליחתן למודל.

כמה זיכרון כרטיס מסך נדרש כדי להריץ אותו?

אפשר להריץ אותו על חומרה בסיסית של פחות מ־4GB זיכרון וידאו אם טוענים אותו ברמת דיוק של float16 ומפעילים חיתוך קשב בספריית ההרצה. אם המשאבים מאפשרים, עבודה ב־float32 תיתן הרצה ישירה בלי התאמות מיוחדות.

איך מריצים

כדי להריץ אותו משתמשים בספריית diffusers של פייתון על כרטיס מסך של Nvidia או בסביבת JAX ו־Flax למעבדי TPU. אם טוענים אותו בדיוק של float16 ומפעילים attention slicing, הוא מסוגל לעבוד גם על כרטיסי מסך עם פחות מ־4GB זיכרון ייעודי, כך שאין חובה להחזיק שרת יקר כדי לקבל תוצאות.

אם אין לכם כרטיס מסך זמין או שאתם צריכים לטפל באלפי בקשות במקביל בלי לנהל תשתית שרתים, הקמה ותחזוקה עצמית של סביבת הרצה לא ישתלמו לכם. במצב כזה, פנייה לפתרון מנוהל תהיה זולה ופשוטה בהרבה.

from diffusers import DiffusionPipeline

pipe = DiffusionPipeline.from_pretrained("CompVis/stable-diffusion-v1-4")
img = pipe("a photo").images[0]

הרישיון

השימוש כפוף לרישיון CreativeML OpenRAIL M שמתיר שימוש מסחרי ומחקרי, אבל מטיל מגבלות שימוש נוקשות. אסור להשתמש בו להפצת מידע כוזב, פגיעה באנשים, התחזות, או הפקת חומרים אלימים ומיניים ללא הסכמה. אם אתם משלבים אותו במוצר שלכם, אתם מחויבים לכלול את תנאי הרישיון ולהחיל את אותן מגבלות שימוש על משתמשי הקצה.

  • שימוש מסחרי
  • שינוי הקוד
  • מגבלות שימוש ברישיון

הרישיון המלא בעמוד המודל ↗