Models

Le point de terminaison des modèles vous permet de lister de manière programmatique les modèles disponibles et de récupérer des métadonnées étendues telles que les fonctionnalités prises en charge et la taille de la fenêtre de contexte. Pour en savoir plus, consultez le guide sur les modèles.

Méthode : models.get

Obtient des informations sur un Model spécifique, comme son numéro de version, ses limites de jetons, ses paramètres et d'autres métadonnées. Pour obtenir des informations détaillées sur les modèles, consultez le guide des modèles Gemini.

Point de terminaison

get https://generativelanguage.googleapis.com/v1beta/{name=models/*}

Paramètres de chemin d'accès

name string

Obligatoire. Nom de ressource du modèle.

Ce nom doit correspondre à un nom de modèle renvoyé par la méthode models.list.

Format : models/{model}. Il se présente sous la forme models/{model}.

Corps de la requête

Le corps de la requête doit être vide.

Exemple de requête

Python

from google import genai

client = genai.Client()
model_info = client.models.get(model="gemini-2.0-flash")
print(model_info)

Go

ctx := context.Background()
client, err := genai.NewClient(ctx, &genai.ClientConfig{
	APIKey:  os.Getenv("GEMINI_API_KEY"),
	Backend: genai.BackendGeminiAPI,
})
if err != nil {
	log.Fatal(err)
}

modelInfo, err := client.Models.Get(ctx, "gemini-2.0-flash", nil)
if err != nil {
	log.Fatal(err)
}

fmt.Println(modelInfo)

Coquille Rose

curl https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash?key=$GEMINI_API_KEY

Corps de la réponse

Si la requête aboutit, le corps de la réponse contient une instance de Model.

Méthode : models.list

Liste les Model disponibles via l'API Gemini.

Point de terminaison

get https://generativelanguage.googleapis.com/v1beta/models

Paramètres de requête

pageSize integer

Nombre maximal de Models à renvoyer (par page).

Si aucune valeur n'est spécifiée, 50 modèles seront renvoyés par page. Cette méthode renvoie au maximum 1 000 modèles par page, même si vous transmettez une valeur pageSize plus élevée.

pageToken string

Jeton de page reçu d'un appel models.list précédent.

Fournissez le pageToken renvoyé par une requête en tant qu'argument de la requête suivante pour récupérer la page suivante.

Lors de la pagination, tous les autres paramètres fournis à models.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.

Exemple de requête

Python

from google import genai

client = genai.Client()

print("List of models that support generateContent:\n")
for m in client.models.list():
    for action in m.supported_actions:
        if action == "generateContent":
            print(m.name)

print("List of models that support embedContent:\n")
for m in client.models.list():
    for action in m.supported_actions:
        if action == "embedContent":
            print(m.name)

Go

ctx := context.Background()
client, err := genai.NewClient(ctx, &genai.ClientConfig{
	APIKey:  os.Getenv("GEMINI_API_KEY"),
	Backend: genai.BackendGeminiAPI,
})
if err != nil {
	log.Fatal(err)
}


// Retrieve the list of models.
models, err := client.Models.List(ctx, &genai.ListModelsConfig{})
if err != nil {
	log.Fatal(err)
}

fmt.Println("List of models that support generateContent:")
for _, m := range models.Items {
	for _, action := range m.SupportedActions {
		if action == "generateContent" {
			fmt.Println(m.Name)
			break
		}
	}
}

fmt.Println("\nList of models that support embedContent:")
for _, m := range models.Items {
	for _, action := range m.SupportedActions {
		if action == "embedContent" {
			fmt.Println(m.Name)
			break
		}
	}
}

Coquille Rose

curl https://generativelanguage.googleapis.com/v1beta/models?key=$GEMINI_API_KEY

Corps de la réponse

Réponse de ListModel contenant une liste paginée de modèles.

Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :

Champs
models[] object (Model)

Modèles renvoyés.

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
{
  "models": [
    {
      object (Model)
    }
  ],
  "nextPageToken": string
}

Ressource REST : models

Ressource : Modèle

Informations sur un modèle de langage génératif.

Champs
name string

Obligatoire. Nom de ressource du Model. Consultez Variantes de modèle pour connaître toutes les valeurs autorisées.

Format : models/{model} avec une convention de dénomination {model} de :

  • "{baseModelId}-{version}"

Exemples :

  • models/gemini-1.5-flash-001
baseModelId string

Obligatoire. Nom du modèle de base. Transmettez-le à la requête de génération.

Exemples :

  • gemini-1.5-flash
version string

Obligatoire. Numéro de version du modèle.

Cela représente la version majeure (1.0 ou 1.5).

displayName string

Nom lisible du modèle. Par exemple, "Gemini 1.5 Flash".

Le nom peut comporter jusqu'à 128 caractères et inclure n'importe quel caractère UTF-8.

description string

Brève description du modèle.

inputTokenLimit integer

Nombre maximal de jetons d'entrée autorisé pour ce modèle.

outputTokenLimit integer

Nombre maximal de jetons de sortie disponibles pour ce modèle.

supportedGenerationMethods[] string

Méthodes de génération acceptées par le modèle.

Les noms de méthodes d'API correspondants sont définis sous forme de chaînes en casse Pascal, telles que generateMessage et generateContent.

thinking boolean

Indique si le modèle est compatible avec la réflexion.

temperature number

Contrôle le caractère aléatoire de la sortie.

Les valeurs peuvent être comprises dans l'intervalle [0.0,maxTemperature] (inclus). Une valeur plus élevée générera des réponses plus variées, tandis qu'une valeur plus proche de 0.0 entraînera généralement des réponses moins surprenantes de la part du modèle. Cette valeur spécifie la valeur par défaut à utiliser par le backend lors de l'appel au modèle.

maxTemperature number

Température maximale que ce modèle peut utiliser.

topP number

Pour l'échantillonnage du noyau.

L'échantillonnage du noyau prend en compte le plus petit ensemble de jetons dont la somme des probabilités est au moins égale à topP. Cette valeur spécifie la valeur par défaut à utiliser par le backend lors de l'appel au modèle.

topK integer

Pour l'échantillonnage Top-K.

L'échantillonnage top-k prend en compte l'ensemble des topK jetons les plus probables. Cette valeur spécifie la valeur par défaut à utiliser par le backend lors de l'appel au modèle. Si ce champ est vide, cela indique que le modèle n'utilise pas l'échantillonnage top-k et que topK n'est pas autorisé en tant que paramètre de génération.

Représentation JSON
{
  "name": string,
  "baseModelId": string,
  "version": string,
  "displayName": string,
  "description": string,
  "inputTokenLimit": integer,
  "outputTokenLimit": integer,
  "supportedGenerationMethods": [
    string
  ],
  "thinking": boolean,
  "temperature": number,
  "maxTemperature": number,
  "topP": number,
  "topK": integer
}