יצירת תמונות באמצעות Imagen 3

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

במדריך הזה נסביר איך להתחיל להשתמש ב-Imagen באמצעות ה-SDK של Python ל-Gemini API.

מידע על Imagen 3

Imagen 3 הוא המודל האיכותי ביותר של Google להמרת טקסט לתמונה, והוא כולל יכולות חדשות ומשופרות. תמונה 3 יכולה לבצע את הפעולות הבאות:

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

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

למידע נוסף ולראות פלט לדוגמה, סקירה כללית של Google DeepMind Imagen 3.

לפני שמתחילים: מגדירים את הפרויקט ואת מפתח ה-API

pip install -U git+https://github.com/google-gemini/generative-ai-python@imagen

לפני שמפעילים את Gemini API, צריך להגדיר את הפרויקט ולהגדיר את מפתח ה-API.

יצירת תמונות

הקטע הזה מראה איך ליצור מודל Imagen וליצור תמונות.

כדי להריץ את הקוד לדוגמה, קודם צריך להתקין כרית:

pip install --upgrade Pillow

לאחר מכן, בהתקנה של כרית וב-Python SDK, תוכלו להשתמש בקוד הבא כדי ליצור תמונות:

import os
import google.generativeai as genai

genai.configure(api_key=os.environ['API_KEY'])

imagen = genai.ImageGenerationModel("imagen-3.0-generate-001")

result = imagen.generate_images(
    prompt="Fuzzy bunnies in my kitchen",
    number_of_images=4,
    safety_filter_level="block_only_high",
    person_generation="allow_adult",
    aspect_ratio="3:4",
    negative_prompt="Outside",
)

for image in result.images:
  print(image)

# The output should look similar to this:
# <vertexai.preview.vision_models.GeneratedImage object at 0x78f3396ef370>
# <vertexai.preview.vision_models.GeneratedImage object at 0x78f3396ef700>
# <vertexai.preview.vision_models.GeneratedImage object at 0x78f33953c2b0>
# <vertexai.preview.vision_models.GeneratedImage object at 0x78f33953c280>

for image in result.images:
  # Open and display the image using your local operating system.
  image._pil_image.show()

ביומן צריכות להופיע ארבע תמונות דומות לזו:

תמונה של שני ארנבים פרוותיים במטבח שנוצרה על ידי AI

הפרמטרים של מודל Imagen

הפרמטרים הבאים זמינים ל-generate_images():

  • prompt: הנחיה בטקסט לתמונה.
  • negative_prompt: תיאור של מה שרוצים להשמיט בתמונות שנוצרות. ברירת המחדל היא 'ללא'.

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

  • number_of_images: מספר התמונות שייווצרו, מ-1 עד 4 (כולל). ערך ברירת המחדל הוא 4.

  • aspect_ratio: שינוי יחס הגובה-רוחב של התמונה שנוצרה. הערכים הנתמכים הם "1:1",‏ "3:4",‏ "4:3",‏ "9:16" ו-"16:9". ערך ברירת המחדל הוא "1:1".

  • safety_filter_level: הוספת רמת מסנן לסינון הבטיחות. הערכים הבאים חוקיים:

    • "block_low_and_above": חסימה כשציון הסבירות או ציון החומרה הוא LOW,‏ MEDIUM או HIGH.
    • "block_medium_and_above": חסימה כשציון הסבירות או ציון החומרה הוא MEDIUM או HIGH.
    • "block_only_high": חסימה כשציון הסבירות או ציון החומרה הוא HIGH.
  • person_generation: המודל יכול ליצור תמונות של אנשים. הערכים הבאים נתמכים:

    • "dont_allow": חסימה של יצירת תמונות של אנשים.
    • "allow_adult": יצירת תמונות של מבוגרים, אבל לא של ילדים.

המאמרים הבאים

תמונה 3 ב-Gemini API נמצאת בשלבי גישה מוקדמת. עדכונים נוספים בנושא הסטטוס של התכונה.