Passer au contenu principal

Redirection pour les modèles Gemini

Pour la série Gemini, nous proposons deux méthodes d’invocation : les appels API natifs et les appels compatibles OpenAI.
Avant de commencer, assurez-vous d’installer ou de mettre à jour la dépendance native en exécutant pip install google-genai ou pip install -U google-genai.
1️⃣ Pour l’intégration native, Gemini gère automatiquement le routage du trafic entre AI Studio et VertexAI. Il suffit de fournir votre clé API AIHubMix et l’URL de requête appropriée. N’oubliez pas que cette URL est différente du base_url habituel — suivez l’exemple ci-dessous pour garantir une configuration correcte.
2️⃣ Pour les formats compatibles OpenAI, conservez l’endpoint universel v1.
3️⃣ Pour la série 2.5, si vous souhaitez afficher le processus de raisonnement, il y a deux façons de procéder :
  1. Invocation native : passez include_thoughts=True
  2. Méthode compatible OpenAI : passez reasoning_effort
Vous pouvez consulter les exemples de code ci-dessous pour une utilisation détaillée.

Instructions pour Gemini 3 Pro Image Preview

Gemini 3 Pro Image Preview (Nano Banana Pro Preview) est conçu pour la création professionnelle d’assets et les instructions complexes. Ce modèle offre les fonctionnalités suivantes :
  • Utilise Google Search pour récupérer des connaissances mondiales en temps réel
  • Processus de « thinking » intégré (optimise la composition avant la génération)
  • Peut générer des images jusqu’à une résolution de 4K
Mode Streaming (stream=True) → étape de raisonnement uniquement
Mode Non-Streaming (stream=False) → génération finale de l’image
Les images générées ne sont pas incluses dans les réponses en streaming et doivent être récupérées via une requête non-streaming.
Exemples d’utilisation Python :

À propos des modèles d’inférence Gemini 2.5

  1. L’ensemble de la série 2.5 est composé de modèles d’inférence.
  2. 2.5 Flash est un modèle hybride, similaire à Claude Sonnet 3.7. Vous pouvez ajuster finement son comportement de raisonnement en réglant le paramètre thinking_budget pour un contrôle optimal.
  3. 2.5 Pro est un modèle d’inférence pur. Le thinking ne peut pas être désactivé et thinking_budget ne doit pas être explicitement défini.
Exemples d’utilisation Python :

Gemini 2.5 Flash : prise en charge des tâches rapides

Exemple d’invocation compatible OpenAI :
  1. Pour les tâches complexes, définissez simplement le model id sur la valeur par défaut gemini-2.5-flash-preview-04-17 pour activer le thinking.
  2. Gemini 2.5 Flash utilise le paramètre budget pour contrôler la profondeur de réflexion, allant de 0 à 16K. Le budget par défaut est de 1024, et l’effet marginal optimal est de 16K.

Compréhension des médias

  • Pour les fichiers multimédias inférieurs à 20 Mo (images, audio, vidéo), téléversez-les avec inline_data.
  • Lorsqu’un fichier multimédia est supérieur à 20 Mo, vous devez utiliser la Files API.

Fichiers de moins de 20 Mo

En ajoutant le paramètre EDIARESOLUTION_MEDIUM, vous pouvez ajuster la résolution de l’image, ce qui réduit significativement les coûts d’entrée et minimise le risque d’erreurs avec les grandes images.Valeurs de résolution média prises en charge :
Exemples d’utilisation Python :

Files API

Gemini peut traiter divers types de données d’entrée simultanément, notamment du texte, des images et de l’audio. Lorsque la taille totale de la requête (y compris les fichiers, les indices textuels, les commandes système, etc.) dépasse 20 Mo, veillez à utiliser la Files API.
  • Lister les fichiers téléversés n’est pas pris en charge.
  • Les fichiers seront automatiquement supprimés après 48 heures, ou vous pouvez supprimer manuellement les fichiers téléversés.
Exemples d’utilisation Python :

Exécution de code

La fonctionnalité d’exécution de code permet au modèle de générer et d’exécuter du code Python et d’apprendre de manière itérative à partir des résultats jusqu’à parvenir à une sortie finale. Vous pouvez utiliser cette capacité d’exécution de code pour créer des applications qui bénéficient d’un raisonnement basé sur le code et produisent une sortie textuelle. Par exemple, vous pouvez utiliser l’exécution de code dans une application qui résout des équations ou traite du texte.
Python

Interactions API

Interactions est l’interface d’inference de nouvelle generation de Gemini. Elle retourne des objets Interaction structures et prend en charge la generation de texte, la generation native d’images (Nano Banana) et le raisonnement multi-etapes. Le mode synchrone (interactions.create()) est actuellement disponible ; le mode asynchrone (Background Interactions) sera bientot disponible.
Version SDK requise : @google/genai >= 2.0.0 (JS/TS) ou google-genai >= 2.0.0 (Python). Les versions anterieures du SDK seront rejetees par le backend Google (legacy Interactions schema no longer supported).

Generation de texte

Appelez interactions.create() pour lancer une inference. L’objet Interaction retourne fournit la propriete pratique output_text.

Generation native d’images

Configurez la modalite de sortie en image via response_format. L’objet Interaction retourne fournit la propriete pratique output_image.
  • Modele recommande : gemini-3.1-flash-image (Nano Banana 2, modele universel de generation d’images).
  • Les valeurs de response_modalities doivent etre en minuscules : ['text', 'image'] ; les majuscules sont la syntaxe de l’API generateContent et provoquent un 400 dans l’Interactions API.
  • Ne transmettez pas delivery: 'inline' (400 Image delivery mode is not supported) — les resultats sont retournes en mode inline par defaut.

Sortie en streaming

Passez stream: true pour activer le streaming SSE. Le texte incremental est obtenu via event.delta.text.
JavaScript
Le guide complet d’integration SDK (incluant Embeddings, CRUD du cache explicite, matrice des fonctionnalites, etc.) est disponible dans Integration SDK natif Gemini.

Mise en cache du contexte

L’API native de Gemini active la mise en cache implicite du contexte par défaut — aucune configuration requise. Pour chaque requête generate_content, le système met automatiquement en cache le contenu d’entrée. Si une requête ultérieure utilise exactement le même contenu, le même modèle et les mêmes paramètres, le système renverra instantanément le résultat précédent, accélérant considérablement le temps de réponse et réduisant potentiellement les coûts en jetons d’entrée.
  • La mise en cache est automatique — aucune configuration manuelle n’est nécessaire.
  • Le cache n’est utilisé que lorsque le contenu, le modèle et tous les paramètres sont exactement identiques ; toute différence entraînera un cache miss.
  • La durée de vie du cache (TTL) peut être définie par le développeur, ou laissée non définie (par défaut 1 heure). Google n’applique pas de TTL minimum ou maximum. Les coûts dépendent du nombre de jetons mis en cache et de la durée du cache.
    • Bien que Google ne place aucune restriction sur le TTL, en tant que plateforme de redirection, nous ne prenons en charge qu’une plage de TTL limitée. Pour des exigences dépassant les limites de notre plateforme, veuillez nous contacter.

Remarques

  • Aucune économie de coût garantie : les jetons en cache sont facturés à 25 % du prix d’entrée standard — donc en théorie, la mise en cache peut vous faire économiser jusqu’à 75 % des coûts en jetons d’entrée. Cependant, la documentation officielle de Google ne garantit aucune économie de coût ; l’effet réel dépend de votre taux de hit cache, des types de jetons et de la durée de stockage.
  • Conditions de hit cache : pour maximiser l’efficacité du cache, placez le contexte réutilisable en début d’entrée et le contenu dynamique (comme la saisie utilisateur) à la fin.
  • Comment détecter les hits cache : si une réponse provient du cache, response.usage_metadata inclura le champ cache_tokens_details et cached_content_token_count. Vous pouvez les utiliser pour déterminer l’utilisation du cache.
    Exemple de champs lors d’un hit cache :
Exemple de code :
En cas de hit cache, response.usage_metadata contiendra :
Conclusion principale : la mise en cache implicite est automatique et fournit un retour clair sur les hits cache. Les développeurs peuvent vérifier usage_metadata pour le statut du cache. Les économies de coûts ne sont pas garanties — les avantages réels dépendent de la structure des requêtes et des taux de hit cache.

Function calling

Lorsque vous utilisez la méthode compatible OpenAI pour appeler le function calling de Gemini, vous devez passer tool_choice="auto" dans le corps de la requête, sinon une erreur sera signalée.
Exemple de sortie :

Suivi simplifié de l’utilisation des jetons

  1. Gemini suit l’utilisation des jetons via usage_metadata. Voici la signification de chaque champ :
    • prompt_token_count : nombre de jetons d’entrée
    • candidates_token_count : nombre de jetons de sortie
    • thoughts_token_count : jetons utilisés pendant le raisonnement (également comptés comme sortie)
    • total_token_count : total de jetons utilisés (entrée + sortie)
    Pour plus de détails, consultez leur documentation officielle.
  2. Pour les API utilisant le format compatible OpenAI, l’utilisation des jetons est suivie sous .usage avec les champs suivants :
    • usage.completion_tokens : nombre de jetons d’entrée
    • usage.prompt_tokens : nombre de jetons de sortie (y compris le raisonnement)
    • usage.total_tokens : utilisation totale des jetons

Voici comment l’utiliser dans le code :

Dernière mise à jour : 2026-07-07