Exécution du code

La fonctionnalité d'exécution de code de l'API Gemini 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'à l'obtention d'une sortie finale. Vous pouvez utiliser cette fonctionnalité d'exécution de code pour créer des applications qui bénéficient d'un raisonnement basé sur le code et qui génèrent 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.

L'exécution de code est disponible à la fois dans AI Studio et dans l'API Gemini. Dans AI Studio, vous pouvez activer l'exécution de code sous Paramètres avancés. L'API Gemini fournit l'exécution de code en tant qu'outil, semblable aux appels de fonctions. Une fois que vous avez ajouté l'exécution de code en tant qu'outil, le modèle décide quand l'utiliser.

Commencer à exécuter du code

Afficher sur ai.google.dev Exécuter dans Google Colab Consulter le code source sur GitHub

Dans cette section, nous partons du principe que vous avez installé un SDK Gemini et configuré une clé API, comme indiqué dans le quickstart.

Exécution de code et appel de fonction

L'exécution de code et l'appel de fonction sont des fonctionnalités similaires:

  • L'exécution de code permet au modèle d'exécuter du code dans le backend de l'API dans un environnement fixe et isolé.
  • L'appel de fonction vous permet d'exécuter les fonctions demandées par le modèle, dans l'environnement de votre choix.

En général, il est préférable d'utiliser l'exécution de code si elle peut gérer votre cas d'utilisation. L'exécution du code est plus simple à utiliser (il vous suffit de l'activer) et se résout en une seule requête GenerateContent (des frais uniques sont donc facturés). Les appels de fonction requièrent une requête GenerateContent supplémentaire pour renvoyer le résultat de chaque appel de fonction (ce qui entraîne plusieurs frais).

Dans la plupart des cas, vous devez utiliser l'appel de fonction si vous souhaitez exécuter vos propres fonctions localement, et l'exécution de code si vous souhaitez que l'API écrive et exécute du code Python à votre place, puis renvoie le résultat.

Facturation

L'activation de l'exécution du code depuis l'API Gemini n'entraîne aucuns frais supplémentaires. Vous serez facturé au tarif actuel des jetons d'entrée et de sortie.

Voici quelques autres points à connaître sur la facturation pour l'exécution du code:

  • Vous ne payez qu'une seule fois pour les jetons d'entrée que vous transmettez au modèle, et pour les jetons de sortie finaux qui vous sont renvoyés par le modèle.
  • Les jetons représentant du code généré sont comptabilisés comme des jetons de sortie.
  • Les résultats d'exécution de code sont également comptabilisés en tant que jetons de sortie.

Limites

  • Le modèle peut uniquement générer et exécuter du code. Il ne peut pas renvoyer d’autres artefacts comme les fichiers multimédias.
  • La fonctionnalité n'est pas compatible avec les E/S de fichiers ni avec les cas d'utilisation impliquant une sortie non textuelle (par exemple, des tracés de données).
  • L'exécution du code peut durer 30 secondes au maximum avant d'expirer.
  • Dans certains cas, l'activation de l'exécution de code peut entraîner des régressions dans d'autres domaines de la sortie du modèle (par exemple, l'écriture d'une histoire).
  • Les différents modèles n'ont pas tous la même capacité à exécuter du code. D'après nos tests, Gemini 1.5 Pro est le modèle le plus performant.