La mise en cache du contexte vous permet d'enregistrer et de réutiliser les jetons d'entrée précalculés que vous souhaitez utiliser à plusieurs reprises, par exemple lorsque vous posez différentes questions sur le même fichier multimédia. Cela peut permettre de réaliser des économies en termes de coûts et de temps, en fonction de l'utilisation. Pour une présentation détaillée, consultez le guide Mise en cache du contexte.
Méthode : cachedContents.create
- Point de terminaison
- Corps de la requête
- Corps de la réponse
- Niveaux d'accès des autorisations
- Exemple de requête
Crée une ressource CachedContent.
Point de terminaison
posthttps: / /generativelanguage.googleapis.com /v1beta /cachedContents
Corps de la requête
Le corps de la requête contient une instance de CachedContent.
contents[]
object (Content)
Facultatif. Uniquement en entrée. Immuable. Contenu à mettre en cache.
tools[]
object (Tool)
Facultatif. Uniquement en entrée. Immuable. Liste de Tools que le modèle peut utiliser pour générer la réponse suivante.
expiration
Union type
expiration ne peut être qu'un des éléments suivants :expireTime
string (Timestamp format)
Code temporel en UTC du moment où cette ressource est considérée comme expirée. Ce code est toujours fourni en sortie, indépendamment de ce qui a été envoyé en entrée.
Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".
ttl
string (Duration format)
Uniquement en entrée. Nouvelle valeur TTL pour cette ressource (entrée uniquement).
Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"
displayName
string
Facultatif. Immuable. Nom à afficher pertinent et généré par l'utilisateur pour le contenu mis en cache. 128 caractères Unicode maximum.
model
string
Obligatoire. Immuable. Nom de l'Model à utiliser pour le contenu mis en cache. Format : models/{model}
systemInstruction
object (Content)
Facultatif. Uniquement en entrée. Immuable. Instruction système définie par le développeur. Texte uniquement pour le moment.
toolConfig
object (ToolConfig)
Facultatif. Uniquement en entrée. Immuable. Configuration de l'outil Cette configuration est partagée pour tous les outils.
Exemple de requête
De base
Python
Node.js
Go
Shell
Nom de l'expéditeur
Python
Node.js
Go
Depuis le chat
Python
Node.js
Go
Corps de la réponse
Si la requête aboutit, le corps de la réponse contient une nouvelle instance de CachedContent.
Méthode : cachedContents.list
- Point de terminaison
- Paramètres de requête
- Corps de la requête
- Corps de la réponse
- Niveaux d'accès des autorisations
Liste les CachedContents.
Point de terminaison
gethttps: / /generativelanguage.googleapis.com /v1beta /cachedContents
Paramètres de requête
pageSize
integer
Facultatif. Nombre maximal de contenus mis en cache à renvoyer. Le service peut renvoyer un nombre inférieur à cette valeur. Si aucune valeur n'est spécifiée, un nombre d'éléments par défaut (inférieur au maximum) sera renvoyé. La valeur maximale est 1 000. Les valeurs supérieures sont réduites à 1 000.
pageToken
string
Facultatif. Jeton de page reçu d'un appel cachedContents.list précédent. Fournissez-le pour récupérer la page suivante.
Lors de la pagination, tous les autres paramètres fournis à cachedContents.list doivent correspondre à l'appel ayant fourni le jeton de page.
Corps de la requête
Le corps de la requête doit être vide.
Corps de la réponse
Réponse avec la liste CachedContents.
Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :
cachedContents[]
object (CachedContent)
Liste des contenus mis en cache.
nextPageToken
string
Jeton pouvant être envoyé en tant que pageToken pour récupérer la page suivante. Si ce champ est omis, il n'y a pas d'autres pages.
| Représentation JSON |
|---|
{
"cachedContents": [
{
object ( |
Méthode : cachedContents.get
- Point de terminaison
- Paramètres de chemin d'accès
- Corps de la requête
- Corps de la réponse
- Niveaux d'accès des autorisations
- Exemple de requête
Lit la ressource CachedContent.
Point de terminaison
gethttps: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*}
Paramètres de chemin d'accès
name
string
Obligatoire. Nom de ressource faisant référence à l'entrée du cache de contenu. Format : cachedContents/{id}. Il se présente sous la forme cachedContents/{cachedcontent}.
Corps de la requête
Le corps de la requête doit être vide.
Exemple de requête
Python
Node.js
Go
Shell
Corps de la réponse
Si la requête aboutit, le corps de la réponse contient une instance de CachedContent.
Méthode : cachedContents.patch
- Point de terminaison
- Paramètres de chemin d'accès
- Paramètres de requête
- Corps de la requête
- Corps de la réponse
- Niveaux d'accès des autorisations
- Exemple de requête
Mise à jour de la ressource CachedContent (seule l'expiration peut être mise à jour).
Point de terminaison
patchhttps: / /generativelanguage.googleapis.com /v1beta /{cachedContent.name=cachedContents /*}
PATCH https://generativelanguage.googleapis.com/v1beta/{cachedContent.name=cachedContents/*}
Paramètres de chemin d'accès
cachedContent.name
string
Uniquement en sortie. Identifiant. Nom de ressource faisant référence au contenu mis en cache. Format : cachedContents/{id}. Il se présente sous la forme cachedContents/{cachedcontent}.
Paramètres de requête
updateMask
string (FieldMask format)
Liste des champs à mettre à jour.
Il s'agit d'une liste de noms de champs complets séparés par une virgule. Exemple : "user.displayName,photo"
Corps de la requête
Le corps de la requête contient une instance de CachedContent.
expiration
Union type
expiration ne peut être qu'un des éléments suivants :expireTime
string (Timestamp format)
Code temporel en UTC du moment où cette ressource est considérée comme expirée. Ce code est toujours fourni en sortie, indépendamment de ce qui a été envoyé en entrée.
Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".
ttl
string (Duration format)
Uniquement en entrée. Nouvelle valeur TTL pour cette ressource (entrée uniquement).
Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"
Exemple de requête
Python
Node.js
Go
Shell
Corps de la réponse
Si la requête aboutit, le corps de la réponse contient une instance de CachedContent.
Méthode : cachedContents.delete
- Point de terminaison
- Paramètres de chemin d'accès
- Corps de la requête
- Corps de la réponse
- Niveaux d'accès des autorisations
- Exemple de requête
Supprime la ressource CachedContent.
Point de terminaison
deletehttps: / /generativelanguage.googleapis.com /v1beta /{name=cachedContents /*}
Paramètres de chemin d'accès
name
string
Obligatoire. Nom de ressource faisant référence à l'entrée du cache de contenu. Format : cachedContents/{id}. Il se présente sous la forme cachedContents/{cachedcontent}.
Corps de la requête
Le corps de la requête doit être vide.
Exemple de requête
Python
Node.js
Go
Shell
Corps de la réponse
Si la requête aboutit, le corps de la réponse est un objet JSON vide.
Ressource REST : cachedContents
- Ressource : CachedContent
- ToolConfig
- FunctionCallingConfig
- Mode
- RetrievalConfig
- LatLng
- UsageMetadata
- Méthodes
Ressource : CachedContent
Contenu prétraité pouvant être utilisé dans une requête ultérieure adressée à GenerativeService.
Le contenu mis en cache ne peut être utilisé qu'avec le modèle pour lequel il a été créé.
contents[]
object (Content)
Facultatif. Uniquement en entrée. Immuable. Contenu à mettre en cache.
tools[]
object (Tool)
Facultatif. Uniquement en entrée. Immuable. Liste de Tools que le modèle peut utiliser pour générer la réponse suivante.
createTime
string (Timestamp format)
Uniquement en sortie. Heure de création de l'entrée de cache.
Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".
updateTime
string (Timestamp format)
Uniquement en sortie. Date de la dernière mise à jour de l'entrée de cache en heure UTC.
Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".
usageMetadata
object (UsageMetadata)
Uniquement en sortie. Métadonnées sur l'utilisation du contenu mis en cache.
expiration
Union type
expiration ne peut être qu'un des éléments suivants :expireTime
string (Timestamp format)
Code temporel en UTC du moment où cette ressource est considérée comme expirée. Ce code est toujours fourni en sortie, indépendamment de ce qui a été envoyé en entrée.
Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".
ttl
string (Duration format)
Uniquement en entrée. Nouvelle valeur TTL pour cette ressource (entrée uniquement).
Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par "s". Exemple : "3.5s"
name
string
Uniquement en sortie. Identifiant. Nom de ressource faisant référence au contenu mis en cache. Format : cachedContents/{id}
displayName
string
Facultatif. Immuable. Nom à afficher pertinent et généré par l'utilisateur pour le contenu mis en cache. 128 caractères Unicode maximum.
model
string
Obligatoire. Immuable. Nom de l'Model à utiliser pour le contenu mis en cache. Format : models/{model}
systemInstruction
object (Content)
Facultatif. Uniquement en entrée. Immuable. Instruction système définie par le développeur. Texte uniquement pour le moment.
toolConfig
object (ToolConfig)
Facultatif. Uniquement en entrée. Immuable. Configuration de l'outil Cette configuration est partagée pour tous les outils.
| Représentation JSON |
|---|
{ "contents": [ { object ( |
ToolConfig
Configuration de l'outil contenant les paramètres permettant de spécifier l'utilisation de Tool dans la requête.
functionCallingConfig
object (FunctionCallingConfig)
Facultatif. Configuration de l'appel de fonction.
retrievalConfig
object (RetrievalConfig)
Facultatif. Configuration de la récupération.
includeServerSideToolInvocations
boolean
Facultatif. Si la valeur est "true", la réponse de l'API inclut les appels et les réponses des outils côté serveur dans le message Content. Cela permet aux clients d'observer les interactions de l'outil avec le serveur.
| Représentation JSON |
|---|
{ "functionCallingConfig": { object ( |
FunctionCallingConfig
Configuration permettant de spécifier le comportement d'appel de fonction.
mode
enum (Mode)
Facultatif. Spécifie le mode d'exécution de l'appel de fonction. Si aucune valeur n'est spécifiée, la valeur par défaut est définie sur "AUTO".
allowedFunctionNames[]
string
Facultatif. Ensemble de noms de fonctions qui, lorsqu'ils sont fournis, limitent les fonctions que le modèle appellera.
Ce champ ne doit être défini que lorsque le mode est "ANY" ou "VALIDATED". Les noms des fonctions doivent correspondre à [FunctionDeclaration.name]. Lorsqu'il est défini, le modèle prédit un appel de fonction uniquement à partir des noms de fonctions autorisés.
| Représentation JSON |
|---|
{
"mode": enum ( |
Mode
Définit le comportement d'exécution pour l'appel de fonction en définissant le mode d'exécution.
| Enums | |
|---|---|
MODE_UNSPECIFIED |
Mode d'appel de fonction non spécifié. Cette valeur ne doit pas être utilisée. |
AUTO |
Comportement par défaut du modèle. Le modèle décide de prédire un appel de fonction ou une réponse en langage naturel. |
ANY |
Le modèle est contraint de toujours prédire un appel de fonction uniquement. Si "allowedFunctionNames" est défini, l'appel de fonction prédit sera limité à l'un des "allowedFunctionNames". Sinon, l'appel de fonction prédit sera l'une des "functionDeclarations" fournies. |
NONE |
Le modèle ne prédira aucun appel de fonction. Le comportement du modèle est le même que lorsque vous ne transmettez aucune déclaration de fonction. |
VALIDATED |
Le modèle décide de prédire un appel de fonction ou une réponse en langage naturel, mais il validera les appels de fonction avec un décodage contraint. Si "allowedFunctionNames" est défini, l'appel de fonction prédit sera limité à l'un des "allowedFunctionNames". Sinon, l'appel de fonction prédit sera l'une des "functionDeclarations" fournies. |
RetrievalConfig
Configuration de la récupération.
latLng
object (LatLng)
Facultatif. Emplacement de l'utilisateur.
languageCode
string
Facultatif. Code de langue de l'utilisateur. Code de langue du contenu. Utilisez les balises de langue définies par BCP47.
| Représentation JSON |
|---|
{
"latLng": {
object ( |
LatLng
Objet représentant une paire latitude/longitude. Cette valeur est exprimée par une paire de doubles représentant les degrés de latitude et de longitude. Sauf indication contraire, cet objet doit être conforme à la norme WGS84. Les valeurs doivent se situer dans les limites normalisées.
latitude
number
Latitude en degrés. Elle doit être comprise dans la plage [-90.0, +90.0].
longitude
number
Longitude en degrés. Elle doit être comprise dans la plage [-180.0, +180.0].
| Représentation JSON |
|---|
{ "latitude": number, "longitude": number } |
UsageMetadata
Métadonnées sur l'utilisation du contenu mis en cache.
totalTokenCount
integer
Nombre total de jetons consommés par le contenu mis en cache.
| Représentation JSON |
|---|
{ "totalTokenCount": integer } |