L'API Chat Completions funziona come un endpoint compatibile con OpenAI, progettato per semplificare l'interazione 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 da <x0A>chiamare i modelli OpenAI e i modelli ospitati su Vertex AI per confrontare <x0A>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 di Model Garden di cui è stato eseguito il deployment autonomo.
Modelli Gemini
I seguenti modelli forniscono supporto per l'API Chat Completions:
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 scoprire 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 trasmetti 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 al SafetySetting di Gemini. |
cached_content |
Corrisponde al GenerateContentRequest.cached_content di Gemini. |
thinking_config |
Corrisponde al 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. In questo modo viene mantenuto 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 |
In questo modo viene indicato esplicitamente se un campo è un pensiero (e ha la precedenza su
thought_tag_marker ). Questo deve essere utilizzato per specificare se una chiamata di strumento
fa parte di un pensiero o meno. |
Passaggi successivi
- Scopri di più su autenticazione e accreditamento con la sintassi compatibile con OpenAI.
- Vedi esempi di chiamate all'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.