
Picture by Creator | Gemini (nano-banana self portrait)
# Introduction
Picture technology with generative AI has change into a broadly used instrument for each people and companies, permitting them to immediately create their meant visuals with no need any design experience. Basically, these instruments can speed up duties that may in any other case take a big period of time, finishing them in mere seconds.
With the development of know-how and competitors, many fashionable, superior picture technology merchandise have been launched, akin to Steady Diffusion, Midjourney, DALL-E, Imagen, and lots of extra. Every presents distinctive benefits to its customers. Nonetheless, Google just lately made a big influence on the picture technology panorama with the discharge of Gemini 2.5 Flash Picture (or nano-banana).
Nano-banana is Google’s superior picture technology and enhancing mannequin, that includes capabilities like sensible picture creation, a number of picture mixing, character consistency, focused prompt-based transformations, and public accessibility. The mannequin presents far higher management than earlier fashions from Google or its opponents.
This text will discover nano-banana’s capacity to generate and edit photos. We are going to exhibit these options utilizing the Google AI Studio platform and the Gemini API inside a Python atmosphere.
Let’s get into it.
# Testing the Nano-Banana Mannequin
To comply with this tutorial, you’ll need to register for a Google account and sign up to Google AI Studio. Additionally, you will want to accumulate an API key to make use of the Gemini API, which requires a paid plan as there isn’t a free tier accessible.
When you favor to make use of the API with Python, be sure to put in the Google Generative AI library with the next command:
As soon as your account is ready up, let’s discover learn how to use the nano-banana mannequin.
First, navigate to Google AI Studio and choose the Gemini-2.5-flash-image-preview mannequin, which is the nano-banana mannequin we might be utilizing.


With the mannequin chosen, you can begin a brand new chat to generate a picture from a immediate. As Google suggests, a basic precept for getting the perfect outcomes is to describe the scene, not simply checklist key phrases. This narrative method, describing the picture you envision, usually produces superior outcomes.
Within the AI Studio chat interface, you may see a platform just like the one under the place you’ll be able to enter your immediate.


We are going to use the next immediate to generate a photorealistic picture for our instance.
A photorealistic close-up portrait of an Indonesian batik artisan, palms stained with wax, tracing a flowing motif on indigo fabric with a canting pen. She works at a wood desk in a breezy veranda; folded textiles and dye vats blur behind her. Late-morning window mild rakes throughout the material, revealing high quality wax traces and the grain of the teak. Captured on an 85 mm at f/2 for light separation and creamy bokeh. The general temper is concentrated, tactile, and proud.
The generated picture is proven under:


As you’ll be able to see, the picture generated is sensible and faithfully adheres to the given immediate. When you favor the Python implementation, you should utilize the next code to create the picture:
from google import genai
from google.genai import sorts
from PIL import Picture
from io import BytesIO
from IPython.show import show
# Change 'YOUR-API-KEY' together with your precise API key
api_key = 'YOUR-API-KEY'
shopper = genai.Shopper(api_key=api_key)
immediate = "A photorealistic close-up portrait of an Indonesian batik artisan, palms stained with wax, tracing a flowing motif on indigo fabric with a canting pen. She works at a wood desk in a breezy veranda; folded textiles and dye vats blur behind her. Late-morning window mild rakes throughout the material, revealing high quality wax traces and the grain of the teak. Captured on an 85 mm at f/2 for light separation and creamy bokeh. The general temper is concentrated, tactile, and proud."
response = shopper.fashions.generate_content(
mannequin="gemini-2.5-flash-image-preview",
contents=immediate,
)
image_parts = [
part.inline_data.data
for part in response.candidates[0].content material.elements
if half.inline_data
]
if image_parts:
picture = Picture.open(BytesIO(image_parts[0]))
# picture.save('your_image.png')
show(picture)
When you present your API key and the specified immediate, the Python code above will generate the picture.
We now have seen that the nano-banana mannequin can generate a photorealistic picture, however its strengths lengthen additional. As talked about beforehand, nano-banana is especially highly effective for picture enhancing, which we’ll discover subsequent.
Let’s strive prompt-based picture enhancing with the picture we simply generated. We are going to use the next immediate to barely alter the artisan’s look:
Utilizing the supplied picture, place a pair of skinny studying glasses gently on the artisan’s nostril whereas she attracts the wax traces. Guarantee reflections look sensible and the glasses sit naturally on her face with out obscuring her eyes.
The ensuing picture is proven under:


The picture above is equivalent to the primary one, however with glasses added to the artisan’s face. This demonstrates how nano-banana can edit a picture primarily based on a descriptive immediate whereas sustaining general consistency.
To do that with Python, you’ll be able to present your base picture and a brand new immediate utilizing the next code:
from PIL import Picture
# This code assumes 'shopper' has been configured from the earlier step
base_image = Picture.open('/path/to/your/picture.png')
edit_prompt = "Utilizing the supplied picture, place a pair of skinny studying glasses gently on the artisan's nostril..."
response = shopper.fashions.generate_content(
mannequin="gemini-2.5-flash-image-preview",
contents=[edit_prompt, base_image])
Subsequent, let’s check character consistency by producing a brand new scene the place the artisan is wanting immediately on the digital camera and smiling:
Generate a brand new and photorealistic picture utilizing the supplied picture as a reference for id: the identical batik artisan now wanting up on the digital camera with a relaxed smile, seated on the similar wood desk. Medium close-up, 85 mm look with comfortable veranda mild, background jars subtly blurred.
The picture result’s proven under.


We have efficiently modified the scene whereas sustaining character consistency. To check a extra drastic change, let’s use the next immediate to see how nano-banana performs.
Create a product-style picture utilizing the supplied picture as id reference: the identical artisan presenting a completed indigo batik fabric, arms prolonged towards the digital camera. Smooth, even window mild, 50 mm look, impartial background muddle.
The result’s proven under.


The ensuing picture reveals a totally totally different scene however maintains the identical character. This highlights the mannequin’s capacity to realistically produce diverse content material from a single reference picture.
Subsequent, let’s strive picture model switch. We are going to use the next immediate to vary the photorealistic picture right into a watercolor portray.
Utilizing the supplied picture as id reference, recreate the scene as a fragile watercolor on cold-press paper: free indigo washes for the material, comfortable bleeding edges on the floral motif, pale umbers for the desk and background. Preserve her pose holding the material, light smile, and spherical glasses; let the veranda recede into mild granulation and visual paper texture.
The result’s proven under.


The picture demonstrates that the model has been remodeled into watercolor whereas preserving the topic and composition of the unique.
Lastly, we’ll strive picture fusion, the place we add an object from one picture into one other. For this instance, I’ve generated a picture of a girl’s hat utilizing nano-banana:


Utilizing the picture of the hat, we’ll now place it on the artisan’s head with the next immediate:
Transfer the identical girl and pose open air in open shade and place the straw hat from the product picture on her head. Align the crown and brim to the top realistically; bow over her proper ear (digital camera left), ribbon tails drifting softly with gravity. Use comfortable sky mild as key with a delicate rim from the intense background. Keep true straw and lace texture, pure pores and skin tone, and a plausible shadow from the brim over the brow and prime of the glasses. Preserve the batik fabric and her palms unchanged. Preserve the watercolor model unchanged.
This course of merges the hat picture with the bottom picture to generate a brand new picture, with minimal modifications to the pose and general model. In Python, use the next code:
from PIL import Picture
# This code assumes 'shopper' has been configured from step one
base_image = Picture.open('/path/to/your/picture.png')
hat_image = Picture.open('/path/to/your/hat.png')
fusion_prompt = "Transfer the identical girl and pose open air in open shade and place the straw hat..."
response = shopper.fashions.generate_content(
mannequin="gemini-2.5-flash-image-preview",
contents=[fusion_prompt, base_image, hat_image])
For greatest outcomes, use a most of three enter photos. Utilizing extra could scale back output high quality.
That covers the fundamentals of utilizing the nano-banana mannequin. For my part, this mannequin excels when you’ve got current photos that you just wish to remodel or edit. It is particularly helpful for sustaining consistency throughout a sequence of generated photos.
Strive it for your self and do not be afraid to iterate, as you typically will not get the proper picture on the primary strive.
# Wrapping Up
Gemini 2.5 Flash Picture, or nano-banana, is the newest picture technology and enhancing mannequin from Google. It boasts highly effective capabilities in comparison with earlier picture technology fashions. On this article, we explored learn how to use nano-banana to generate and edit photos, highlighting its options for sustaining consistency and making use of stylistic modifications.
I hope this has been useful!
Cornellius Yudha Wijaya is a knowledge science assistant supervisor and information author. Whereas working full-time at Allianz Indonesia, he likes to share Python and information suggestions through social media and writing media. Cornellius writes on a wide range of AI and machine studying matters.
