Generative Language API

A API Gemini permite que os desenvolvedores criem aplicativos de IA generativa usando modelos do Gemini. Gemini é nosso modelo mais eficiente, criado do zero para ser multimodal. Ele pode generalizar e facilmente entender, operar e combinar diferentes tipos de informações, incluindo linguagem, imagens, áudio, vídeo e código. É possível usar a API Gemini para casos de uso como raciocínio em texto e imagens, geração de conteúdo, agentes de diálogo, sistemas de resumo e classificação e muito mais.

Serviço: generativelanguage.googleapis.com

Para chamar esse serviço, recomendamos que você use as bibliotecas de cliente fornecidas pelo Google. Caso seu aplicativo precise usar suas próprias bibliotecas para chamar esse serviço, use as informações a seguir quando fizer as solicitações da API.

Documento de descoberta

Um Documento de descoberta é uma especificação legível por máquina para descrever e consumir APIs REST. Ele é usado para criar bibliotecas de cliente, plug-ins IDE e outras ferramentas que interagem com as APIs do Google. Um serviço pode fornecer vários documentos de descoberta. Este serviço apresenta os documentos de descoberta abaixo:

Endpoint de serviço

Um endpoint de serviço é um URL base que especifica o endereço de rede de um serviço de API. Um serviço pode ter vários endpoints de serviço. Este serviço tem o endpoint a seguir e todos os URIs abaixo são relativos a ele:

  • https://generativelanguage.googleapis.com

Recurso REST: v1beta.corpora

Métodos
create POST /v1beta/corpora
Cria um Corpus vazio.
delete DELETE /v1beta/{name=corpora/*}
Exclui um Corpus.
get GET /v1beta/{name=corpora/*}
Extrai informações sobre um Corpus específico.
list GET /v1beta/corpora
Lista todos os Corpora de propriedade do usuário.
patch PATCH /v1beta/{corpus.name=corpora/*}
Atualiza um Corpus.
query POST /v1beta/{name=corpora/*}:query
Executa pesquisa semântica em um Corpus.

Recurso REST: v1beta.corpora.documents

Métodos
create POST /v1beta/{parent=corpora/*}/documents
Cria um Document vazio.
delete DELETE /v1beta/{name=corpora/*/documents/*}
Exclui um Document.
get GET /v1beta/{name=corpora/*/documents/*}
Extrai informações sobre um Document específico.
list GET /v1beta/{parent=corpora/*}/documents
Lista todos os Documents em um Corpus.
patch PATCH /v1beta/{document.name=corpora/*/documents/*}
Atualiza um Document.
query POST /v1beta/{name=corpora/*/documents/*}:query
Executa pesquisa semântica em um Document.

Recurso REST: v1beta.corpora.documents.chunks

Métodos
batchCreate POST /v1beta/{parent=corpora/*/documents/*}/chunks:batchCreate
Criação em lote de Chunks.
batchDelete POST /v1beta/{parent=corpora/*/documents/*}/chunks:batchDelete
Excluir em lote Chunks.
batchUpdate POST /v1beta/{parent=corpora/*/documents/*}/chunks:batchUpdate
Atualização em lote de Chunks.
create POST /v1beta/{parent=corpora/*/documents/*}/chunks
Cria um Chunk.
delete DELETE /v1beta/{name=corpora/*/documents/*/chunks/*}
Exclui um Chunk.
get GET /v1beta/{name=corpora/*/documents/*/chunks/*}
Extrai informações sobre um Chunk específico.
list GET /v1beta/{parent=corpora/*/documents/*}/chunks
Lista todos os Chunks em um Document.
patch PATCH /v1beta/{chunk.name=corpora/*/documents/*/chunks/*}
Atualiza um Chunk.

Recurso REST: v1beta.corpora.permissions

Métodos
create POST /v1beta/{parent=corpora/*}/permissions
Crie uma permissão para um recurso específico.
delete DELETE /v1beta/{name=corpora/*/permissions/*}
Exclui a permissão.
get GET /v1beta/{name=corpora/*/permissions/*}
Extrai informações sobre uma permissão específica.
list GET /v1beta/{parent=corpora/*}/permissions
Lista as permissões para o recurso específico.
patch PATCH /v1beta/{permission.name=corpora/*/permissions/*}
Atualiza a permissão.

Recurso REST: v1beta.files

Métodos
delete DELETE /v1beta/{name=files/*}
Exclui o File.
get GET /v1beta/{name=files/*}
Extrai os metadados do File especificado.
list GET /v1beta/files
Lista os metadados dos Files de propriedade do projeto solicitante.

Recurso REST: v1beta.media

Métodos
upload POST /v1beta/files
POST /upload/v1beta/files
Cria um File.

Recurso da REST: v1beta.models

Métodos
batchEmbedContents POST /v1beta/{model=models/*}:batchEmbedContents
Gera vários embeddings a partir do modelo com texto de entrada fornecido em uma chamada síncrona.
batchEmbedText POST /v1beta/{model=models/*}:batchEmbedText
Gera vários embeddings a partir do modelo com texto de entrada fornecido em uma chamada síncrona.
countMessageTokens POST /v1beta/{model=models/*}:countMessageTokens
Executa o tokenizador de um modelo em uma string e retorna a contagem de tokens.
countTextTokens POST /v1beta/{model=models/*}:countTextTokens
Executa o tokenizador de um modelo em um texto e retorna a contagem de tokens.
countTokens POST /v1beta/{model=models/*}:countTokens
Executa o tokenizador de um modelo no conteúdo de entrada e retorna a contagem de tokens.
embedContent POST /v1beta/{model=models/*}:embedContent
Gera um embedding do modelo dada uma entrada Content.
embedText POST /v1beta/{model=models/*}:embedText
Gera um embedding do modelo a partir de uma mensagem de entrada.
generateAnswer POST /v1beta/{model=models/*}:generateAnswer
Gera uma resposta embasada a partir do modelo dada uma entrada GenerateAnswerRequest.
generateContent POST /v1beta/{model=models/*}:generateContent
Gera uma resposta do modelo dada uma entrada GenerateContentRequest.
generateMessage POST /v1beta/{model=models/*}:generateMessage
Gera uma resposta do modelo dada uma entrada MessagePrompt.
generateText POST /v1beta/{model=models/*}:generateText
Gera uma resposta do modelo com base em uma mensagem de entrada.
get GET /v1beta/{name=models/*}
Recebe informações sobre um modelo específico.
list GET /v1beta/models
Lista os modelos disponíveis por meio da API.
streamGenerateContent POST /v1beta/{model=models/*}:streamGenerateContent
Gera uma resposta transmitida do modelo dada uma entrada GenerateContentRequest.

Recurso REST: v1beta.tunedModels

Métodos
create POST /v1beta/tunedModels
Cria um modelo ajustado.
delete DELETE /v1beta/{name=tunedModels/*}
Exclui um modelo ajustado.
generateContent POST /v1beta/{model=tunedModels/*}:generateContent
Gera uma resposta do modelo dada uma entrada GenerateContentRequest.
generateText POST /v1beta/{model=tunedModels/*}:generateText
Gera uma resposta do modelo com base em uma mensagem de entrada.
get GET /v1beta/{name=tunedModels/*}
Recebe informações sobre um TunedModel específico.
list GET /v1beta/tunedModels
Lista os modelos ajustados pertencentes ao usuário.
patch PATCH /v1beta/{tunedModel.name=tunedModels/*}
Atualiza um modelo ajustado.
transferOwnership POST /v1beta/{name=tunedModels/*}:transferOwnership
Transfere a propriedade do modelo ajustado.

Recurso REST: v1beta.tunedModels.permissions

Métodos
create POST /v1beta/{parent=tunedModels/*}/permissions
Crie uma permissão para um recurso específico.
delete DELETE /v1beta/{name=tunedModels/*/permissions/*}
Exclui a permissão.
get GET /v1beta/{name=tunedModels/*/permissions/*}
Extrai informações sobre uma permissão específica.
list GET /v1beta/{parent=tunedModels/*}/permissions
Lista as permissões para o recurso específico.
patch PATCH /v1beta/{permission.name=tunedModels/*/permissions/*}
Atualiza a permissão.

Recurso da REST: v1.models

Métodos
batchEmbedContents POST /v1/{model=models/*}:batchEmbedContents
Gera vários embeddings a partir do modelo com texto de entrada fornecido em uma chamada síncrona.
countTokens POST /v1/{model=models/*}:countTokens
Executa o tokenizador de um modelo no conteúdo de entrada e retorna a contagem de tokens.
embedContent POST /v1/{model=models/*}:embedContent
Gera um embedding do modelo dada uma entrada Content.
generateContent POST /v1/{model=models/*}:generateContent
Gera uma resposta do modelo dada uma entrada GenerateContentRequest.
get GET /v1/{name=models/*}
Recebe informações sobre um modelo específico.
list GET /v1/models
Lista os modelos disponíveis por meio da API.
streamGenerateContent POST /v1/{model=models/*}:streamGenerateContent
Gera uma resposta transmitida do modelo dada uma entrada GenerateContentRequest.

Recurso da REST: v1.operations

Métodos
delete DELETE /v1/{name=operations/**}
Exclui uma operação de longa duração.
list GET /v1/{name}
Lista as operações que correspondem ao filtro especificado na solicitação.

Recurso REST: v1.tunedModels

Métodos
generateContent POST /v1/{model=tunedModels/*}:generateContent
Gera uma resposta do modelo dada uma entrada GenerateContentRequest.

Recurso REST: v1.tunedModels.operations

Métodos
cancel POST /v1/{name=tunedModels/*/operations/*}:cancel
Inicia o cancelamento assíncrono de uma operação de longa duração.
get GET /v1/{name=tunedModels/*/operations/*}
Recebe o estado mais recente de uma operação de longa duração.
list GET /v1/{name=tunedModels/*}/operations
Lista as operações que correspondem ao filtro especificado na solicitação.