Models

Конечная точка моделей позволяет программно выводить список доступных моделей и получать расширенные метаданные, такие как поддерживаемые функции и размеры контекстного окна. Подробнее см. в руководстве по моделям .

Метод: models.get

Получает информацию о конкретной Model , такую как номер версии, ограничения по токенам, параметры и другие метаданные. Подробную информацию о модели см. в руководстве по моделям Gemini .

Конечная точка

получить https: / /generativelanguage.googleapis.com /v1beta /{name=models /*}

Параметры пути

string name

Обязательно. Имя ресурса модели.

Это имя должно совпадать с именем модели, возвращаемым методом models.list .

Формат: models/{model} Он имеет вид models/{model} .

Текст запроса

Тело запроса должно быть пустым.

Пример запроса

Питон

from google import genai

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

Идти

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)

Оболочка

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

Тело ответа

В случае успеха тело ответа содержит экземпляр Model .

Метод: models.list

Перечисляет Model , доступные через API Gemini.

Конечная точка

получить https: / /generativelanguage.googleapis.com /v1beta /models

Параметры запроса

pageSize integer

Максимальное количество возвращаемых Models (на страницу).

Если не указано, будет возвращено 50 моделей на страницу. Этот метод возвращает не более 1000 моделей на страницу, даже если вы передадите большее значение pageSize.

string pageToken

Токен страницы, полученный от предыдущего вызова models.list .

Предоставьте pageToken , возвращенный одним запросом, в качестве аргумента следующему запросу для получения следующей страницы.

При пагинации все остальные параметры, предоставленные models.list должны соответствовать вызову, который предоставил токен страницы.

Текст запроса

Тело запроса должно быть пустым.

Пример запроса

Питон

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)

Идти

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

Оболочка

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

Тело ответа

Ответ от ListModel , содержащий постраничный список моделей.

В случае успеха тело ответа содержит данные со следующей структурой:

Поля
models[] object ( Model )

Возвращенные модели.

string nextPageToken

Токен, который можно отправить как pageToken для получения следующей страницы.

Если это поле пропущено, страниц больше нет.

JSON-представление
{
  "models": [
    {
      object (Model)
    }
  ],
  "nextPageToken": string
}

Ресурс REST: модели

Ресурс: Модель

Информация о генеративной языковой модели.

Поля
string name

Обязательно. Имя ресурса Model . Все допустимые значения см. в разделе «Варианты модели» .

Формат: models/{model} с соглашением об именовании {model} :

  • "{baseModelId}-{version}"

Примеры:

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

Обязательно. Имя базовой модели, передайте его в запрос на генерацию.

Примеры:

  • gemini-1.5-flash
string version

Обязательно. Номер версии модели.

Это представляет основную версию ( 1.0 или 1.5 )

string displayName

Удобочитаемое название модели. Например, «Gemini 1.5 Flash».

Имя может иметь длину до 128 символов и может состоять из любых символов UTF-8.

string description

Краткое описание модели.

inputTokenLimit integer

Максимальное количество входных токенов, разрешенное для этой модели.

outputTokenLimit integer

Максимальное количество выходных токенов, доступных для этой модели.

string supportedGenerationMethods[]

Поддерживаемые моделью методы генерации.

Соответствующие имена методов API определяются как строки регистра Pascal, например generateMessage и generateContent .

thinking boolean

Поддерживает ли модель мышление.

temperature number

Управляет случайностью выходных данных.

Значения могут находиться в диапазоне [0.0,maxTemperature] включительно. Более высокое значение приведет к более разнообразным ответам, в то время как значение, близкое к 0.0 , обычно приводит к менее неожиданным ответам модели. Это значение определяет значение по умолчанию, которое будет использоваться бэкендом при вызове модели.

maxTemperature number температур

Максимальная температура, которую может использовать эта модель.

number topP

Для отбора проб ядра .

Ядерная выборка учитывает наименьший набор токенов, сумма вероятностей которых не менее topP . Это значение определяет значение по умолчанию, которое будет использоваться бэкендом при вызове модели.

topK integer

Для выборки Top-k.

Выборка top-k учитывает набор наиболее вероятных токенов topK . Это значение определяет значение по умолчанию, которое будет использоваться бэкендом при вызове модели. Если значение пустое, это означает, что модель не использует выборку top-k, и topK не допускается в качестве параметра генерации.

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
}

Метод: models.predict

Выполняет запрос прогнозирования.

Конечная точка

пост https: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:predict

Параметры пути

string model

Обязательно. Имя модели для прогнозирования. Формат: name=models/{model} . Имеет вид models/{model} .

Текст запроса

Тело запроса содержит данные со следующей структурой:

Поля
значение instances[] value ( Value format)

Обязательно. Экземпляры, являющиеся входными данными для вызова прогнозирования.

значение parameters value ( Value format)

Необязательно. Параметры, управляющие вызовом прогноза.

Тело ответа

Ответное сообщение для [PredictionService.Predict].

В случае успеха тело ответа содержит данные со следующей структурой:

Поля
predictions[] value ( Value format)

Результаты прогнозного вызова.

JSON-представление
{
  "predictions": [
    value
  ]
}

Метод: models.predictLongRunning

То же, что и models.predict, но возвращает LRO.

Конечная точка

пост https: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:predictLongRunning

Параметры пути

string model

Обязательно. Имя модели для прогнозирования. Формат: name=models/{model} .

Текст запроса

Тело запроса содержит данные со следующей структурой:

Поля
значение instances[] value ( Value format)

Обязательно. Экземпляры, являющиеся входными данными для вызова прогнозирования.

значение parameters value ( Value format)

Необязательно. Параметры, управляющие вызовом прогноза.

Тело ответа

В случае успеха тело ответа содержит экземпляр Operation .