Guide Nano Banana 2 de Google : configuration et premier workflow
MidassAI Team · 11 juillet 2026 · 6 min read

Prérequis
Assurez-vous de disposer d’un projet Google Cloud avec la facturation activée et de l’API Vertex AI (et non seulement l’API AI Platform) activée. Installez la CLI nanobanana-cli v2.1+ via la commande pip install nanobanana-cli==2.1.0.
Étape 1 : Authentification et configuration
Exécutez nb-auth login et suivez le flux OAuth. Ensuite, configurez votre région par défaut et votre niveau de modèle :
nb-config set region us-central1
cb-config set tier nano-proÉtape 2 : Définir votre workflow
Créez un fichier workflow.yaml contenant une tâche minimale déclenchée par HTTP :
name: text-summarize-v2
trigger: http
steps:
- model: banana-summarizer-v3
input: "{{ request.body.text }}"
output: summaryÉtape 3 : Déploiement et test
Déployez avec nb-deploy --file workflow.yaml, puis invoquez-le :
curl -X POST https://us-central1-myproject.cloudfunctions.net/text-summarize-v2 \
-H "Content-Type: application/json" \
-d '{"text":"Nano Banana 2 offre une latence inférieure à 100 ms et une précision de 99,98 % sur les tâches de texte court."}'Étape 4 : Surveillance et itération
Utilisez nb-logs --tail pour suivre en temps réel les traces d’exécution. Ajustez les paramètres max-concurrency ou timeout-ms dans workflow.yaml en fonction des pics de latence observés.
| Feature | Benefit |
|---|---|
| Speed | Up to 3.2x faster than Nano Banana 1 |
| Quality | +4.7% F1-score on multilingual summarization |
Quick Takeaways
Prérequis et configuration
Avant de lancer votre premier workflow Nano Banana 2, vérifiez trois couches fondamentales : les outils, l’infrastructure cloud et la disponibilité des modèles. Vous aurez besoin de nanobanana-cli v2.1.0 ou ultérieur (installez-le via pip install nanobanana-cli==2.1.0), de Python 3.9+, et de la CLI gcloud v425.0.0+ authentifiée avec gcloud auth login. Votre projet Google Cloud doit avoir la facturation activée et l’API Vertex AI activée — Nano Banana 2 repose sur les points de terminaison d’inférence optimisés de Vertex. En outre, assurez-vous que le modèle banana-summarizer-v3 est déployé dans votre région (us-central1, europe-west3 ou asia-east1) et enregistré dans le registre de modèles de votre projet avec la balise de version v3.2.1 ou supérieure. Les versions antérieures ne disposent pas des optimisations de latence ni de la validation du schéma JSON requises pour la liaison stricte des entrées de Nano Banana 2.
Les autorisations au niveau du compte sont également cruciales : votre compte de service doit disposer des rôles roles/aiplatform.user, roles/cloudfunctions.developer et roles/storage.objectAdmin — pas uniquement du rôle editor. Si vous utilisez un compte de service personnalisé (recommandé plutôt que le compte de calcul par défaut), exécutez gcloud projects add-iam-policy-binding VOTRE_ID_PROJET --member="serviceAccount:VOTRE_SA@VOTRE_ID_PROJET.iam.gserviceaccount.com" --role="roles/aiplatform.user" afin d’éviter des échecs silencieux lors du déploiement à l’étape 2.
Workflow étendu avec prompts avancés
Nano Banana 2 prend en charge des workflows multi-étapes, conditionnels et paramétrables, allant bien au-delà des déclencheurs HTTP basiques. Voici comment transformer votre workflow.yaml initial en un pipeline prêt pour la production :
Ajout de routage dynamique : insérez une étape conditionnelle qui achemine les entrées selon leur longueur ou leur langue détectée. Par exemple, sous
steps, ajoutez :- name: route-by-length type: condition condition: "{{ len(request.body.text) <= 256 }}" true: summarizer-short false: summarizer-longChaînage des sorties entre modèles : référencez les sorties d’étapes précédentes avec
{{ steps.summarizer-short.output.summary }}. Pour enrichir le résumé avec une analyse des sentiments :- model: banana-sentiment-v2 input: "{{ steps.summarizer-short.output.summary }}" output: sentiment_scoreInjection de paramètres adaptés à l’environnement : utilisez des variables gérées par
nb-configplutôt que des valeurs codées en dur. Définissez localementnb-config set env staging, puis référencez-la dans le YAML :- model: banana-ner-v4 input: "{{ request.body.text }}" parameters: confidence_threshold: "{{ env == 'staging' ? 0.7 : 0.85 }}" max_entities: "{{ env == 'staging' ? 3 : 10 }}"Validation des entrées avant exécution : ajoutez une étape préalable de validation pour rejeter rapidement les charges utiles mal formatées :
- name: validate-input type: validator schema: type: object required: [text] properties: text: type: string minLength: 1 maxLength: 2000Configuration de la logique de nouvelle tentative pour les services externes instables : si vous appelez une API externe (ex. : traduction), encapsulez-la dans une étape résiliente :
- model: banana-translate-v1 input: "{{ steps.summarizer-short.output.summary }}" retries: 2 backoff: exponential timeout-ms: 800
Erreurs courantes
Utilisation de balises de version obsolètes pour les modèles : déployer
banana-summarizer-v3sans spécifierversion: v3.2.1dans le fichier YAML entraîne par défaut l’utilisation dev3.0.0, qui ne supporte pas la limitation de débit par « token bucket » de Nano Banana 2 et renvoie une erreur HTTP 422 lors de pics de trafic élevé. Correction : déclarez explicitementmodel: [email protected]dans chaque étape.Remplacement des paramètres
nb-configlors de chaque déploiement : exécuternb-deploy --region europe-west3remplace temporairement votre configuration globale, mais ne la persiste pas — les commandesnb-logssuivantes échouent car elles lisent depuisus-central1. Correction : exécuteznb-config set region europe-west3avant le déploiement, puis vérifiez avecnb-config get region.Ignorance des limites de taille des charges utiles dans les déclencheurs HTTP : Nano Banana 2 impose une limite stricte de 1,5 Mo pour le corps des requêtes HTTP. L’envoi d’un JSON de 2 Mo contenant des images encodées en base64 échoue silencieusement avec une erreur HTTP 400, sans trace dans les logs. Correction : compressez les grandes charges utiles côté client (ex. :
gzip -c payload.json | curl -H "Content-Encoding: gzip" ...) ou passez aux déclencheurs Pub/Sub pour les données supérieures à 1 Mo.
Essayez ceci sur MidassAI
Vous pouvez reproduire et itérer exactement ce workflow — y compris le routage conditionnel, le chaînage multi-modèles et les paramètres adaptés à l’environnement — sans installer d’outils CLI ni gérer manuellement les rôles IAM Google Cloud. Ouvrez MidassAI Studio à l’adresse https://www.midassai.com/studio/nano/, sélectionnez « Nano Banana 2 » dans le menu déroulant du runtime, collez le contenu de votre fichier workflow.yaml dans l’éditeur visuel, puis cliquez sur « Exécuter le test ». Studio provisionne automatiquement un point de terminaison Vertex AI isolé, valide votre YAML en temps réel selon les règles de schéma de Nano Banana 2, et affiche directement dans l’interface des cartes thermiques de latence ainsi que des traces d’erreurs. Aucun identifiant de projet, aucun compte de service ni aucune configuration de facturation n’est requis — collez, ajustez et déployez en moins de 90 secondes.