Models

L'endpoint dei modelli consente di elencare in modo programmatico i modelli disponibili e di recuperare metadati estesi, come le funzionalità supportate e le dimensioni della finestra di contesto. Scopri di più nella guida ai modelli.

Metodo: models.get

Recupera informazioni su un Model specifico, come il numero di versione, i limiti dei token, i parametri e altri metadati. Per informazioni dettagliate sui modelli, consulta la guida ai modelli Gemini.

Endpoint

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

Parametri di percorso

name string

Obbligatorio. Il nome della risorsa del modello.

Questo nome deve corrispondere a un nome di modello restituito dal metodo models.list.

Formato: models/{model}. Il formato è models/{model}.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Esempio di richiesta

Python

from google import genai

client = genai.Client()
model_info = client.models.get(model="gemini-3.8-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-3.8-flash", nil)
if err != nil {
	log.Fatal(err)
}

fmt.Println(modelInfo)

Conchiglia

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

Metodo: models.list

Elenca i Model disponibili tramite l'API Gemini.

Endpoint

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

Parametri di query

pageSize integer

Il numero massimo di Models da restituire (per pagina).

Se non viene specificato, verranno restituiti 50 modelli per pagina. Questo metodo restituisce al massimo 1000 modelli per pagina, anche se passi un valore pageSize più grande.

pageToken string

Un token di pagina, ricevuto da una chiamata models.list precedente.

Fornisci il valore pageToken restituito da una richiesta come argomento per la richiesta successiva per recuperare la pagina successiva.

Durante l'impaginazione, tutti gli altri parametri forniti a models.list devono corrispondere alla chiamata che ha fornito il token di pagina.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Esempio di richiesta

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

Conchiglia

curl https://generativelanguage.googleapis.com/v1beta/models?key=$GEMINI_API_KEYpan>.sh

Corpo della risposta

Risposta di ListModel contenente un elenco impaginato di modelli.

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Campi

I modelli restituiti.

nextPageToken string

Un token che può essere inviato come pageToken per recuperare la pagina successiva.

Se questo campo viene omesso, non verranno visualizzate altre pagine.

Rappresentazione JSON
{
  "models": [
    {
      object (Model)
    }
  ],
  "nextPageToken": string
}

Risorsa REST: models

Risorsa: Model

Informazioni su un modello linguistico generativo.

Campi
name string

Obbligatorio. Il nome della risorsa Model. Per tutti i valori consentiti, consulta Varianti del modello.

Formato: models/{model} con una convenzione di denominazione {model} di:

  • "{baseModelId}-{version}"

Esempi:

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

Obbligatorio. Il nome del modello di base, da passare alla richiesta di generazione.

Esempi:

  • gemini-1.5-flash
version string

Obbligatorio. Il numero di versione del modello.

Rappresenta la versione principale (1.0 o 1.5)

displayName string

Il nome leggibile del modello. Ad esempio, "Gemini 1.5 Flash".

Il nome può avere fino a 128 caratteri e può contenere qualsiasi carattere UTF-8.

description string

Una breve descrizione del modello.

inputTokenLimit integer

Numero massimo di token di input consentiti per questo modello.

outputTokenLimit integer

Numero massimo di token di output disponibili per questo modello.

supportedGenerationMethods[] string

I metodi di generazione supportati dal modello.

I nomi dei metodi API corrispondenti sono definiti come stringhe in formato PascalCase, ad esempio generateMessage e generateContent.

thinking boolean

Se il modello supporta il ragionamento.

temperature number

Controlla la casualità dell'output.

I valori possono essere superiori a [0.0,maxTemperature], inclusi. Un valore più alto produrrà risposte più varie, mentre un valore più vicino a 0.0 generalmente genererà risposte meno sorprendenti da parte del modello. Questo valore specifica l'impostazione predefinita che deve essere utilizzata dal backend durante la chiamata al modello.

maxTemperature number

La temperatura massima che questo modello può utilizzare.

topP number

Per il campionamento nucleus.

Il campionamento nucleare considera l'insieme più piccolo di token la cui somma di probabilità è almeno topP. Questo valore specifica l'impostazione predefinita che deve essere utilizzata dal backend durante la chiamata al modello.

topK integer

Per il campionamento Top-K.

Il campionamento top-k prende in considerazione l'insieme dei topK token più probabili. Questo valore specifica l'impostazione predefinita che deve essere utilizzata dal backend durante la chiamata al modello. Se vuoto, indica che il modello non utilizza il campionamento top-k e topK non è consentito come parametro di generazione.

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

Metodo: models.predict

Esegue una richiesta di previsione.

Endpoint

post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:predict

Parametri di percorso

model string

Obbligatorio. Il nome del modello per la previsione. Formato: name=models/{model}. Il formato è models/{model}.

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Campi
instances[] value (Value format)

Obbligatorio. Le istanze che costituiscono l'input della chiamata di previsione.

parameters value (Value format)

Facoltativo. I parametri che regolano la chiamata di previsione.

labels map (key: string, value: string)

Facoltativo. Etichette con metadati definiti dall'utente per la richiesta.

Facoltativo. Le etichette devono seguire i requisiti standard delle etichette Cloud unificate: - Le chiavi di etichetta devono iniziare con una lettera. - I valori e le chiavi di etichetta non devono superare i 63 caratteri (punti di codice Unicode) e possono contenere solo lettere minuscole, caratteri numerici, trattini bassi e trattini. - Sono consentiti caratteri internazionali.

Utilizzo: - Identificatori di sicurezza degli aggregatori: utilizza la chiave safety_identifier (ad es. {"safety_identifier": "user_session_123"})

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Corpo della risposta

Messaggio di risposta per [PredictionService.Predict].

In caso di esito positivo, il corpo della risposta contiene dati con la seguente struttura:

Campi
predictions[] value (Value format)

Gli output della chiamata di previsione.

Rappresentazione JSON
{
  "predictions": [
    value
  ]
}

Metodo: models.predictLongRunning

Uguale a models.predict, ma restituisce un LRO.

Endpoint

post https://generativelanguage.googleapis.com/v1beta/{model=models/*}:predictLongRunning

Parametri di percorso

model string

Obbligatorio. Il nome del modello per la previsione. Formato: name=models/{model}.

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Campi
instances[] value (Value format)

Obbligatorio. Le istanze che costituiscono l'input della chiamata di previsione.

parameters value (Value format)

Facoltativo. I parametri che regolano la chiamata di previsione.

webhookConfig.uris[] string

Facoltativo. Se impostati, questi URI webhook verranno utilizzati per gli eventi webhook anziché per i webhook registrati.

labels map (key: string, value: string)

Facoltativo. Etichette con metadati definiti dall'utente per la richiesta.

Facoltativo. Le etichette devono seguire i requisiti standard delle etichette Cloud unificate: - Le chiavi di etichetta devono iniziare con una lettera. - I valori e le chiavi di etichetta non devono superare i 63 caratteri (punti di codice Unicode) e possono contenere solo lettere minuscole, caratteri numerici, trattini bassi e trattini. - Sono consentiti caratteri internazionali.

Utilizzo: - Identificatori di sicurezza degli aggregatori: utilizza la chiave safety_identifier (ad es. {"safety_identifier": "user_session_123"})

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

Corpo della risposta

In caso di esito positivo, il corpo della risposta contiene un'istanza di Operation.