Models

El extremo de modelos te permite enumerar de forma programática los modelos disponibles y recuperar metadatos extendidos, como la funcionalidad admitida y el tamaño de la ventana de contexto. Obtén más información en la guía de Modelos.

Método: models.get

Obtiene información sobre un Model específico, como su número de versión, límites de tokens, parámetros y otros metadatos. Consulta la guía de los modelos de Gemini para obtener información detallada sobre los modelos.

Extremo

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

Parámetros de ruta

name string

Obligatorio. Es el nombre del recurso del modelo.

Este nombre debe coincidir con un nombre de modelo que muestre el método models.list.

Formato: models/{model}. Toma la forma models/{model}.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Ejemplo de solicitud

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)

Almeja

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

Cuerpo de la respuesta

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene una instancia de Model.

Método: models.list

Enumera los Models disponibles a través de la API de Gemini.

Extremo

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

Parámetros de consulta

pageSize integer

Es la cantidad máxima de Models que se devolverán (por página).

Si no se especifica, se devolverán 50 modelos por página. Este método devuelve un máximo de 1,000 modelos por página, incluso si pasas un valor de pageSize más grande.

pageToken string

Un token de página, recibido desde una llamada models.list anterior.

Proporciona el pageToken que mostró una solicitud como argumento para la siguiente solicitud y, así, recuperar la página siguiente.

Cuando se pagina, todos los demás parámetros proporcionados a models.list deben coincidir con la llamada que proporcionó el token de la página.

Cuerpo de la solicitud

El cuerpo de la solicitud debe estar vacío.

Ejemplo de solicitud

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
		}
	}
}

Almeja

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

Cuerpo de la respuesta

Respuesta de ListModel que contiene una lista paginada de modelos.

Si se ejecuta correctamente, el cuerpo de la respuesta contendrá datos con la siguiente estructura:

Campos
models[] object (Model)

Son los modelos devueltos.

nextPageToken string

Un token, que se puede enviar como pageToken para recuperar la página siguiente.

Si se omite este campo, no habrá más páginas.

Representación JSON
{
  "models": [
    {
      object (Model)
    }
  ],
  "nextPageToken": string
}

Recurso de REST: models

Recurso: Modelo

Es información sobre un modelo de lenguaje generativo.

Campos
name string

Obligatorio. Es el nombre del recurso de Model. Consulta Variantes del modelo para ver todos los valores permitidos.

Formato: models/{model} con una convención de nomenclatura {model} de la siguiente manera:

  • "{baseModelId}-{version}"

Ejemplos:

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

Obligatorio. Nombre del modelo base. Pasa este valor a la solicitud de generación.

Ejemplos:

  • gemini-1.5-flash
version string

Obligatorio. Es el número de versión del modelo.

Representa la versión principal (1.0 o 1.5).

displayName string

Es el nombre del modelo legible por humanos. P.ej., "Gemini 1.5 Flash".

El nombre puede tener hasta 128 caracteres y puede constar de caracteres UTF-8.

description string

Es una breve descripción del modelo.

inputTokenLimit integer

Es la cantidad máxima de tokens de entrada permitidos para este modelo.

outputTokenLimit integer

Es la cantidad máxima de tokens de salida disponibles para este modelo.

supportedGenerationMethods[] string

Son los métodos de generación compatibles con el modelo.

Los nombres de los métodos de la API correspondientes se definen como cadenas en formato Pascal, como generateMessage y generateContent.

thinking boolean

Indica si el modelo admite el pensamiento.

temperature number

Controla la aleatoriedad del resultado.

Los valores pueden oscilar entre [0.0,maxTemperature], inclusive. Un valor más alto producirá respuestas más variadas, mientras que un valor más cercano a 0.0 generalmente generará respuestas menos sorprendentes del modelo. Este valor especifica el valor predeterminado que usará el backend cuando llame al modelo.

maxTemperature number

Es la temperatura máxima que puede usar este modelo.

topP number

Para el muestreo de núcleos.

El muestreo de núcleo considera el conjunto más pequeño de tokens cuya suma de probabilidades es al menos topP. Este valor especifica el valor predeterminado que usará el backend cuando llame al modelo.

topK integer

Es para el muestreo de Top-K.

El muestreo Top-k considera el conjunto de los topK tokens más probables. Este valor especifica el valor predeterminado que usará el backend cuando llame al modelo. Si está vacío, indica que el modelo no usa el muestreo de Top-K y que topK no se permite como parámetro de generación.

Representación 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
}