Nano Banana est le nom des fonctionnalités de génération d'images natives de Gemini. Il fait actuellement référence à deux modèles distincts disponibles dans l'API Gemini :
- Nano Banana : modèle Gemini 2.5 Flash Image (
gemini-2.5-flash-image). Ce modèle est conçu pour la rapidité et l'efficacité, et optimisé pour les tâches à fort volume et à faible latence. - Nano Banana Pro : modèle Gemini 3 Pro Image Preview (
gemini-3-pro-image-preview). Ce modèle est conçu pour la production d'assets professionnels. Il utilise un raisonnement avancé ("Thinking") pour suivre des instructions complexes et générer du texte haute fidélité.
Premiers pas
Vous pouvez générer des images à l'aide de la méthode generate_content en utilisant le nom du modèle qui correspond à la version que vous souhaitez utiliser.
Python
from google import genai
from PIL import Image
client = genai.Client()
response = client.models.generate_content(
model="gemini-2.5-flash-image",
contents="Create a picture of a futuristic banana with neon lights in a cyberpunk city.",
)
for part in response.parts:
if part.inline_data:
image = part.as_image()
image.show()
JavaScript
import { GoogleGenAI } from "@google/genai";
import * as fs from "node:fs";
const ai = new GoogleGenAI({});
const response = await ai.models.generateContent({
model: "gemini-2.5-flash-image",
contents: "Create a picture of a futuristic banana with neon lights in a cyberpunk city.",
});
for (const part of response.candidates[0].content.parts) {
if (part.inlineData) {
const buffer = Buffer.from(part.inlineData.data, "base64");
fs.writeFileSync("banana.png", buffer);
}
}
Go
package main
import (
"context"
"os"
"google.golang.org/genai"
)
func main() {
ctx := context.Background()
client, err := genai.NewClient(ctx, nil)
if err != nil {
// handle error
}
resp, err := client.Models.GenerateContent(
ctx,
"gemini-2.5-flash-image",
genai.Text("Create a picture of a futuristic banana with neon lights in a cyberpunk city."),
)
for _, part := range resp.Candidates[0].Content.Parts {
if part.InlineData != nil {
_ = os.WriteFile("banana.png", part.InlineData.Data, 0644)
}
}
}
Java
import com.google.genai.Client;
import com.google.genai.types.GenerateContentResponse;
import com.google.genai.types.Part;
import java.nio.file.Files;
import java.nio.file.Paths;
public class ImageGen {
public static void main(String[] args) throws Exception {
try (Client client = new Client()) {
GenerateContentResponse response = client.models.generateContent(
"gemini-2.5-flash-image",
"Create a picture of a futuristic banana with neon lights in a cyberpunk city.",
null);
for (Part part : response.parts()) {
if (part.inlineData().isPresent()) {
Files.write(Paths.get("banana.png"), part.inlineData().get().data().get());
}
}
}
}
}
REST
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash-image:generateContent" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-X POST \
-d '{
"contents": [{
"parts": [
{"text": "Create a picture of a futuristic banana with neon lights in a cyberpunk city."}
]
}]
}'
En savoir plus
Pour obtenir une documentation complète sur la génération et la retouche d'images, les requêtes avancées et les comparaisons de modèles, veuillez consulter le guide complet :
- Génération d'images avec Gemini : guide complet sur l'utilisation des modèles Nano Banana et Nano Banana Pro.
- Informations sur le modèle : détails sur les versions, les fonctionnalités et la tarification du modèle.