Edición y fusión de imágenes con Nano Banana
Los ID de modelo y la elección de endpoint se describen en la descripción general de Nano Banana.
ClaveEn el endpoint nativo, la imagen y el texto van en el mismo
parts; en el endpoint compatible con OpenAI se usa /v1/images/edits.Python (nativo)
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.ai/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=["Cambia la manzana a color verde y deja todo lo demás igual", 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)- Fusión de varias imágenes: incluya varios
inlineDataen el mismopartsy explique en el texto el papel de cada imagen, por ejemplo «Coloca a la persona de la primera imagen en el escenario de la segunda». - Conservar la relación de aspecto: al editar también hay que enviar
aspectRatio; de lo contrario, el modelo decide la relación de aspecto de la salida, que puede no coincidir con la del original. - Facturación de las imágenes de referencia: las imágenes de referencia se facturan como tokens de entrada. En nuestras mediciones, una imagen de referencia de 1024×1024 cuenta como 1.120 tokens; consulte el elemento
IMAGEdepromptTokensDetailsen la respuesta.
Si se produce un error, consulte Solución de errores.
Última actualización: