Создавайте изображения с помощью Imagen 3

Gemini API обеспечивает доступ к Imagen 3 , современной модели генерации изображений Google. Используя Imagen, вы можете создавать новые изображения из текстовых подсказок. Интеграция Gemini API с Imagen предназначена для того, чтобы помочь вам создавать приложения искусственного интеллекта нового поколения, которые за считанные секунды преобразуют пользовательские подсказки в высококачественные визуальные ресурсы.

Это руководство поможет вам начать работу с Imagen с помощью Gemini API Python SDK.

О изображении 3

Imagen 3 — это модель Google для преобразования текста в изображение высочайшего качества, обладающая рядом новых и улучшенных возможностей. Imagen 3 может делать следующее:

  • Создавайте изображения с большей детализацией, более насыщенным освещением и меньшим количеством отвлекающих артефактов, чем предыдущие модели.
  • Понимайте подсказки, написанные естественным, повседневным языком, что упрощает создание согласованных результатов без сложной разработки подсказок.
  • Создавайте изображения в широком диапазоне форматов и стилей: от фотореалистичных пейзажей до картин маслом с богатой текстурой или причудливых сцен из глины.
  • Рендеринг текста более эффективен, чем предыдущие модели, открывая новые возможности для таких сценариев использования, как стилизованные поздравительные открытки, презентации и т. д.

Imagen 3 был создан с использованием новейших инноваций Google в области безопасности и ответственности, от разработки данных и моделей до производства. Команда Google DeepMind использовала обширную фильтрацию и маркировку данных, чтобы свести к минимуму вредоносный контент в наборах данных и снизить вероятность получения вредных результатов. Команда также провела красную команду и оценки по таким темам, как справедливость, предвзятость и безопасность контента.

Чтобы узнать больше и увидеть пример вывода, см. обзор Google DeepMind Imagen 3 .

Прежде чем начать: настройте проект и ключ API.

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

Прежде чем вызывать API Gemini, вам необходимо настроить проект и ключ API.

Создание изображений

В этом разделе показано, как создать экземпляр модели Imagen и генерировать изображения.

Чтобы запустить пример кода, сначала необходимо установить Pillow :

pip install --upgrade Pillow

Затем, установив 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()

В блокноте должно появиться четыре изображения, подобных этому:

Сгенерированное ИИ изображение двух пушистых кроликов на кухне

Параметры модели изображения

Для 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" : создавать изображения взрослых, но не детей.

Язык текстовых подсказок

Поддерживаются следующие языки ввода текстовых подсказок:

  • Китайский (упрощенный) ( zh / zh-CN )
  • Китайский (традиционный) ( zh-TW )
  • английский ( en )
  • Хинди ( hi )
  • японский ( ja )
  • Корейский ( ko )
  • Португальский ( pt )
  • Испанский ( es )

Что дальше

Imagen 3 в Gemini API находится в раннем доступе. Следите за объявлениями о статусе функции.