Generative Language API

A API Gemini permite que os desenvolvedores criem aplicativos de IA generativa usando modelos do Gemini. O Gemini é nosso modelo mais eficiente, criado do zero para ser multimodal. Ele pode generalizar e entender perfeitamente, operar e combinar diferentes tipos de informações, incluindo idiomas, imagens, áudio, vídeo e código. Você pode usar a API Gemini para casos de uso como raciocínio em textos 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 de 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.cachedContents

Métodos
create POST /v1beta/cachedContents
Cria o recurso CachedContent.
delete DELETE /v1beta/{name=cachedContents/*}
Exclui o recurso CachedContent.
get GET /v1beta/{name=cachedContents/*}
Lê o recurso CachedContent.
list GET /v1beta/cachedContents
Lista CachedContents.
patch PATCH /v1beta/{cachedContent.name=cachedContents/*}
Atualiza o recurso CachedContent (somente a expiração é atualizável).

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/*}
Recebe 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 a pesquisa semântica em uma 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/*}
Recebe 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 a pesquisa semântica em uma Document.

Recurso REST: v1beta.corpora.documents.chunks

Métodos
batchCreate POST /v1beta/{parent=corpora/*/documents/*}/chunks:batchCreate
Crie Chunks em lote.
batchDelete POST /v1beta/{parent=corpora/*/documents/*}/chunks:batchDelete
Exclua Chunks em lote.
batchUpdate POST /v1beta/{parent=corpora/*/documents/*}/chunks:batchUpdate
Chunks de atualização em lote.
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/*}
Recebe 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
Cria 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 do 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/*}
Recebe os metadados do File especificado.
list GET /v1beta/files
Lista os metadados de Files pertencentes ao 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 do modelo com base no texto de entrada fornecido em uma chamada síncrona.
batchEmbedText POST /v1beta/{model=models/*}:batchEmbedText
Gera vários embeddings do modelo com base no 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 que recebe um Content de entrada.
embedText POST /v1beta/{model=models/*}:embedText
Gera um embedding do modelo recebido com uma mensagem de entrada.
generateAnswer POST /v1beta/{model=models/*}:generateAnswer
Gera uma resposta embasada do modelo com base em um GenerateAnswerRequest de entrada.
generateContent POST /v1beta/{model=models/*}:generateContent
Gera uma resposta do modelo que recebe uma entrada GenerateContentRequest.
generateMessage POST /v1beta/{model=models/*}:generateMessage
Gera uma resposta do modelo que recebe uma entrada MessagePrompt.
generateText POST /v1beta/{model=models/*}:generateText
Gera uma resposta do modelo que recebe 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 pela API.
streamGenerateContent POST /v1beta/{model=models/*}:streamGenerateContent
Gera uma resposta em streaming a partir do modelo que recebe 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 que recebe um GenerateContentRequest de entrada.
generateText POST /v1beta/{model=tunedModels/*}:generateText
Gera uma resposta do modelo que recebe 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 do 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
Cria 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 do 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 do modelo com base no 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 que recebe um Content de entrada.
generateContent POST /v1/{model=models/*}:generateContent
Gera uma resposta do modelo que recebe 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 pela API.
streamGenerateContent POST /v1/{model=models/*}:streamGenerateContent
Gera uma resposta em streaming a partir do modelo que recebe 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 que recebe uma entrada GenerateContentRequest.

Recurso REST: v1.tunedModels.operations

Métodos
cancel POST /v1/{name=tunedModels/*/operations/*}:cancel
Inicia o cancelamento assíncrono em 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.