Live API - WebSockets API reference

L'API Live est une API avec état qui utilise WebSockets. Dans cette section, vous trouverez des informations supplémentaires sur l'API WebSockets.

Sessions

Une connexion WebSocket établit une session entre le client et le serveur Gemini. Une fois qu'un client a établi une nouvelle connexion, la session peut échanger des messages avec le serveur pour :

  • envoyer du texte, de l'audio ou des vidéos au serveur Gemini ;
  • recevoir des requêtes audio, textuelles ou d'appel de fonction du serveur Gemini.

Connexion WebSocket

Pour démarrer une session, connectez-vous à ce point de terminaison WebSocket :

wss://generativelanguage.googleapis.com/ws/google.ai.generativelanguage.v1beta.GenerativeService.BidiGenerateContent

Configuration de la session

Le message initial envoyé après l'établissement de la connexion WebSocket définit la configuration de la session, qui inclut le modèle, les paramètres de génération, les instructions système et les outils.

Vous ne pouvez pas mettre à jour la configuration lorsque la connexion est ouverte. Toutefois, vous pouvez modifier les paramètres de configuration, à l'exception du modèle, lorsque vous mettez en pause et reprenez l'opération via le mécanisme de reprise de session.

Consultez l'exemple de configuration suivant. Notez que la casse des noms peut varier dans les SDK. Vous pouvez consulter les options de configuration du SDK Python ici.


{
  "model": string,
  "generationConfig": {
    "candidateCount": integer,
    "maxOutputTokens": integer,
    "temperature": number,
    "topP": number,
    "topK": integer,
    "presencePenalty": number,
    "frequencyPenalty": number,
    "responseModalities": [string],
    "speechConfig": object,
    "mediaResolution": object
  },
  "systemInstruction": string,
  "tools": [object]
}

Pour en savoir plus sur le champ de l'API, consultez generationConfig.

Envoyer des messages

Pour échanger des messages via la connexion WebSocket, le client doit envoyer un objet JSON par le biais d'une connexion WebSocket ouverte. L'objet JSON doit comporter exactement l'un des champs de l'ensemble d'objets suivant :


{
  "setup": BidiGenerateContentSetup,
  "clientContent": BidiGenerateContentClientContent,
  "realtimeInput": BidiGenerateContentRealtimeInput,
  "toolResponse": BidiGenerateContentToolResponse
}

Messages client acceptés

Consultez les messages client acceptés dans le tableau suivant :

Message Description
BidiGenerateContentSetup Configuration de la session envoyée dans le premier message
BidiGenerateContentClientContent Mise à jour incrémentielle du contenu de la conversation actuelle envoyée par le client
BidiGenerateContentRealtimeInput Entrée audio, vidéo ou textuelle en temps réel
BidiGenerateContentToolResponse Réponse à un ToolCallMessage reçu du serveur

Recevoir des messages

Pour recevoir des messages de Gemini, écoutez l'événement "message" de WebSocket, puis analysez le résultat en fonction de la définition des messages serveur acceptés.

Consultez les références suivantes :

async with client.aio.live.connect(model='...', config=config) as session:
    await session.send(input='Hello world!', end_of_turn=True)
    async for message in session.receive():
        print(message)

Les messages serveur peuvent comporter un champ usageMetadata, mais ils incluent exactement l'un des autres champs du message BidiGenerateContentServerMessage. (L'union messageType n'est pas exprimée en JSON. Le champ apparaît donc au niveau supérieur du message.)

Messages et événements

ActivityEnd

Ce type ne comporte aucun champ.

Indique la fin de l'activité de l'utilisateur.

ActivityHandling

Les différentes façons de gérer l'activité de l'utilisateur.

Énumérations
ACTIVITY_HANDLING_UNSPECIFIED Si aucune valeur n'est spécifiée, le comportement par défaut est START_OF_ACTIVITY_INTERRUPTS.
START_OF_ACTIVITY_INTERRUPTS Si la valeur est "true", le démarrage de l'activité interrompt la réponse du modèle (également appelé "barge-in"). La réponse actuelle du modèle est suspendue au moment de l'interruption. Il s'agit du comportement par défaut.
NO_INTERRUPTION La réponse du modèle n'est pas interrompue.

ActivityStart

Ce type ne comporte aucun champ.

Indique le début de l'activité de l'utilisateur.

AudioTranscriptionConfig

Ce type ne comporte aucun champ.

Configuration de la transcription audio.

AutomaticActivityDetection

Configure la détection automatique de l'activité.

Champs
disabled

bool

Facultatif. Si cette option est activée (valeur par défaut), les entrées vocales et textuelles détectées sont considérées comme une activité. S'il est désactivé, le client doit envoyer des signaux d'activité.

startOfSpeechSensitivity

StartSensitivity

Facultatif. Détermine la probabilité de détection de la parole.

prefixPaddingMs

int32

Facultatif. Durée requise de la parole détectée avant validation du début de la parole. Plus cette valeur est faible, plus la détection du début de la parole est sensible, ce qui permet de détecter des paroles plus courtes. Toutefois, cela augmente également la probabilité de faux positifs.

endOfSpeechSensitivity

EndSensitivity

Facultatif. Détermine la probabilité que la parole détectée soit terminée.

silenceDurationMs

int32

Facultatif. Durée requise de sons autres que la parole (par exemple, du silence) détectés avant validation de la fin de la parole. Plus cette valeur est élevée, plus les intervalles de parole peuvent être longs sans interrompre l'activité de l'utilisateur. Toutefois, cela augmente la latence du modèle.

BidiGenerateContentClientContent

Mise à jour incrémentielle de la conversation en cours envoyée par le client. Tout le contenu est ajouté sans condition à l'historique de la conversation et utilisé dans le prompt envoyé au modèle pour générer du contenu.

Un message ici interrompra toute génération de contenu actuellement réalisée par le modèle.

Champs
turns[]

Content

Facultatif. Contenu ajouté à la conversation en cours avec le modèle.

Pour les requêtes à un seul tour, il s'agit d'une instance unique. Pour les requêtes multitours, il s'agit d'un champ répété contenant l'historique de la conversation et la dernière requête.

turnComplete

bool

Facultatif. Si la valeur est "true", cela indique que la génération du contenu du serveur doit commencer par le prompt actuellement accumulé. Sinon, le serveur attendra des messages supplémentaires avant de commencer la génération.

BidiGenerateContentRealtimeInput

Entrée utilisateur envoyée en temps réel.

Les différentes modalités (audio, vidéo et texte) sont traitées comme des flux simultanés. L'ordre de ces flux n'est pas garanti.

Cette méthode diffère de BidiGenerateContentClientContent de plusieurs manières :

  • Elle peut être envoyée en continu sans interrompre la génération de contenu par le modèle.
  • Si vous devez mélanger des données entrelacées entre BidiGenerateContentClientContent et BidiGenerateContentRealtimeInput, le serveur tente d'optimiser la réponse, sans garantie que cela fonctionne.
  • La fin du tour n'est pas spécifiée explicitement. Elle dépend plutôt de l'activité de l'utilisateur (par exemple, fin de la parole).
  • Même avant la fin du tour, les données sont traitées de manière incrémentielle pour optimiser le démarrage rapide de la réponse du modèle.
Champs
mediaChunks[]

Blob

Facultatif. Données d'octets intégrés pour l'entrée multimédia. Plusieurs mediaChunks ne sont pas acceptés. Tous les éléments, sauf le premier, seront ignorés.

OBSOLÈTE : utilisez plutôt audio, video ou text.

audio

Blob

Facultatif. Ils constituent le flux d'entrée audio en temps réel.

video

Blob

Facultatif. Ils constituent le flux d'entrée vidéo en temps réel.

activityStart

ActivityStart

Facultatif. Indique le début de l'activité de l'utilisateur. Cette information ne peut être envoyée que si la détection automatique de l'activité (c'est-à-dire côté serveur) est désactivée.

activityEnd

ActivityEnd

Facultatif. Indique la fin de l'activité de l'utilisateur. Cette information ne peut être envoyée que si la détection automatique de l'activité (c'est-à-dire côté serveur) est désactivée.

audioStreamEnd

bool

Facultatif. Indique que le flux audio est terminé, par exemple parce que le micro a été désactivé.

Cette information ne doit être envoyée que lorsque la détection automatique de l'activité est activée (ce qui est le cas par défaut).

Le client peut rouvrir le flux en envoyant un message audio.

text

string

Facultatif. Ils constituent le flux d'entrée de texte en temps réel.

BidiGenerateContentServerContent

Mise à jour incrémentielle du serveur générée par le modèle en réponse aux messages client.

Le contenu est généré aussi rapidement que possible, et non en temps réel. Les clients peuvent choisir de le mettre en mémoire tampon et de le lire en temps réel.

Champs
generationComplete

bool

Uniquement en sortie. Si la valeur est "true", cela indique que le modèle a fini de générer du contenu.

Lorsque la génération de contenu par le modèle est interrompue, le message "generation_complete" n'est pas affiché dans le tour interrompu. Le message "interrupted" sera directement suivi du message "turn_complete".

Lorsque le modèle suppose une lecture en temps réel, il y a un délai entre les messages "generation_complete" et "turn_complete", car le modèle attend la fin de la lecture.

turnComplete

bool

Uniquement en sortie. Si la valeur est "true", cela indique que le modèle a terminé son tour. La génération ne démarre que si d'autres messages du client sont reçus.

interrupted

bool

Uniquement en sortie. Si la valeur est "true", cela indique qu'un message client a interrompu la génération de contenu actuellement réalisée par le modèle. Si le client lit le contenu en temps réel, il est recommandé d'arrêter et de vider la file d'attente de lecture actuelle.

groundingMetadata

GroundingMetadata

Uniquement en sortie. Métadonnées d'ancrage pour le contenu généré.

inputTranscription

BidiGenerateContentTranscription

Uniquement en sortie. Transcription audio de l'entrée. La transcription est envoyée indépendamment des autres messages du serveur et l'ordre n'est pas garanti.

outputTranscription

BidiGenerateContentTranscription

Uniquement en sortie. Transcription audio de la sortie. La transcription est envoyée indépendamment des autres messages du serveur. L'ordre n'est pas garanti, en particulier entre serverContent et outputTranscription.

urlContextMetadata

UrlContextMetadata

modelTurn

Content

Uniquement en sortie. Contenu généré par le modèle pendant la conversation en cours avec l'utilisateur.

BidiGenerateContentServerMessage

Message de réponse pour l'appel BidiGenerateContent.

Champs
usageMetadata

UsageMetadata

Uniquement en sortie. Métadonnées d'utilisation concernant la ou les réponses.

Champ d'union messageType. Type du message. messageType ne peut être qu'un des éléments suivants :
setupComplete

BidiGenerateContentSetupComplete

Uniquement en sortie. Il est envoyé en réponse à un message BidiGenerateContentSetup du client une fois la configuration terminée.

serverContent

BidiGenerateContentServerContent

Uniquement en sortie. Contenu généré par le modèle en réponse aux messages client.

toolCall

BidiGenerateContentToolCall

Uniquement en sortie. Demande au client d'exécuter les functionCalls et de renvoyer les réponses avec les id correspondants.

toolCallCancellation

BidiGenerateContentToolCallCancellation

Uniquement en sortie. Notification au client indiquant qu'un ToolCallMessage précédemment émis avec les id spécifiés doit être annulé.

goAway

GoAway

Uniquement en sortie. Notification indiquant que le serveur va bientôt se déconnecter.

sessionResumptionUpdate

SessionResumptionUpdate

Uniquement en sortie. Mise à jour de l'état de reprise de la session.

BidiGenerateContentSetup

Message à envoyer dans le premier (et uniquement dans le premier) BidiGenerateContentClientMessage. Contient la configuration qui s'appliquera pendant la durée du RPC de streaming.

Les clients doivent attendre un message BidiGenerateContentSetupComplete avant d'envoyer d'autres messages.

Champs
model

string

Obligatoire. Nom de ressource du modèle. Il sert d'ID pour le modèle.

Format : models/{model}

generationConfig

GenerationConfig

Facultatif. Configuration de la génération.

Les champs suivants ne sont pas acceptés :

  • responseLogprobs
  • responseMimeType
  • logprobs
  • responseSchema
  • stopSequence
  • routingConfig
  • audioTimestamp
systemInstruction

Content

Facultatif. Instructions système fournies par l'utilisateur pour le modèle.

Remarque : Seul du texte doit être utilisé dans les parties, et le contenu de chaque partie figurera dans un paragraphe distinct.

tools[]

Tool

Facultatif. Liste de Tools que le modèle peut utiliser pour générer la réponse suivante.

Tool est une portion de code qui permet au système d'interagir avec des systèmes externes pour effectuer une action ou un ensemble d'actions en dehors du champ d'application et des connaissances du modèle.

realtimeInputConfig

RealtimeInputConfig

Facultatif. Configure la gestion de l'entrée en temps réel.

sessionResumption

SessionResumptionConfig

Facultatif. Configure le mécanisme de reprise de session.

Si cet élément est inclus, le serveur envoie des messages SessionResumptionUpdate.

contextWindowCompression

ContextWindowCompressionConfig

Facultatif. Configure un mécanisme de compression de la fenêtre de contexte.

Si cet élément est inclus, le serveur réduit automatiquement la taille du contexte lorsqu'il dépasse la longueur configurée.

inputAudioTranscription

AudioTranscriptionConfig

Facultatif. Si cette option est définie, elle active la transcription de la saisie vocale. La transcription correspond à la langue audio d'entrée, si elle est configurée.

outputAudioTranscription

AudioTranscriptionConfig

Facultatif. Si cette option est définie, elle permet de transcrire la sortie audio du modèle. La transcription correspond au code de langue spécifié pour le contenu audio de sortie, le cas échéant.

proactivity

ProactivityConfig

Facultatif. Configure la proactivité du modèle.

Cela permet au modèle de répondre de manière proactive à l'entrée et d'ignorer les entrées non pertinentes.

BidiGenerateContentSetupComplete

Ce type ne comporte aucun champ.

Il est envoyé en réponse à un message BidiGenerateContentSetup du client.

BidiGenerateContentToolCall

Demande au client d'exécuter les functionCalls et de renvoyer les réponses avec les id correspondants.

Champs
functionCalls[]

FunctionCall

Uniquement en sortie. Appel de fonction à exécuter.

BidiGenerateContentToolCallCancellation

Notification au client indiquant qu'un ToolCallMessage précédemment émis avec les id spécifiés n'aurait pas dû être exécuté et doit être annulé. Si ces appels d'outils ont eu des effets secondaires, les clients peuvent tenter de les annuler. Ce message ne s'affiche que lorsque les clients interrompent les tours du serveur.

Champs
ids[]

string

Uniquement en sortie. ID des appels d'outils à annuler.

BidiGenerateContentToolResponse

Réponse générée par le client à un ToolCall reçu du serveur. Les objets FunctionResponse individuels sont mis en correspondance avec les objets FunctionCall respectifs par le champ id.

Notez que dans les API GenerateContent unaires et de streaming côté serveur, l'appel de fonction est effectué en échangeant les parties Content, tandis que dans les API GenerateContent bidirectionnelles, l'appel de fonction est réalisé sur cet ensemble de messages dédié.

Champs
functionResponses[]

FunctionResponse

Facultatif. Réponse aux appels de fonction.

BidiGenerateContentTranscription

Transcription de l'audio (entrée ou sortie).

Champs
text

string

Texte de la transcription.

ContextWindowCompressionConfig

Active la compression de la fenêtre de contexte, un mécanisme permettant de gérer la fenêtre de contexte du modèle afin qu'elle ne dépasse pas une longueur donnée.

Champs
Champ d'union compressionMechanism. Mécanisme de compression de la fenêtre de contexte utilisé. compressionMechanism ne peut être qu'un des éléments suivants :
slidingWindow

SlidingWindow

Un mécanisme de fenêtre glissante.

triggerTokens

int64

Nombre de jetons (avant l'exécution d'un tour) requis pour déclencher une compression de la fenêtre de contexte.

Vous pouvez l'utiliser pour trouver un équilibre entre la qualité et la latence, car des fenêtres de contexte plus courtes peuvent entraîner des réponses plus rapides du modèle. Toutefois, toute opération de compression entraînera une augmentation temporaire de la latence. Il ne faut donc pas les déclencher fréquemment.

Si aucune valeur n'est définie, la valeur par défaut est de 80 % de la limite de la fenêtre de contexte du modèle. Il reste donc 20 % pour la prochaine requête utilisateur/réponse du modèle.

EndSensitivity

Détermine comment la fin de la parole est détectée.

Enums
END_SENSITIVITY_UNSPECIFIED La valeur par défaut est END_SENSITIVITY_HIGH.
END_SENSITIVITY_HIGH La détection automatique met fin plus souvent à la parole.
END_SENSITIVITY_LOW La détection automatique met fin moins souvent à la parole.

GoAway

Notification indiquant que le serveur va bientôt se déconnecter.

Champs
timeLeft

Duration

Temps restant avant la fin de la connexion (considérée comme ABORTED).

Cette durée ne sera jamais inférieure à un minimum spécifique au modèle, qui sera spécifié avec les limites de débit pour le modèle.

ProactivityConfig

Configuration des fonctionnalités de proactivité.

Champs
proactiveAudio

bool

Facultatif. Si cette option est activée, le modèle peut refuser de répondre à la dernière requête. Par exemple, cela permet au modèle d'ignorer les paroles hors contexte ou de rester silencieux si l'utilisateur n'a pas encore fait de demande.

RealtimeInputConfig

Configure le comportement d'entrée en temps réel dans BidiGenerateContent.

Champs
automaticActivityDetection

AutomaticActivityDetection

Facultatif. Si cet élément n'est pas défini, la détection automatique de l'activité est activée par défaut. Si elle est désactivée, le client doit envoyer des signaux d'activité.

activityHandling

ActivityHandling

Facultatif. Définit l'effet de l'activité.

turnCoverage

TurnCoverage

Facultatif. Définit l'entrée incluse dans le tour de l'utilisateur.

SessionResumptionConfig

Configuration de la reprise de session.

Ce message est inclus dans la configuration de la session en tant que BidiGenerateContentSetup.sessionResumption. Si cette option est configurée, le serveur envoie des messages SessionResumptionUpdate.

Champs
handle

string

Handle d'une session précédente. Si elle n'est pas présente, une session est créée.

Les identifiants de session proviennent des valeurs SessionResumptionUpdate.token des connexions précédentes.

SessionResumptionUpdate

Mise à jour de l'état de reprise de la session.

N'est envoyé que si BidiGenerateContentSetup.sessionResumption a été défini.

Champs
newHandle

string

Nouveau handle représentant un état pouvant être repris. Vide si resumable=false.

resumable

bool

"True" si la session actuelle peut être reprise à ce stade.

Il est possible que vous ne puissiez pas reprendre la session à certains moments. Par exemple, lorsque le modèle exécute des appels de fonction ou génère du contenu. La reprise de la session (à l'aide d'un jeton de session précédent) dans cet état entraînera une perte de données. Dans ce cas, newHandle sera vide et resumable sera défini sur "false".

SlidingWindow

La méthode SlidingWindow consiste à supprimer le contenu au début de la fenêtre de contexte. Le contexte obtenu commencera toujours au début d'un tour de rôle USER. Les instructions système et les BidiGenerateContentSetup.prefixTurns resteront toujours au début du résultat.

Champs
targetTokens

int64

Nombre cible de jetons à conserver. La valeur par défaut est trigger_tokens/2.

Le fait de supprimer des parties de la fenêtre de contexte entraîne une augmentation temporaire de la latence. Cette valeur doit donc être calibrée pour éviter les opérations de compression fréquentes.

StartSensitivity

Détermine comment le début de la parole est détecté.

Enums
START_SENSITIVITY_UNSPECIFIED La valeur par défaut est START_SENSITIVITY_HIGH.
START_SENSITIVITY_HIGH La détection automatique détectera plus souvent le début de la parole.
START_SENSITIVITY_LOW La détection automatique détectera moins souvent le début de la parole.

TurnCoverage

Options concernant les entrées à inclure dans le tour de l'utilisateur.

Énumérations
TURN_COVERAGE_UNSPECIFIED Si aucune valeur n'est spécifiée, le comportement par défaut est TURN_INCLUDES_ONLY_ACTIVITY.
TURN_INCLUDES_ONLY_ACTIVITY Le tour de l'utilisateur inclut uniquement l'activité depuis le dernier tour, à l'exclusion de l'inactivité (par exemple, un silence sur le flux audio). Il s'agit du comportement par défaut.
TURN_INCLUDES_ALL_INPUT Le tour de l'utilisateur inclut toutes les entrées en temps réel depuis le dernier tour, y compris l'inactivité (par exemple, un silence sur le flux audio).

UrlContextMetadata

Métadonnées associées à l'outil de récupération du contexte d'URL.

Champs
urlMetadata[]

UrlMetadata

Liste du contexte d'URL.

UsageMetadata

Métadonnées d'utilisation concernant la ou les réponses.

Champs
promptTokenCount

int32

Uniquement en sortie. Nombre de jetons dans la requête. Lorsque cachedContent est défini, il s'agit toujours de la taille totale effective de la requête, ce qui signifie qu'elle inclut le nombre de jetons dans le contenu mis en cache.

cachedContentTokenCount

int32

Nombre de jetons dans la partie mise en cache de la requête (le contenu mis en cache)

responseTokenCount

int32

Uniquement en sortie. Nombre total de jetons pour tous les candidats de réponse générés.

toolUsePromptTokenCount

int32

Uniquement en sortie. Nombre de jetons présents dans la ou les invites d'utilisation d'outils.

thoughtsTokenCount

int32

Uniquement en sortie. Nombre de jetons de pensées pour les modèles à raisonnement.

totalTokenCount

int32

Uniquement en sortie. Nombre total de jetons pour la requête de génération (requête + candidats de réponse).

promptTokensDetails[]

ModalityTokenCount

Uniquement en sortie. Liste des modalités traitées dans l'entrée de la requête.

cacheTokensDetails[]

ModalityTokenCount

Uniquement en sortie. Liste des modalités du contenu mis en cache dans l'entrée de la requête.

responseTokensDetails[]

ModalityTokenCount

Uniquement en sortie. Liste des modalités renvoyées dans la réponse.

toolUsePromptTokensDetails[]

ModalityTokenCount

Uniquement en sortie. Liste des modalités traitées pour les entrées de demande d'utilisation d'outils.

Jetons d'authentification éphémères

Vous pouvez obtenir des jetons d'authentification éphémères en appelant AuthTokenService.CreateToken, puis les utiliser avec GenerativeService.BidiGenerateContentConstrained, soit en transmettant le jeton dans un paramètre de requête access_token, soit dans un en-tête HTTP Authorization avec le préfixe "Token".

CreateAuthTokenRequest

Créez un jeton d'authentification éphémère.

Champs
authToken

AuthToken

Obligatoire. Jeton à créer.

AuthToken

Requête permettant de créer un jeton d'authentification éphémère.

Champs
name

string

Uniquement en sortie. Identifiant. Le jeton lui-même.

expireTime

Timestamp

Facultatif. Uniquement en entrée. Immuable. Il s'agit d'une durée facultative au-delà de laquelle les messages des sessions BidiGenerateContent seront refusés lorsque le jeton obtenu sera utilisé. (Gemini peut fermer la session de manière préventive après ce délai.)

Si elle n'est pas définie, la valeur par défaut est 30 minutes dans le futur. Si elle est définie, cette valeur doit être inférieure à 20 heures dans le futur.

newSessionExpireTime

Timestamp

Facultatif. Uniquement en entrée. Immuable. Heure après laquelle les nouvelles sessions de l'API Live utilisant le jeton résultant de cette requête seront refusées.

Si cette valeur n'est pas définie, la valeur par défaut est de 60 secondes dans le futur. Si elle est définie, cette valeur doit être inférieure à 20 heures dans le futur.

fieldMask

FieldMask

Facultatif. Uniquement en entrée. Immuable. Si field_mask est vide et que bidiGenerateContentSetup n'est pas présent, le message BidiGenerateContentSetup effectif est extrait de la connexion Live API.

Si field_mask est vide et que bidiGenerateContentSetup est présent, le message BidiGenerateContentSetup effectif est entièrement extrait de bidiGenerateContentSetup dans cette requête. Le message de configuration de la connexion à l'API Live est ignoré.

Si field_mask n'est pas vide, les champs correspondants de bidiGenerateContentSetup remplaceront les champs du message de configuration dans la connexion Live API.

Champ d'union config. Configuration spécifique à la méthode pour le jeton obtenu. config ne peut être qu'un des éléments suivants :
bidiGenerateContentSetup

BidiGenerateContentSetup

Facultatif. Uniquement en entrée. Immuable. Configuration spécifique à BidiGenerateContent.

uses

int32

Facultatif. Uniquement en entrée. Immuable. Nombre de fois où le jeton peut être utilisé. Si cette valeur est égale à zéro, aucune limite n'est appliquée. La reprise d'une session de l'API Live n'est pas comptabilisée comme une utilisation. Si aucune valeur n'est spécifiée, la valeur par défaut est 1.

En savoir plus sur les types courants

Pour en savoir plus sur les types de ressources d'API couramment utilisés Blob, Content, FunctionCall, FunctionResponse, GenerationConfig, GroundingMetadata, ModalityTokenCount et Tool, consultez Générer du contenu.