L'API Chat Completions funziona come un endpoint compatibile con OpenAI, progettato per semplificare l'interfaccia con Gemini su Vertex AI utilizzando le librerie OpenAI per Python e REST. Se utilizzi già le librerie OpenAI, puoi utilizzare questa API come modo economico per passare dalla chiamata dei modelli OpenAI a quella dei modelli ospitati su Vertex AI per confrontare output, costi e scalabilità, senza modificare il codice esistente. Se non utilizzi già le librerie OpenAI, ti consigliamo di utilizzare Google Gen AI SDK.
Modelli supportati
L'API Chat Completions supporta sia i modelli Gemini sia alcuni modelli autodistribuiti di Model Garden.
Modelli Gemini
I seguenti modelli forniscono supporto per l'API Chat Completions:
- Gemini 3 Pro Modello di anteprima
- Gemini 2.5 Pro
- Gemini 2.5 Flash Modello di anteprima
- Gemini 2.5 Flash
- Gemini 2.0 Flash
- Gemini 2.0 Flash-Lite
Modelli con deployment autonomo da Model Garden
I container Hugging Face Text Generation Interface (HF TGI) e Vertex AI Model Garden prebuilt vLLM supportano l'API Chat Completions. Tuttavia, non tutti i modelli di cui è stato eseguito il deployment in questi container supportano l'API Chat Completions. La tabella seguente include i modelli supportati più popolari per contenitore:
HF TGI |
vLLM |
|---|---|
Parametri supportati
Per i modelli Google, l'API Chat Completions supporta i seguenti parametri OpenAI. Per una descrizione di ciascun parametro, consulta la documentazione di OpenAI sulla creazione di completamenti di chat. Il supporto dei parametri per i modelli di terze parti varia in base al modello. Per vedere quali parametri sono supportati, consulta la documentazione del modello.
messages |
|
model |
|
max_completion_tokens |
Alias per max_tokens. |
max_tokens |
|
n |
|
frequency_penalty |
|
presence_penalty |
|
reasoning_effort |
Configura la quantità di tempo e il numero di token utilizzati per una risposta.
reasoning_effort o extra_body.google.thinking_config.
|
response_format |
|
seed |
Corrisponde a GenerationConfig.seed. |
stop |
|
stream |
|
temperature |
|
top_p |
|
tools |
|
tool_choice |
|
web_search_options |
Corrisponde allo strumento GoogleSearch. Non sono supportate
opzioni secondarie. |
function_call |
Questo campo è obsoleto, ma supportato per la compatibilità con le versioni precedenti. |
functions |
Questo campo è obsoleto, ma supportato per la compatibilità con le versioni precedenti. |
Se passi un parametro non supportato, questo viene ignorato.
Parametri di input multimodali
L'API Chat Completions supporta input multimodali selezionati.
input_audio |
|
image_url |
|
In generale, il parametro data può essere un URI o una combinazione di tipo MIME e
byte codificati in base64 nel formato "data:<MIME-TYPE>;base64,<BASE64-ENCODED-BYTES>".
Per un elenco completo dei tipi MIME, vedi GenerateContent.
Per ulteriori informazioni sulla codifica base64 di OpenAI, consulta la documentazione.
Per l'utilizzo, consulta i nostri esempi di input multimodale.
Parametri specifici di Gemini
Esistono diverse funzionalità supportate da Gemini che non sono disponibili nei modelli OpenAI.
Queste funzionalità possono comunque essere trasmesse come parametri, ma devono essere contenute all'interno di un
extra_content o extra_body, altrimenti verranno ignorate.
extra_body funzionalità
Includi un campo google per contenere eventuali funzionalità
extra_body specifiche di Gemini.
{
...,
"extra_body": {
"google": {
...,
// Add extra_body features here.
}
}
}
safety_settings |
Corrisponde a SafetySetting di Gemini. |
cached_content |
Corrisponde a GenerateContentRequest.cached_content di Gemini. |
thinking_config |
Corrisponde a GenerationConfig.ThinkingConfig di Gemini. |
thought_tag_marker |
Utilizzato per separare i pensieri di un modello dalle sue risposte per i modelli con la funzionalità Pensiero disponibile. Se non specificato, non verranno restituiti tag intorno ai pensieri del modello. Se presenti, le query successive rimuoveranno i tag dei pensieri e contrassegneranno i pensieri in modo appropriato per il contesto. Ciò consente di mantenere il contesto appropriato per le query successive. |
extra_part funzionalità
extra_part consente di specificare impostazioni aggiuntive a livello di Part.
Includi un campo google per contenere eventuali funzionalità
extra_part specifiche di Gemini.
{
...,
"extra_part": {
"google": {
...,
// Add extra_part features here.
}
}
}
extra_content |
Un campo per aggiungere contenuti specifici di Gemini che non devono essere ignorati. |
thought |
Questo campo indica esplicitamente se un campo è un pensiero e ha la precedenza
su thought_tag_marker. Aiuta a distinguere i diversi
passaggi di un processo di pensiero, soprattutto negli scenari di utilizzo degli strumenti in cui i passaggi intermedi
potrebbero essere scambiati per risposte finali. Se tagghi parti specifiche dell'input come pensieri, puoi indicare al modello di trattarli come ragionamenti interni anziché come risposte rivolte agli utenti. |
thought_signature |
Un campo di byte che fornisce una firma del pensiero da convalidare rispetto ai pensieri restituiti dal modello. Questo campo è diverso da
thought, che è un campo booleano. Per ulteriori informazioni, consulta la sezione
Firme del pensiero. |
Passaggi successivi
- Scopri di più su autenticazione e credenziali con la sintassi compatibile con OpenAI.
- Vedi esempi di chiamata dell'API Chat Completions con la sintassi compatibile con OpenAI.
- Consulta gli esempi di chiamata dell'API Inference con la sintassi compatibile con OpenAI.
- Consulta gli esempi di chiamata dell'API Function Calling con la sintassi compatibile con OpenAI.
- Scopri di più sull'API Gemini.
- Scopri di più sulla migrazione da Azure OpenAI all'API Gemini.