{count, plural, one {Curso} other {Cursos}}
Aunque los modelos de generación de imágenes han mejorado muchísimo, siempre han flojeado en algo: la edición. Hacer cambios precisos en el texto, sustituir colores, transformar estilos, usar distintos ángulos de cámara o mantener personajes consistentes entre generaciones… eran casos de uso muy deseados, pero ningún modelo de imagen los resolvía bien de forma general. Hasta que Google lanzó el modelo Gemini 2.5 Flash Image y cambió las reglas del juego con su enfoque de edición conversacional.
En este tutorial aprenderás a configurar y usar Gemini 2.5 Flash Image con Python, dominarás técnicas específicas de prompt engineering para distintos estilos visuales y trabajarás con funciones avanzadas como la composición multiimagen y la consistencia de personajes. Al final, tendrás herramientas prácticas para flujos de trabajo profesionales de generación de imágenes.
Actualización: Mientras tanto, Google ha publicado la versión actualizada del modelo. Te recomiendo echar un vistazo a nuestra guía de Nano Banana 2 para ver las novedades.
Si te interesa explorar otras herramientas de generación de imágenes de Google AI, quizá quieras consultar nuestra guía completa de Imagen 3, que cubre la API alternativa de Google para generar imágenes, con distintas fortalezas y precios. También puedes ver nuestra guía de Gemini 2.5 Computer Use para descubrir cómo el modelo puede ver tu pantalla y actuar en ella de forma autónoma, y consultar las últimas novedades de Gemini 3 Pro.
Por último, también puedes revisar nuestra guía de ChatGPT Images, un nuevo competidor de Nano Banana Pro.
¿Qué es Gemini 2.5 Flash Image?
La mayoría de modelos de generación de imágenes crean grandes visuales a partir de prompts de texto. Pero se les atraganta la edición. Si quieres cambiar la iluminación de una foto, normalmente tienes que empezar de cero. Si necesitas el mismo personaje en distintas escenas, la mayoría no logra mantenerlo consistente. Esto complica su uso en proyectos reales donde hacen falta ajustes y revisiones.
Gemini 2.5 Flash Image resuelve estos problemas de edición. Google ha construido este modelo con funciones específicas para abordar tareas que a otros se les resisten:
- Edición conversacional: Indícale qué cambiar con lenguaje natural, sin empezar de nuevo.
- Composición multiimagen: Mezcla hasta tres imágenes para crear algo nuevo.
- Consistencia de personajes: Mantén el mismo aspecto de los personajes en varias imágenes.
- Renderizado de texto de alta fidelidad: Añade texto claro y legible directamente en las imágenes.
- Razonamiento sobre el mundo real: Realiza ediciones inteligentes que comprenden cómo funcionan objetos y escenas.
Estas funciones se combinan para ofrecer un sistema de generación de imágenes más flexible. Así es como funciona en la práctica la consistencia de personajes:

Función de consistencia de personajes en acción: los mismos personajes de dibujo animado aparecen de forma consistente en distintas escenas, manteniendo su identidad visual mientras se adaptan a nuevos entornos y contextos.
Google probó este modelo en los benchmarks de LMArena, donde internamente lo llamaban “nano banana”. Los resultados muestran que rinde mejor que otros modelos líderes, sobre todo en tareas de edición de imágenes. Además, genera más rápido que la mayoría de competidores. La velocidad puede variar según la complejidad de la imagen y de las ediciones.

Benchmarks de rendimiento: Gemini 2.5 Flash Image demuestra un rendimiento superior en tareas de edición de imágenes frente a otros modelos líderes de generación de imágenes con IA.
La tarificación funciona de forma distinta a otros modelos de imagen. En lugar de pagar por imagen, pagas por tokens. Cada imagen utiliza unos 1.290 tokens, lo que cuesta aproximadamente 0,039 $. La tarifa es de 30 $ por millón de tokens. Tanto la generación nueva como la edición consumen la misma cantidad de tokens, así que el coste es predecible crees desde cero o hagas cambios.

Flujo de edición conversacional: ejemplos de modificaciones precisas logradas con instrucciones en lenguaje natural, mostrando la capacidad del modelo para aplicar cambios dirigidos sin regenerar por completo.
Ahora que sabes qué hace diferente a Gemini 2.5 Flash Image, pasemos a ponerlo en tus manos. El siguiente paso es preparar tu entorno de desarrollo para empezar a usarlo.
Cómo acceder a Nano Banana gratis
Aunque esta guía se centra en acceder a Gemini 2.5 Flash Image vía la API, también puedes generar imágenes con la herramienta solo con tu cuenta de Google.
Tras iniciar sesión, puedes elegir acceder al modelo Nano Banana desde Gemini o desde Google AI Studio. Sin embargo, si lo usas desde Gemini, tus imágenes llevarán una marca de agua.

Primeros pasos con Gemini 2.5 Flash Image: configuración del entorno
Antes de empezar a generar imágenes con Gemini 2.5 Flash Image, necesitas configurar tu entorno de desarrollo. El proceso es sencillo, pero es importante hacer bien la autenticación por seguridad.
Requisitos previos
Necesitarás unas cuantas cosas antes de empezar:
- Python 3.9 o superior: comprueba tu versión con
python --version - Gestor de paquetes UV: gestiona las dependencias de Python
- Cuenta de Google: para acceder a Google AI Studio
Obtener tu clave de API
Para usar Gemini 2.5 Flash Image, necesitas una clave de API de Google. Esta clave es como tu contraseña para acceder al servicio. Así puedes conseguirla:
- Ve a Google AI Studio
- Inicia sesión con tu cuenta de Google
- Haz clic en “Get API Key” en el panel izquierdo
En este punto, Google AI Studio te pedirá elegir un proyecto. Los proyectos ayudan a organizar el uso de la API y a controlar tus cuotas. Tienes dos opciones:
- “Create API key in new project” (mejor si es tu primera vez)
- “Create API key in existing project” (si ya tienes proyectos en Google Cloud)
La mayoría debería elegir la opción de proyecto nuevo. Haz clic y Google creará el proyecto y tu clave de API automáticamente.
4. Copia la clave generada al momento: no volverás a ver la clave completa
5. Guárdala en un lugar seguro: la necesitarás en los siguientes pasos
Nota de seguridad: trata tu clave de API como una contraseña. No la compartas en público ni la guardes en código accesible para otros.
Configurar tu entorno de desarrollo
Ahora que ya tienes tu clave de API, vamos a preparar el entorno de Python. Crea un directorio nuevo para este tutorial e instala los paquetes necesarios:
# Create project directory
mkdir gemini-image-tutorial
cd gemini-image-tutorial
# Initialize UV project
uv init
# Add required packages
uv add google-genai python-dotenv pillow
Para qué sirve cada paquete:
google-genai: cliente oficial para comunicarte con Geminipython-dotenv: mantiene segura tu clave de APIpillow: gestiona archivos de imagen
Proteger tu clave de API
Debes guardar tu clave de API de forma segura pero accesible para tu código. Lo mejor es usar variables de entorno con un archivo .env.
Crea un archivo .env en el directorio del proyecto:
# Create .env file
touch .env
Abre el archivo .env en cualquier editor de texto y añade tu clave de API:
GEMINI_API_KEY=your_api_key_here
Sustituye your_api_key_here por la clave que copiaste de Google AI Studio.
Después, crea un archivo .gitignore para no compartir tu clave por accidente si usas Git:
# Create .gitignore
echo ".env" >> .gitignore
echo "__pycache__/" >> .gitignore
echo "*.pyc" >> .gitignore
Probar la configuración
Vamos a comprobar que todo funciona creando una pequeña prueba. Crea un archivo llamado test_setup.py:
import os
from dotenv import load_dotenv
from google import genai
# Load environment variables
load_dotenv()
# Initialize the client
client = genai.Client(apikey=os.getenv("GEMINIAPI_KEY"))
# Test with a simple text generation
try:
response = client.models.generate_content(
model="gemini-2.5-flash",
contents="Say hello in exactly 3 words"
)
print("✅ Setup successful!")
print(f"Response: {response.text}")
except Exception as e:
print("❌ Setup failed:")
print(f"Error: {e}")
Ahora ejecuta tu script de prueba para verificar que todo va bien:
uv run python test_setup.py
Si todo está bien configurado, verás un mensaje de éxito y una respuesta corta del modelo. La salida debería parecerse a esto:
✅ Setup successful!
Response: Hello there everyone.
Si en su lugar aparece un error, aquí tienes las correcciones más comunes:
- “API key not found”: comprueba que tu archivo
.envcontieneGEMINI_API_KEY=your_actual_key - “Invalid API key”: copia de nuevo la clave desde Google AI Studio y asegúrate de incluirla completa
- “Quota exceeded”: has alcanzado tu límite diario. Espera un poco o revisa tu uso en Google AI Studio
Entender tus límites de uso
Tu clave de API gratuita tiene estos límites:
- 2 solicitudes por minuto para la mayoría de modelos
- 32.000 tokens por minuto (los tokens son como palabras; más que suficiente para la mayoría)
- 50 solicitudes al día (generoso para aprender y proyectos pequeños)
Estos límites son perfectos para este tutorial y proyectos pequeños. Siempre puedes consultar tu consumo volviendo a Google AI Studio y abriendo el panel de uso.
Con el entorno listo y probado, ya puedes empezar a generar imágenes. En la siguiente sección crearás tu primera imagen con Gemini 2.5 Flash Image.
Tu primera generación de imagen con Nano Banana
Con el entorno preparado, creemos tu primera imagen con Gemini 2..5 Flash Image. Empezaremos con algo sencillo y avanzaremos paso a paso.
Preparar el código básico
Primero, carguemos las librerías necesarias y configuremos la conexión con Gemini:
import os
from dotenv import load_dotenv
from google import genai
from PIL import Image
from io import BytesIO
# Load your API key from the .env file
load_dotenv()
# Create a client to talk to Gemini
client = genai.Client(apikey=os.getenv("GEMINIAPI_KEY"))
Qué hace cada import:
os: nos ayuda a trabajar con variables de entornoload_dotenv(): lee tu clave de API del archivo .envgenai: la librería principal para hablar con GeminiPIL ImageyBytesIO: ayudan a guardar los archivos de imagen que recibimos
El objeto client es cómo enviaremos solicitudes a Gemini. Piensa en él como tu conexión con los servidores de Google.
Generar tu primera imagen
Ahora creemos una imagen sencilla con un prompt claro y descriptivo:
# Write a prompt describing what you want
prompt = "A cozy coffee shop with wooden furniture and warm lighting"
# Ask Gemini to create the image
response = client.models.generate_content(
model="gemini-2.5-flash-image-preview",
contents=[prompt]
)
La función generate_content() es la forma principal de hablar con Gemini. Qué significa cada parte:
model="gemini-2.5-flash-image-preview": indica a Gemini qué modelo usar para generar la imagencontents=[prompt]: aquí va tu descripción en texto
Obtener la imagen de la respuesta
Cuando Gemini responde, la imagen llega como datos en bruto que debemos convertir a un archivo de imagen. Así puedes extraerla y guardarla:
# Look through the response to find the image
for part in response.candidates[0].content.parts:
if part.inline_data is not None:
# Convert the raw data into an image
image = Image.open(BytesIO(part.inline_data.data))
# Save it as a PNG file
image.save("myfirstimage.png")
print("Image saved!")
Este código hace varias cosas importantes:
response.candidates[0]: obtiene la primera (y normalmente única) respuesta de Geminicontent.parts: Gemini puede devolver varias piezas: texto, imágenes, etc.part.inline_data: aquí están los datos reales de la imagenBytesIO(): convierte los bytes en bruto en algo que PIL puede leerimage.save(): guarda la imagen final en tu equipo
Unamos todo y ejecutemos el código completo. Al hacerlo en secuencia, deberías ver una salida como esta:
✅ Image saved as https://cdn-images-1.medium.com/proxy/1*Hhy7vMKOurXDOPVQ6Ps0gQ.png
📏 Image size: (1024, 1024)
🎨 Image mode: RGB
Esta es la imagen que se genera con nuestro prompt de la cafetería:

Interior de una cafetería acogedora con vigas de madera, luz cálida, asientos confortables y un ambiente agradable tal y como lo describe el prompt.
Entender lo que recibes
Cada vez que generas una imagen, Gemini te da:
- Un archivo PNG (1024x1024 píxeles)
- Resultados de alta calidad con acabado profesional
- Una marca de agua invisible (no la verás, pero está ahí)
La respuesta también puede incluir texto si Gemini quiere explicar algo sobre la imagen que ha creado.
Probar distintos prompts
Ahora que ya has visto el flujo básico, probemos algunos prompts diferentes para ver cómo responde el modelo a distintas descripciones:
# Las descripciones simples de objetos funcionan muy bien
"A red bicycle in a sunny park"
# Puedes añadir detalles sobre estilo y ambiente
"A modern kitchen with clean white cabinets and natural light"
# Describe el entorno y la atmósfera
"A peaceful lake surrounded by mountains at sunset"
Veamos lo que generan estos prompts al ejecutarlos:
Bicicleta roja en un parque soleado:

Una bicicleta roja perfectamente colocada en un parque precioso con luz dorada, vegetación frondosa y un banco tranquilo. Fíjate en las sombras: como en una imagen real, se deforman al pasar del suelo al césped.
Cocina moderna con muebles blancos:

Un diseño de cocina contemporáneo y pulido con muebles blancos impecables, acabados modernos y luz natural entrando por grandes ventanales. Observa los reflejos de la ventana sobre la superficie lisa de la mesa central.
Lago en calma rodeado de montañas:

Un lago de montaña al atardecer con reflejos perfectos, rodeado de picos majestuosos y con una encantadora barca de madera en primer plano. De nuevo, detalle excepcional en los reflejos sobre el agua.
Empieza con descripciones claras y simples. Siempre puedes añadir detalles a medida que entiendas mejor cómo trabaja el modelo.
Qué pasa si algo falla
Estos ejemplos muestran el flujo típico, pero puedes encontrarte con problemas. Así se resuelven los más comunes:
- No aparece imagen: comprueba que tu prompt es claro y describe algo visual.
- Mensajes de error: asegúrate de que tu clave de API funciona y no has alcanzado tu límite diario.
- Resultados inesperados: intenta reformular el prompt con más precisión.
En la siguiente sección aprenderás a escribir mejores prompts para tener más control sobre los resultados.
Dominar el prompt engineering para Gemini 2.5 Flash Image
Ahora que puedes generar imágenes básicas, aprendamos a escribir prompts que te den más control sobre los resultados. La clave es ser específico con lo que quieres y entender cómo distintas técnicas influyen en la imagen final.
Si quieres profundizar en los fundamentos del prompt engineering en todos los modelos de IA, nuestra guía completa de prompt engineering para 2025 recoge las últimas técnicas y estrategias aplicables a IA de texto y visual.
Crear una función reutilizable
El proceso manual de la sección anterior va bien para aprender, pero repetir todo el código para cada imagen cansa. Antes de entrar en técnicas, creemos una función auxiliar que agilice el proceso:
def generateandsave_image(prompt, filename):
"""
Generate an image and save it to the images folder
Args:
prompt (str): Description of what you want to create
filename (str): Name for the saved image file
Returns:
bool: True if successful, False otherwise
"""
try:
response = client.models.generate_content(
model="gemini-2.5-flash-image-preview",
contents=[prompt]
)
# Find and save the image
for part in response.candidates[0].content.parts:
if part.inline_data is not None:
image = Image.open(BytesIO(part.inline_data.data))
image.save(f"images/{filename}")
print(f"✅ Image saved as images/{filename}")
return True
except Exception as e:
print(f"❌ Error: {e}")
return False
return False
Esta función gestiona por nosotros la generación y el guardado de la imagen. Ahora podemos centrarnos en escribir mejores prompts sin repetir código.
Así la usas:
# Simple function call
generateandsave_image("A cozy reading nook", "readingnook.png")
Mucho más limpio que escribir todo el código cada vez.
Ser específico vs. ser genérico
La mayor mejora que puedes hacer en tus prompts es añadir detalles específicos. Veamos la diferencia entre prompts genéricos y detallados.
Aquí tienes un prompt genérico:
generateandsave_image("A kitchen", "generickitchen.png")

Resultado del prompt genérico: una cocina básica que podría estar en cualquier sitio, con elementos estándar pero sin personalidad.
Ahora probemos el mismo concepto con detalles específicos:
generateandsave_image(
"Modern minimalist kitchen, white quartz countertops, stainless steel appliances, pendant lights, natural oak floors",
"specific_kitchen.png"
)

Resultado del prompt específico: una cocina diseñada con precisión con exactamente los elementos que pedimos, creando una estética moderna coherente.
La diferencia es enorme. El prompt específico te da una cocina profesional que encaja con lo descrito. El genérico es aceptable, pero mucho más impredecible.
Si también trabajas con otros modelos de generación de imágenes, nuestra guía de técnicas de Stable Diffusion cubre estrategias de prompting complementarias que pueden mejorar tus resultados en distintas plataformas de IA.
Controlar la cámara
Puedes controlar el encuadre usando términos de fotografía. Esto te da control preciso sobre la composición y la perspectiva.
Planos gran angular capturan más escena:
generateandsave_image(
"Wide angle shot of modern living room, leather sofa, glass coffee table, floor to ceiling windows",
"wideangleroom.png"
)

Una perspectiva gran angular capta la amplitud de la sala y la impresionante vista urbana, haciendo que el espacio parezca mayor y más impactante.
Planos macro se centran en pequeños detalles:
generateandsave_image(
"Macro shot of vintage pocket watch on mahogany desk, brass details, Roman numerals, soft lighting",
"macro_watch.png"
)

La fotografía macro revela los detalles del reloj, la cadena y los libros antiguos de alrededor, creando una composición íntima y detallada.
Otros términos útiles de cámara:
"Low angle shot"- contrapicado"Bird's eye view"- vista cenital"85mm portrait lens"- profundidad de campo reducida"Dutch angle"- ángulo holandés/inclinado para dramatismo
Controlar la iluminación y el ambiente
Describir la iluminación puede cambiar por completo la sensación de tus imágenes. Así puedes crear atmósferas específicas.
Luz de “golden hour” para calidez:
generateandsave_image(
"Empty park bench at golden hour, warm sunlight, long shadows, autumn leaves scattered, peaceful atmosphere",
"goldenhourbench.png"
)

La luz de la golden hour convierte un banco sencillo en una escena cálida y acogedora, perfecta para la contemplación.
Iluminación dramática para intensidad:
generateandsave_image(
"Dark stormy sky over empty lighthouse, dramatic lighting, waves crashing on rocks, moody atmosphere",
"dramatic_lighthouse.png"
)

La iluminación dramática y el temporal crean una escena potente y melancólica que evoca fuerza y soledad.
Términos útiles de iluminación:
"Soft natural light"- luz natural suave y homogénea"Harsh shadows"- sombras duras y alto contraste"Backlit"- contraluz"Studio lighting"- iluminación de estudio, limpia y profesional
Dirigir el estilo y la estética
Puedes orientar el estilo artístico incluyendo descripciones estéticas específicas en tus prompts.
Estilo minimalista:
generateandsave_image(
"Minimalist bedroom design, white walls, simple wooden bed frame, single potted plant, clean lines, natural light",
"minimalist_bedroom.png"
)

Los principios del diseño minimalista crean un espacio sereno y despejado que se siente moderno y atemporal.
Estilo vintage:
generateandsave_image(
"Vintage coffee shop interior, exposed brick walls, antique furniture, Edison bulb lighting, weathered wood tables, nostalgic atmosphere",
"vintagecoffeeshop.png"
)

Los elementos vintage se combinan para crear una cafetería nostálgica que transmite autenticidad y calidez.
Direcciones de estilo populares:
"Industrial design"- materiales en bruto, elementos a la vista"Scandinavian style"- maderas claras, líneas limpias, texturas acogedoras"Art deco"- patrones geométricos, acentos metálicos"Rustic charm"- materiales naturales, texturas desgastadas
Añadir texto a las imágenes
Gemini 2.5 Flash Image destaca al añadir texto legible directamente en las imágenes. Mantén el texto corto (menos de 25 caracteres suele ir mejor) para un resultado limpio.
generateandsave_image(
"Restaurant menu board with 'DAILY SPECIALS' text, chalk lettering on black board, wooden frame, warm lighting",
"menuboardtext.png"
)

Integración perfecta del texto con elementos decorativos y precios, demostrando cómo el modelo gestiona tipografía y maquetación de menús de forma natural.
El modelo añadió automáticamente platos y precios para hacer la escena más realista. Esto demuestra cómo Gemini entiende el contexto y crea composiciones lógicas y completas.
Combinar técnicas
Los prompts más potentes combinan varias técnicas. Así puedes superponer diferentes elementos:
# Combining camera control + lighting + style + specific details
generateandsave_image(
"Low angle shot of modern office lobby, dramatic uplighting, marble floors, geometric ceiling, professional atmosphere",
"professional_lobby.png"
)
Esta es la imagen resultante que muestra todas estas técnicas en conjunto:

Este prompt combina:
- Control de cámara: “Low angle shot”
- Iluminación: “Dramatic uplighting”
- Estilo: “Modern”, “professional atmosphere”
- Detalles específicos: “Marble floors”, “geometric ceiling”
Recuerda que siempre puedes afinar tus imágenes describiendo los cambios que quieres. Gemini brilla en mejoras iterativas, lo que nos lleva a las funciones avanzadas que hacen especial a este modelo.
Si quieres entender cómo se compara Gemini 2.5 Flash Image con otras herramientas de Google AI, nuestro tutorial de Gemini 2.0 Flash explora las capacidades más amplias del último sistema multimodal de Google.
Funciones y capacidades avanzadas de Gemini 2.5 Flash Image
Las técnicas de prompt engineering que acabas de ver son la base para operaciones más avanzadas. Ahora aplicaremos estas habilidades a las funciones más potentes de Gemini que lo diferencian de otros modelos:
Composición multiimagen
Una de las funciones más potentes es combinar varias imágenes para crear algo nuevo. Esto no es un simple “blending”: Gemini entiende los objetos y el contexto de cada imagen y puede fusionarlos con inteligencia.
En este ejemplo, asumimos que ya has generado los componentes base usando las técnicas anteriores. Así los combinas:
# Load the base images for composition
gemstone_img = Image.open("https://cdn-images-1.medium.com/proxy/1*zy36GlKisNwsmJ0PwwHODw.png")
setting_img = Image.open("https://cdn-images-1.medium.com/proxy/1*fpNU31VkSznr1NTHbUx-mA.png")
# Compose them with specific instructions
response = client.models.generate_content(
model="gemini-2.5-flash-image-preview",
contents=[
"Mount the rare tanzanite gemstone perfectly into the platinum Art Nouveau setting, creating an exquisite luxury engagement ring, professional jewelry photography with dramatic lighting",
gemstone_img,
setting_img
]
)
Imágenes base usadas para la composición:

Componente base 1: tanzanita rara con claridad excepcional y estructuras prismáticas internas.

Componente base 2: engaste Art Nouveau en platino con filigrana de gran maestría.
Resultado compuesto:

Composición final: la gema y el engaste se combinan sin fisuras en una pieza de lujo con iluminación perfecta que realza ambos elementos.
El secreto de una composición profesional es especificar bien:
- Calidad de la integración: “Mount perfectly”, “seamlessly combine”.
- Consistencia de la iluminación: “Professional jewelry photography with dramatic lighting”.
- Presentación final: “Luxury engagement ring”, “exquisite”.
Esta técnica funciona muy bien para:
- Fotografía de producto premium: combinar elementos del producto con fondos de alta calidad.
- Marketing de marcas de lujo: fusionar assets de marca con contextos sofisticados.
- Visualización arquitectónica: combinar elementos constructivos con escenarios ambientales.
Refinamiento iterativo de imágenes
A diferencia de la mayoría de modelos, que exigen empezar de cero para cada cambio, Gemini 2.5 Flash Image te permite mejorar progresivamente mediante conversación. Es perfecto para flujos de diseño profesionales donde necesitas desarrollar conceptos.
Veamos un caso de desarrollo de equipos de audio premium:
# Step 1: Start with concept design
concept_img = Image.open("https://cdn-images-1.medium.com/proxy/1*2qw1o9vPjUMHCwYnvHiYbA.png")
# Step 2: First refinement - luxury materials
response1 = client.models.generate_content(
model="gemini-2.5-flash-image-preview",
contents=[
"Refine this speaker with premium ebony wood veneer finish, hand-polished surfaces, subtle gold accent lines, maintaining same proportions",
concept_img
]
)
# Step 3: Second refinement - high-tech features
luxuryimg = Image.open("https://cdn-images-1.medium.com/proxy/1*kytHi4QRCmbor1e35Nyyw.png")
response2 = client.models.generate_content(
model="gemini-2.5-flash-image-preview",
contents=[
"Add sophisticated LED indicators, premium fabric grille, wireless connectivity features, maintaining all luxury finishes",
luxury_img
]
)
Paso 1: diseño conceptual

Concepto inicial: diseño geométrico limpio que muestra ingeniería sofisticada y bases de material premium.
Paso 2: refinamiento de materiales de lujo

Primera iteración: se añade chapa de ébano premium y acentos dorados pulidos a mano, manteniendo las proporciones originales.
Paso 3: integración de alta tecnología

Iteración final: se integran indicadores LED sofisticados y rejilla de tela premium manteniendo todos los acabados de lujo.
Buenas prácticas para el refinamiento iterativo profesional:
- Preserva los elementos estructurales: “Maintaining same proportions”
- Construye sobre cambios previos: “Maintaining all luxury finishes”
- Haz mejoras focalizadas: un aspecto por iteración
- Usa terminología profesional: “Premium”, “sophisticated”, “hand-polished”
Consistencia de personajes
Mantener personajes consistentes en distintos contextos es importante para el desarrollo de marcas de lujo y campañas de marketing sofisticadas. Gemini lo maneja entendiendo el ADN visual de los personajes y preservándolo en aplicaciones profesionales variadas.
Así puedes desarrollar una mascota de marca sofisticada:
# After creating your base character
basemascot = Image.open("https://cdn-images-1.medium.com/proxy/1*Szx9SZ9UPl7zsa5NKUDVg.png")
# Generate consistent applications
response1 = client.models.generate_content(
model="gemini-2.5-flash-image-preview",
contents=[
"Show this exact crystal mascot in an upscale jewelry boutique, maintaining identical facets and rose-gold glow",
base_mascot
]
)
response2 = client.models.generate_content(
model="gemini-2.5-flash-image-preview",
contents=[
"Show this exact crystal mascot on luxury packaging design, maintaining identical geometric form and internal glow",
base_mascot
]
)
Paso 1: establecer el personaje de marca

Base del personaje: ser cristalino sofisticado con facetas geométricas distintivas y luminiscencia interna en oro rosa.
Paso 2: aplicación en tienda física

Aplicación en boutique: el personaje mantiene exactamente sus facetas geométricas y su brillo mientras se adapta a un contexto de retail de lujo.
Paso 3: integración en packaging

Integración en packaging: mismo personaje adaptado a un estético packaging premium con identidad visual consistente.
Paso 4: presencia en interfaz digital

Aplicación digital: se mantiene la consistencia del personaje en plataformas digitales conservando propiedades geométricas idénticas.
La frase clave para la consistencia profesional es “this exact [character]” combinada con rasgos específicos: “maintaining identical facets”, “same geometric form”, “identical rose-gold glow”.
La consistencia de personajes funciona mejor cuando:
- Creas elementos visuales distintivos y memorables en tu personaje base.
- Usas descriptores técnicos concretos: “geometric facets”, “internal luminescence”.
- Referencias propiedades visuales precisas: “rose-gold glow”, “prismatic surfaces”.
- Mantienes la sofisticación acorde a marca en todas las aplicaciones.
Esta función es valiosa para:
- Desarrollo de marcas de lujo: mascotas consistentes en puntos de contacto premium.
- Campañas de marketing de alto nivel: personajes que mantienen la sofisticación en distintos medios.
- Sistemas de identidad corporativa: elementos de marca profesionales que escalan de forma consistente.
Transferencia y transformación de estilo
Más allá del contenido, puedes cambiar por completo la estética de los objetos manteniendo su estructura. Es muy útil para probar direcciones de diseño rápidamente.
Objeto base para pruebas de estilo:

Punto de partida: una silla escultórica sofisticada que transformaremos a estilos completamente distintos.
Transformación cyberpunk:

Versión cyberpunk: estética futurista de alta tecnología con acentos neón y acabados metálicos, preservando la forma básica de la silla.
Transformación victoriana barroca:

Estilo barroco: diseño clásico rico y ornamentado con materiales lujosos y detalles intrincados, manteniendo la misma estructura de base.
Patrón para transferir estilo:
# Load your base object
base_object = Image.open("https://cdn-images-1.medium.com/proxy/1*TWO2meqMNnS1-6XSO6yv7Q.png")
# Apply style transformations
response = client.models.generate_content(
model="gemini-2.5-flash-image-preview",
contents=[
"Change this chair into cyberpunk style with neon LED strips, chrome frame, futuristic aesthetic",
base_object
]
)
Aplicaciones de la transferencia de estilo:
- Diseño de producto: probar direcciones estéticas para presentaciones a clientes.
- Interiorismo: testar estilos de mobiliario según el ambiente de la sala.
- Desarrollo de marca: adaptar elementos visuales a distintos segmentos de mercado.
Estas funciones avanzadas —composición multiimagen, refinamiento iterativo, consistencia de personajes y transferencia de estilo— representan las ventajas clave que hacen que Gemini 2.5 Flash Image sea especialmente potente para flujos profesionales.
Conclusión
Gemini 2.5 Flash Image propone un enfoque distinto de la generación de imágenes: puedes editar conversando en lugar de empezar de cero cada vez que quieras un cambio. La consistencia de personajes mantiene elementos visuales idénticos en diferentes escenas, y la composición multiimagen te permite combinar elementos de forma natural, no forzada.
La tarificación basada en tokens te da costes predecibles para planificar proyectos. Cuando quieras ir más allá, la documentación oficial recoge funciones adicionales y se mantiene al día con nuevas versiones. Las técnicas de este tutorial deberían darte una base sólida para incorporar la generación conversacional de imágenes a tu flujo de trabajo.
Si quieres ampliar tu caja de herramientas de IA más allá de Gemini, nuestra guía práctica de edición de imágenes con Gemini explora más capacidades de edición, mientras que nuestro tutorial de DALL-E 3 cubre el enfoque alternativo de OpenAI para la generación de imágenes con IA.
Gemini 2.5 Flash Image: preguntas frecuentes
¿Cómo se compara Gemini 2.5 Flash Image con otros generadores de imágenes con IA?
Gemini 2.5 Flash Image destaca por su edición conversacional, la composición multiimagen y la consistencia de personajes. A diferencia de otros modelos que obligan a empezar de cero para hacer cambios, permite mejoras iterativas mediante instrucciones en lenguaje natural.
¿Cuáles son los costes de usar Gemini 2.5 Flash Image?
Cada generación de imagen usa aproximadamente 1.290 tokens, con un coste cercano a 0,039 $ por imagen. La tarificación es por tokens a 30 $ por millón, y tanto la creación nueva como la edición consumen lo mismo. Esto facilita prever costes al planificar proyectos.
¿Puedo usar Gemini 2.5 Flash Image en proyectos comerciales?
Sí. Puedes usar Gemini 2.5 Flash Image en proyectos comerciales, incluyendo fotografía de producto, marketing de marca y flujos de diseño profesionales. El modelo genera resultados de alta calidad aptos para uso empresarial.
¿Qué paquetes de Python necesito para empezar con Gemini 2.5 Flash Image?
Necesitas tres paquetes principales:
- google-genai (cliente oficial de Gemini)
- python-dotenv (para gestionar la clave de API de forma segura)
- pillow (para procesado de imágenes).
Instálalos con uv: uv add google-genai python-dotenv pillow.
¿Cómo mantengo personajes consistentes en varias imágenes?
Usa la frase "this exact [character]" junto con descripciones específicas como "maintaining identical facets" o "same geometric form". Gemini entiende el ADN visual y mantiene la consistencia del personaje en diferentes contextos y escenas.
Soy creador de contenidos sobre ciencia de datos con más de 2 años de experiencia y uno de los mayores seguimientos en Medium. Me gusta escribir artículos detallados sobre IA y ML con un toque sarcástico, porque hay que darle algo de vidilla al tema. He publicado más de 130 artículos y un curso en DataCamp, y tengo otro en marcha. Mis contenidos han sido vistos por más de 5 millones de personas; 20.000 de ellas se convirtieron en seguidores tanto en Medium como en LinkedIn.




