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.
Получите и защитите свой ключ API
Для вызова API Gemini вам понадобится ключ API. Если у вас его еще нет, создайте ключ в Google AI Studio.
Настоятельно рекомендуется не проверять ключ API в вашей системе контроля версий.
Вам следует хранить свой ключ API в хранилище секретов, например Google Cloud Secret Manager .
В этом руководстве предполагается, что вы получаете доступ к своему ключу API как к переменной среды.
Установите пакет SDK и настройте свой ключ API.
Установите зависимость с помощью pip:
pip install -U git+https://github.com/google-gemini/generative-ai-python@imagen
Импортируйте пакет и настройте сервис с помощью своего ключа API:
import os import google.generativeai as genai genai.configure(api_key=os.environ['API_KEY'])
Создание изображений
В этом разделе показано, как создать экземпляр модели 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 находится в раннем доступе. Следите за объявлениями о статусе функции.