Last chance! 50% off DataCamp Premium
Sale ends in
Quando il team di sviluppo di Google ha battezzato internamente il loro modello di generazione immagini "Nano Banana", il nome è rimasto. La versione pro è stata lanciata il 20 novembre 2025 e risolve problemi che avevano frustrato chi lavorava con i generatori di immagini AI precedenti.
Questo tutorial ti mostra come funziona Nano Banana Pro, ti guida all'uso dell'API e ti aiuta a decidere quando usarlo al posto della versione non pro.
Nano Banana Pro (gemini-3-pro-image-preview) si basa su Gemini 2.5 Flash Image (il Nano Banana originale dalla mia guida precedente) con miglioramenti significativi.

Il modello fa quattro cose in modo eccezionale con cui le versioni precedenti faticavano:

Il modello supporta risoluzioni 1K, 2K e 4K con rapporti d'aspetto tra cui 1:1, 16:9, 9:16 e 21:9. Ogni immagine include filigrana invisibile SynthID. Puoi provarlo gratis tramite l'app Gemini, mentre per l'accesso via API serve la configurazione della fatturazione.
Prima di provare tutto questo, devi ottenere l'accesso al modello. Vediamo le opzioni.
Puoi provare Nano Banana Pro gratuitamente tramite l'app Gemini su gemini.google.com. Ti basta accedere con il tuo account Google e iniziare a generare immagini. L'accesso gratuito ha limiti d'uso (Google non ha pubblicato numeri esatti), quindi se prevedi di generare molte immagini o creare applicazioni, ti servirà l'accesso API tramite Google AI Studio o Vertex AI. Questo richiede la configurazione della fatturazione, ma ti offre costi prevedibili e limiti più alti.
Vai su Google AI Studio e accedi. Dovrai creare o collegare un progetto Google Cloud, quindi abilitare la fatturazione (serve una carta di credito). Fatto questo, genera una chiave API dalla sezione API keys.
Conserva la tua chiave API in modo sicuro. Crea un file .env nella directory del progetto e aggiungi:
GEMINI_API_KEY=your_key_here
Non fare mai commit di questo file nel controllo versione. Aggiungi .env al tuo file .gitignore.
Il modello addebita per immagine generata:
Per riferimento, 10 $ ti danno circa 75 immagini 1K di qualità standard o 42 immagini 4K. Generazione ed editing hanno lo stesso costo.
I limiti di velocità variano in base alla tua fascia di account e regione (controlla la documentazione ufficiale dei prezzi per i limiti attuali). Gli utenti enterprise possono accedere al modello tramite Vertex AI con funzionalità aggiuntive di sicurezza e conformità.
Con l'accesso configurato, generiamo la tua prima immagine e vediamo l'editing conversazionale in azione.
È ora di generare immagini e vedere cosa rende speciale Nano Banana Pro. Genereremo una scena cosmica d'impatto, la trasformeremo in modo conversazionale, quindi la fonderemo con più immagini di riferimento per creare una composizione finale.
Per prima cosa, installa i pacchetti richiesti:
pip install google-genai python-dotenv pillow
Ti servirà google-genai per lavorare con i modelli Gemini, python-dotenv per caricare la chiave API dal file .env e pillow per gestire le immagini.
I buoni prompt per Nano Banana Pro combinano dettagli specifici con termini di fotografia o design. Invece di descrizioni vaghe, includi elementi visivi concreti e riferimenti di stile.
In genere, i prompt efficaci includono:
Ecco il codice completo per generare un'immagine:
import os
from google import genai
from google.genai import types
from dotenv import load_dotenv
# Load API key
load_dotenv()
client = genai.Client(api_key=os.getenv("GOOGLE_API_KEY"))
# Generate image
response = client.models.generate_content(
model="gemini-3-pro-image-preview",
contents="Vast cosmic nebula in deep space. Swirling purple and blue gas clouds with bright star clusters. Ethereal glow. Epic space photography. 16:9 cinematic composition. No planets visible.",
config=types.GenerateContentConfig(
response_modalities=["TEXT", "IMAGE"],
image_config=types.ImageConfig(
aspect_ratio="16:9",
image_size="1K"
),
)
)
# Save the image
for part in response.parts:
if image := part.as_image():
image.save("cosmic_base.png")
print("Image saved!")
Questo codice segue il flusso di lavoro principale di Nano Banana Pro. Il metodo generate_content() gestisce la generazione dell'immagine. Il parametro response_modalities indica al modello di restituire sia testo che immagini. All'interno di image_config controlli l'output: aspect_ratio imposta le dimensioni dell'immagine (16:9 per widescreen), mentre image_size determina la risoluzione (1K, 2K o 4K). La risposta arriva come parti, che iteri per estrarre e salvare l'immagine generata.
Questo genera una nebulosa cosmica d'impatto:

Ora vediamo come l'editing conversazionale trasforma questa scena.
Invece di rigenerare da zero, puoi modificare le immagini tramite conversazione. Trasformiamo la palette della nebulosa preservandone la struttura:
# Load the base image
from PIL import Image
base_image = Image.open("cosmic_base.png")
# Create a chat session for editing
chat = client.chats.create(
model="gemini-3-pro-image-preview",
config=types.GenerateContentConfig(
response_modalities=["TEXT", "IMAGE"],
image_config=types.ImageConfig(
aspect_ratio="16:9",
image_size="1K"
),
)
)
# Edit: Transform colors
response = chat.send_message([
base_image,
"Transform this nebula to warm orange and red tones, like a different type of stellar nursery. Keep the same swirling structure and composition."
])
# Save edited image
for part in response.parts:
if image := part.as_image():
image.save("cosmic_orange.png")
Stessa struttura della nebulosa, atmosfera completamente diversa:

Nano Banana Pro può fondere fino a 14 immagini di riferimento mantenendo la coerenza. Combiniamo la nostra nebulosa arancione con due elementi aggiuntivi: una cometa drammatica e un antico monolite alieno.
Per prima cosa, genera le due immagini di riferimento:
# Generate comet reference
comet_response = client.models.generate_content(
model="gemini-3-pro-image-preview",
contents="Massive comet with bright glowing nucleus and long ion tail streaming behind. Detailed surface texture on comet head. Ethereal blue-white tail against black space. Dramatic cosmic photography.",
config=types.GenerateContentConfig(
response_modalities=["TEXT", "IMAGE"],
image_config=types.ImageConfig(aspect_ratio="16:9", image_size="1K"),
)
)
# Save comet
for part in comet_response.parts:
if image := part.as_image():
image.save("comet.png")
Ecco l'elemento cometa:

# Generate ancient alien monolith
monolith_response = client.models.generate_content(
model="gemini-3-pro-image-preview",
contents="Massive ancient alien monolith floating in space. Towering black rectangular obelisk with subtle geometric patterns. Mysterious glowing symbols etched on surface. 2001 Space Odyssey style. Epic scale.",
config=types.GenerateContentConfig(
response_modalities=["TEXT", "IMAGE"],
image_config=types.ImageConfig(aspect_ratio="16:9", image_size="1K"),
)
)
# Save monolith
for part in monolith_response.parts:
if image := part.as_image():
image.save("monolith.png")
E il monolite alieno antico:

Ora fonde tutti e tre gli elementi in un'unica composizione. Il parametro contents accetta un elenco: prima il tuo prompt testuale, seguito da tutte le immagini che vuoi fondere.
# Load all three images
nebula = Image.open("cosmic_orange.png")
comet = Image.open("comet.png")
monolith = Image.open("monolith.png")
# Blend them into one composition
blend_response = client.models.generate_content(
model="gemini-3-pro-image-preview",
contents=[
"Combine these images into one epic space scene. Place the ancient alien monolith in the right side, towering and mysterious. Show the bright comet with its glowing tail streaking diagonally across the left side. Keep the orange nebula as the dramatic backdrop. Cinematic space composition.",
nebula,
comet,
monolith
],
config=types.GenerateContentConfig(
response_modalities=["TEXT", "IMAGE"],
image_config=types.ImageConfig(aspect_ratio="16:9", image_size="1K"),
)
)
# Save final composition
for part in blend_response.parts:
if image := part.as_image():
image.save("cosmic_final.png")
La composizione finale combina senza soluzione di continuità tutti e tre gli elementi:

Ora che hai imparato a generare immagini con il nuovo modello e a sfruttarne alcune funzioni, vediamo le sue quattro differenze rispetto ad altri modelli.
Hai visto la generazione di base e l'editing conversazionale. Ora esaminiamo in dettaglio ogni capacità e come funziona nella pratica.
Useremo una funzione di supporto per mantenere puliti gli esempi di codice:
def generate_image(prompt, filename, aspect_ratio="16:9", size="1K", use_google_search=False):
config = types.GenerateContentConfig(
response_modalities=["TEXT", "IMAGE"],
image_config=types.ImageConfig(
aspect_ratio=aspect_ratio,
image_size=size
),
)
# Add Google Search grounding if requested
if use_google_search:
config.tools = [{"google_search": {}}]
response = client.models.generate_content(
model="gemini-3-pro-image-preview",
contents=prompt,
config=config
)
for part in response.parts:
if image := part.as_image():
image.save(f"{filename}.png")
return image
Questo riduce la ripetizione negli esempi seguenti e mostra un pattern riutilizzabile che puoi adattare ai tuoi progetti.
Storicamente, i generatori di immagini AI rovinavano il testo, rendendoli inutili per tutto ciò che riguarda tipografia, branding o design di interfacce. Nano Banana Pro risolve il problema.
Ecco un poster cinematografico con più elementi testuali:
# Generate movie poster with cast and credits
image = generate_image(
prompt="""Sci-fi movie poster. Large title "STELLAR HORIZON" at top. Actor names "SARAH CHEN" "MARCUS RODRIGUEZ" "AISHA WILLIAMS". Production credits "Directed by James Park" "Produced by Luna Studios" at bottom. Deep space background with nebula. Professional film poster typography. Crisp readable text.""",
filename="movie_poster"
)

La stessa capacità funziona per interfacce web con più elementi testuali:
# SaaS website hero section
image = generate_image(
prompt="""Modern SaaS website hero section. Large headline "Automate Your Workflow in Minutes" with subheadline "Connect your tools and boost productivity by 10x". Two buttons "Start Free Trial" and "Watch Demo". Trust badges showing "500K+ Users" "99.9% Uptime" "SOC 2 Certified". Clean typography. Gradient purple to blue background. Professional web design layout.""",
filename="saas_hero"
)

Gestisce persino testo multilingue nella stessa immagine:
# Conference poster with English and Japanese
image = generate_image(
prompt="""Tech conference poster. Top section English text: "GLOBAL AI SUMMIT 2025" "March 15-17, Tokyo". Bottom section Japanese text: "グローバルAIサミット2025" "3月15日-17日、東京". Modern geometric design. Vibrant gradient background blue to purple. Professional bilingual typography.""",
filename="multilingual_poster"
)

I team marketing possono creare visual di campagna con messaggi chiari, i designer possono esplorare la tipografia senza lavoro manuale di impaginazione, i brand possono generare wordmark coerenti sui materiali e i designer UI/UX possono realizzare mockup con testo leggibile.
La chiarezza del testo è solo un pezzo del puzzle. Vediamo come controlli luci e angoli di ripresa.
Nano Banana Pro ti consente di regolare luci, angoli di ripresa, profondità di campo e color grading in modo conversazionale mantenendo la composizione.
Parti con uno scatto prodotto frontale:
# Generate base product image
base_image = generate_image(
prompt="""Premium wireless earbuds with charging case. Front-facing straight-on view. Sleek matte black finish. Modern minimalist design. Clean white studio background. Professional product photography. Sharp focus throughout. Contemporary tech aesthetic.""",
filename="earbuds_front"
)

Ora cambia l'angolo di ripresa in vista dall'alto senza rigenerare:
# Create chat for editing
chat = client.chats.create(
model="gemini-3-pro-image-preview",
config=types.GenerateContentConfig(
response_modalities=["TEXT", "IMAGE"],
image_config=types.ImageConfig(aspect_ratio="16:9", image_size="1K"),
)
)
# Edit camera angle conversationally
edit_response = chat.send_message([
base_image,
"""Show these exact same wireless earbuds from bird's eye view, looking straight down from above. Keep the same earbuds and charging case. Overhead flat lay composition. Professional product photography."""
])
# Save edited image
for part in edit_response.parts:
if image := part.as_image():
image.save("earbuds_overhead.png")

I fotografi di prodotto possono testare angoli senza nuovi scatti, gli architetti possono mostrare edifici da prospettive diverse, gli interior designer possono visualizzare spazi con vari punti di vista e i team marketing possono creare variazioni di composizione per A/B test.
Le mascotte di brand devono apparire identiche in ogni touchpoint. Le campagne richiedono lo stesso personaggio in scenari diversi. I modelli precedenti faticavano (anche se già il Nano Banana base era molto valido). Nano Banana Pro migliora ulteriormente l'identità visiva tra le scene.
Genera un elemento di logo del brand:
# Create brand logo
brand_logo = generate_image(
prompt="""Abstract geometric ribbon logo. Flowing infinity loop shape with metallic gradient silver to deep purple. Smooth curved surfaces. Elegant minimalist design. Clean white background. Premium brand identity element. Modern corporate aesthetic. No face. No eyes.""",
filename="ribbon_logo"
)

Usa lo stesso nastro in un'interfaccia app mobile:
# Create chat for editing
chat = client.chats.create(
model="gemini-3-pro-image-preview",
config=types.GenerateContentConfig(
response_modalities=["TEXT", "IMAGE"],
image_config=types.ImageConfig(aspect_ratio="16:9", image_size="1K"),
)
)
# Show logo in app interface
app_response = chat.send_message([
brand_logo,
"""Show this exact ribbon logo in a complete mobile app home screen. Top status bar with time and battery. Logo in header next to app name. Content cards below showing features. Bottom tab navigation with icons and labels. Modern mobile app UI. Gradient purple background. Professional startup app design. Full mobile interface layout."""
])
# Save
for part in app_response.parts:
if image := part.as_image():
image.save("ribbon_app.png")

Ora mostra lo stesso nastro sul merchandising fisico:
# Show logo on merchandise
merch_response = chat.send_message([
brand_logo,
"""Show this exact ribbon logo on brand merchandise collection. Flat lay showing: white tote bag with logo, coffee mug with logo, t-shirt with logo printed on chest, product packaging box with logo. All items arranged together. Premium brand identity mockup. Minimalist aesthetic. Professional product photography. Same ribbon on each item."""
])
# Save
for part in merch_response.parts:
if image := part.as_image():
image.save("ribbon_merchandise.png")

Arriviamo ora alla funzione che cambia le carte in tavola di Nano Banana Pro: il grounding fattuale tramite Google Search.
Quando abiliti il grounding con Search, il modello accede a informazioni aggiornate per un'accuratezza fattuale in materiali educativi, documentazione tecnica e contenuti data-driven in cui la correttezza è critica.
Abilita il grounding con Google Search per contenuti educativi:
# Generate solar energy infographic with Search grounding
image = generate_image(
prompt="""Educational infographic explaining solar panel energy conversion. Show photovoltaic cells converting to DC power, then inverter converting to AC power for the grid. Clear labels and arrows.""",
filename="solar_infographic",
use_google_search=True # Enable Search for factual accuracy
)

Lo stesso grounding funziona per i diagrammi tecnici:
# Generate neural network diagram with Search grounding
image = generate_image(
prompt="""Neural network architecture diagram. Left: 4 input nodes labeled "Input 1" "Input 2" "Input 3" "Input 4". Middle: two hidden layers each with 5 nodes labeled "Hidden Layer 1" and "Hidden Layer 2". Right: 3 output nodes labeled "Output 1" "Output 2" "Output 3". Connection lines between all layers. Clean technical illustration. Educational ML diagram. Professional data science aesthetic.""",
filename="ml_architecture",
use_google_search=True # Enable Search for accuracy
)

I creatori di contenuti educativi possono produrre materiali accurati, i technical writer possono visualizzare correttamente sistemi complessi, i team data possono rappresentare statistiche reali e i divulgatori scientifici possono creare diagrammi accurati senza controlli estesi dei fatti.
Queste quattro funzionalità rendono Nano Banana Pro versatile per i flussi di lavoro professionali. Ora confrontiamolo direttamente con il Nano Banana originale per vedere i miglioramenti.
In questa sezione confronteremo il modello di immagini Gemini 2.5 Flash base con Gemini 3 Pro image, ovvero Nano Banana base contro la versione pro.
Mentre gli esempi precedenti si sono concentrati principalmente sulla generazione di immagini per casi d'uso professionali o educativi, qui le immagini saranno basate su prompt del tipo "Andiamo fuori di testa!". Dopotutto, la maggior parte delle immagini generate dai modelli serve spesso a soddisfare la creatività sconfinata della mente umana. Prompt di questo tipo mettono alla prova la capacità dei modelli di trasformare idee folli in arte.
Partiamo da questo:
Geometric shapes staging a protest. Cubes holding signs reading "FREE THE SPHERES!" Triangles with banners "DOWN WITH FLATLAND!" A giant dodecahedron wearing a top hat giving a speech. Protest happening inside an M.C. Escher staircase. Floating equations as graffiti: "π > 3.14159". Pure mathematical chaos.

Questo prompt mette alla prova due aspetti: comprensione concettuale astratta e resa del testo. Il modello base interpreta la stravaganza ma fatica a rendere antropomorfe le forme geometriche (disegnando facce su di esse). La versione pro rende testo nitido sui cartelli mantenendo il caos matematico surreale. Inoltre disegna la scala di M.C. Escher in modo più accurato.
Prompt 2
Bold emblem/logo direction: a graphical, simplified, highly geometric icon of an ice hockey player in a powerful action pose with the hockey stick touching the ice, constructed entirely from sharp, angular, polygonal shards. Strict four-color palette (red, blue, yellow, white) on black, flat colors only (no gradients) for perfect reproduction as a logo or patch.

Nano Banana Pro è il vincitore netto. Il logo è nitido, professionale (nessun testo superfluo) e realmente composto da forme geometriche come richiesto. La versione base manca della pulizia geometrica e aggiunge elementi indesiderati.
Prompt 3:
Mandelbrot's set drawn with extreme mathematical accuracy for a 1:1 wallpaper, fractal art

Il modello pro rende il frattale con un'accuratezza impressionante. Non è ancora perfetto: l'accuratezza matematica è stata sacrificata ai bordi per la qualità artistica, ma il modello pro ha fatto molto meglio del base, che ha disegnato qualcosa di completamente diverso. Tuttavia, il modello pro ha aggiunto elementi non richiesti: conteggi di iterazione, assi immaginari e reali e, per qualche motivo, una finestra in stile Windows XP.
La Pro in genere supera la base, ma il divario varia per tipo di prompt. Resa del testo e precisione geometrica mostrano i maggiori miglioramenti (vedi gli esempi del logo di hockey e della scala geometrica). Anche contenuti tecnici come l'insieme di Mandelbrot beneficiano dell'accuratezza della Pro.
La Pro costa 0,134 $ per immagine 1K/2K contro circa la metà per la base. Per centinaia di iterazioni su progetti personali, la base va bene. Per deliverable professionali o qualsiasi cosa richieda testo accurato, la Pro giustifica il costo. La funzione di editing conversazionale rende la Pro più conveniente quando servono risultati precisi, perché affini invece di rigenerare.
La Pro supporta anche Google Search per il grounding fattuale, rendendola migliore per qualsiasi immagine che coinvolga conoscenze del mondo reale.
Hai imparato a generare e modificare immagini con Nano Banana Pro, esplorato le sue quattro funzionalità distintive e visto come si confronta con il modello base. L'API ti offre editing conversazionale, fusione multi-immagine, resa accurata del testo e grounding con Google Search per contenuti fattuali.
Inizia con il livello gratuito tramite l'app Gemini per testare i prompt e capire cosa funziona per i tuoi progetti. Spesso l'editing conversazionale fa risparmiare, perché affini immagini esistenti invece di rigenerare da zero.
Per dettagli tecnici approfonditi e gli ultimi aggiornamenti, consulta la documentazione ufficiale mentre Google continua ad ampliare le capacità del modello.
Sono un creator di contenuti sulla data science con oltre 2 anni di esperienza e uno dei più seguiti su Medium. Mi piace scrivere articoli dettagliati su AI e ML con un pizzico di sarcasmo, perché bisogna pur fare qualcosa per renderli un po’ meno noiosi. Ho pubblicato oltre 130 articoli e un corso su DataCamp, con un altro in arrivo. I miei contenuti sono stati visti da oltre 5 milioni di persone, 20.000 delle quali sono diventate follower sia su Medium che su LinkedIn.
Impara con DataCamp
Corso
Corso
Corso

blog
Abid Ali Awan
15 min

blog
Abid Ali Awan
10 min
blog
Tim Lu
12 min