Nano Banana: редактирование и объединение изображений
ID моделей и выбор эндпоинта см. в обзоре Nano Banana.
ГлавноеВ нативном эндпоинте изображение и текст помещаются в один и тот же
parts; в OpenAI-совместимом используется /v1/images/edits.Python (нативный)
edit.py
from google import genai
from google.genai import types
client = genai.Client(
api_key="YOUR_OFOX_API_KEY",
http_options={"api_version": "v1beta", "base_url": "https://api.ofox.io/gemini"},
)
with open("apple.png", "rb") as f:
image = types.Part.from_bytes(data=f.read(), mime_type="image/png")
resp = client.models.generate_content(
model="google/gemini-3.1-flash-image",
contents=["Сделай яблоко зелёным, остальное оставь без изменений", image],
config=types.GenerateContentConfig(
response_modalities=["IMAGE"],
image_config=types.ImageConfig(aspect_ratio="1:1", image_size="1K"),
),
)
for part in resp.candidates[0].content.parts:
if part.inline_data:
with open("apple_green.png", "wb") as f:
f.write(part.inline_data.data)- Объединение нескольких изображений: поместите несколько
inlineDataв одинpartsи опишите в тексте роль каждого изображения, например «помести человека с первого изображения в сцену со второго». - Сохранение соотношения сторон: при редактировании тоже передавайте
aspectRatio, иначе соотношение сторон результата выбирает модель, и оно может не совпасть с исходным. - Тарификация референсных изображений: референсные изображения оплачиваются как входные токены. По замерам, одно референсное изображение 1024×1024 даёт 1 120 токенов — см. элемент
IMAGEвpromptTokensDetailsответа.
При ошибках см. Устранение ошибок.
Обновлено