GPT
S

stable-diffusion-xl-1.0-inpainting-0.1

קוד פתוח

diffusersopenrail++2023-09-01

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

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

  • 2.6Bפרמטרים
  • 19.4 GBמשקל הקבצים
  • 79,974הורדות בחודש
  • 384לייקים

מה זה

מדובר במודל דיפוזיה מסוג Latent Diffusion עם כמעט 2.6 מיליארד פרמטרים, שנוצר על בסיס המשקלים של stable-diffusion-xl-base-1.0 ואומן ספציפית למשימות של עריכה ומילוי אזורים מוסתרים. צוות diffusers הוסיף לו חמישה ערוצי קלט ברשת ה־UNet, ארבעה שמייצגים את התמונה המקודדת עם החלק המוסתר וערוץ אחד למסכה עצמה, ואימן אותו לאורך 40 אלף צעדים ברזולוציה של 1024 על 1024 פיקסלים.

המבנה הזה נשען על שני מקודדי טקסט קבועים, OpenCLIP-ViT/G ו־CLIP-ViT/L, מה שנותן הבנה טובה יותר של הנחיות מורכבות ביחס לגרסאות ישנות יותר של סטייבל דיפיוז'ן. במקום לנסות לדחוף תמונה שלמה לתוך מודל יצירה רגיל ולקוות שהשינוי יתפוס רק איפה שצריך, כאן המודל יודע להתייחס למסכה כחלק בלתי נפרד מתהליך הדגימה ולייצר תוכן שמשתלב ברקע הקיים.

מתאים ל

  • החלפת אובייקטים בתמונות

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

  • שילוב בכלי עיצוב ויצירה

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

  • מחקר על דיפוזיה מונחית

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

איפה זה נופל

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

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

שאלות
נפוצות

אפשר להשתמש בו ישירות ליצירת תמונה שלמה מטקסט ולא רק לעריכה?

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

האם המודל יצליח לתקן שלטים או להוסיף כיתוב באנגלית לתמונה קיימת?

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

איך מריצים

כדי לעבוד איתו צריך להוריד כמעט עשרים גיגה של קבצים, והמשקל הזה מכתיב חומרה רצינית. תצטרכו כרטיס מסך עם לפחות 16 עד 24 גיגה זיכרון גרפי כדי לטעון את שני מקודדי הטקסט ואת רשת ה־UNet ברזולוציה מלאה של 1024 על 1024 בלי לקבל שגיאות זיכרון תוך כדי יצירה.

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

from diffusers import DiffusionPipeline

pipe = DiffusionPipeline.from_pretrained("diffusers/stable-diffusion-xl-1.0-inpainting-0.1")
img = pipe("a photo").images[0]

הרישיון

הרישיון הוא CreativeML Open RAIL++-M. מותר להשתמש בו בחינם, אבל כרטיס המודל מגדיר את השימוש הנוכחי למטרות מחקר בלבד וכולל תנאים נוקשים והגבלות על סוגי תוכן שאסור לייצר איתו. מי שמתכנן לשלב אותו במוצר מסחרי צריך לבדוק היטב את תנאי הרישיון המלאים ולוודא שהשימוש לא חורג מההגבלות המשפטיות שהוגדרו בו.

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

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