A API Chat Completions funciona como um endpoint compatível com a OpenAI, projetado para facilitar a interface com o Gemini na Vertex AI usando as bibliotecas da OpenAI para Python e REST. Se você já estiver usando as bibliotecas OpenAI, poderá usar essa API como uma maneira econômica de alternar entre chamar modelos OpenAI e modelos hospedados do Vertex AI para comparar resultados, custos e escalabilidade, sem mudar o código atual. Se você ainda não usa as bibliotecas OpenAI, recomendamos usar o SDK do Google Gen AI.
Modelos compatíveis
A API Chat Completions oferece suporte a modelos do Gemini e a alguns modelos autoimplantados do Model Garden.
Modelos do Gemini
Os modelos a seguir oferecem suporte à API Chat Completions:
Modelos autoimplantados do Model Garden
O Interface de geração de texto Hugging Face (HF TGI) (link em inglês) e os contêineres de vLLM pré-criados do Model Garden da Vertex AI têm suporte à API Chat Completions. No entanto, nem todos os modelos implantados nesses contêineres são compatíveis com a API Chat Completions. A tabela a seguir inclui os modelos com suporte mais conhecidos por contêiner:
HF TGI |
vLLM |
---|---|
Parâmetros aceitos
Para modelos do Google, a API Chat Completions é compatível com as seguintes APIs parâmetros. Para ver uma descrição de cada parâmetro, consulte a documentação da OpenAI sobre Como criar conclusões de chat. A compatibilidade com parâmetros para modelos de terceiros varia de acordo com o modelo. Para saber quais parâmetros são aceitos, consulte a documentação do modelo.
messages |
|
model |
|
max_tokens |
|
n |
|
frequency_penalty |
|
presence_penalty |
|
response_format |
|
stop |
|
stream |
|
temperature |
|
top_p |
|
tools |
|
tool_choice |
|
function_call |
Este campo está obsoleto, mas tem suporte para compatibilidade com versões anteriores. |
functions |
Este campo está obsoleto, mas tem suporte para compatibilidade com versões anteriores. |
Se você passar algum parâmetro não suportado, ele será ignorado.
Parâmetros de entrada multimodais
A API Chat Completions oferece suporte a algumas entradas multimodais.
input_audio |
|
image_url |
|
Em geral, o parâmetro data
pode ser um URI ou uma combinação de tipo MIME e
bytes codificados em base64 no formato "data:<MIME-TYPE>;base64,<BASE64-ENCODED-BYTES>"
.
Para conferir uma lista completa de tipos MIME, consulte GenerateContent
.
Para mais informações sobre a codificação base64 do OpenAI, consulte a documentação.
Para saber como usar, consulte nossos exemplos de entrada multimodal.
Parâmetros específicos do Gemini
O Gemini oferece vários recursos que não estão disponíveis nos modelos da OpenAI.
Esses recursos ainda podem ser transmitidos como parâmetros, mas precisam estar contidos em um
extra_content
ou extra_body
, caso contrário, eles serão ignorados.
extra_body
recursos
safety_settings |
Isso corresponde a SafetySetting do Gemini. |
cached_content |
Isso corresponde a GenerateContentRequest.cached_content do Gemini. |
thought_tag_marker |
Usado para separar os pensamentos de um modelo das respostas dele para modelos com o recurso de Pensamento disponível. Se não for especificado, nenhuma tag será retornada em relação aos pensamentos do modelo. Se estiverem presentes, as consultas subsequentes vão remover as tags de pensamento e marcar os pensamentos de forma adequada para o contexto. Isso ajuda a preservar o contexto adequado para consultas subsequentes. |
A seguir
- Saiba mais sobre autenticação e credenciais com a sintaxe compatível com a OpenAI.
- Confira exemplos de como chamar a API Chat Completions com a sintaxe compatível com OpenAI.
- Veja exemplos de como chamar a API Inference com a sintaxe compatível com OpenAI.
- Veja exemplos de como chamar a API Function Calling com sintaxe compatível com OpenAI.
- Saiba mais sobre a API Gemini.
- Saiba mais sobre como migrar do Azure OpenAI para a API Gemini.