A API Gemini é compatível com o modo em lote, que permite processar várias solicitações em uma única chamada. Para mais detalhes, consulte o guia do modo em lote.
Método: models.batchGenerateContent
- Endpoint
- Parâmetros de caminho
- Corpo da solicitação
- Corpo da resposta
- Escopos de autorização
- GenerateContentRequest
Enfileira um lote de solicitações models.generateContent para processamento em lote.
Endpoint
posthttps: / /generativelanguage.googleapis.com /v1beta /{batch.model=models /*}:batchGenerateContent
Parâmetros de caminho
batch.model
string
Obrigatório. O nome do Model
a ser usado para gerar a conclusão.
Formato: models/{model}
. Ele tem o formato models/{model}
.
Corpo da solicitação
O corpo da solicitação contém dados com a seguinte estrutura:
batch.name
string
Apenas saída. Identificador. Nome do recurso do lote.
Formato: batches/{batch_id}
.
batch.displayName
string
Obrigatório. O nome definido pelo usuário para este lote.
batch.inputConfig
object (InputConfig
)
Obrigatório. Configuração de entrada das instâncias em que o processamento em lote é realizado.
batch.output
object (GenerateContentBatchOutput
)
Apenas saída. A saída da solicitação em lote.
batch.createTime
string (Timestamp
format)
Apenas saída. A hora em que o lote foi criado.
Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
ou "2014-10-02T15:01:23+05:30"
.
batch.endTime
string (Timestamp
format)
Apenas saída. O horário em que o processamento em lote foi concluído.
Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
ou "2014-10-02T15:01:23+05:30"
.
batch.updateTime
string (Timestamp
format)
Apenas saída. A hora em que o lote foi atualizado pela última vez.
Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
ou "2014-10-02T15:01:23+05:30"
.
batch.batchStats
object (BatchStats
)
Apenas saída. Estatísticas sobre o lote.
batch.state
enum (BatchState
)
Apenas saída. O estado do lote.
batch.priority
string (int64 format)
Opcional. A prioridade do lote. Os lotes com um valor de prioridade mais alto são processados antes dos lotes com um valor de prioridade mais baixo. Valores negativos são permitidos. O padrão é 0.
Corpo da resposta
Se a solicitação for bem-sucedida, o corpo da resposta conterá uma instância de Operation
.
GenerateContentRequest
Solicitação para gerar uma conclusão do modelo.
model
string
Obrigatório. O nome do Model
a ser usado para gerar a conclusão.
Formato: models/{model}
.
tools[]
object (Tool
)
Opcional. Uma lista de Tools
que o Model
pode usar para gerar a próxima resposta.
Uma Tool
é uma parte do código que permite ao sistema interagir com sistemas externos para realizar uma ação ou conjunto de ações fora do conhecimento e do escopo do Model
. Os Tool
s aceitos são Function
e codeExecution
. Consulte os guias Chamada de função e Execução de código para saber mais.
toolConfig
object (ToolConfig
)
Opcional. Configuração da ferramenta para qualquer Tool
especificado na solicitação. Consulte o guia de chamada de função para ver um exemplo de uso.
safetySettings[]
object (SafetySetting
)
Opcional. Uma lista de instâncias SafetySetting
exclusivas para bloquear conteúdo não seguro.
Isso será aplicado no GenerateContentRequest.contents
e no GenerateContentResponse.candidates
. Não pode haver mais de uma configuração para cada tipo de SafetyCategory
. A API vai bloquear qualquer conteúdo e resposta que não atender aos limites definidos por essas configurações. Essa lista substitui as configurações padrão de cada SafetyCategory
especificado em "safetySettings". Se não houver um SafetySetting
para um determinado SafetyCategory
fornecido na lista, a API vai usar a configuração de segurança padrão para essa categoria. As categorias de dano HARM_CATEGORY_HATE_SPEECH, HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_DANGEROUS_CONTENT, HARM_CATEGORY_HARASSMENT e HARM_CATEGORY_CIVIC_INTEGRITY são compatíveis. Consulte o guia para informações detalhadas sobre as configurações de segurança disponíveis. Consulte também as orientações de segurança para saber como incorporar considerações de segurança aos seus aplicativos de IA.
systemInstruction
object (Content
)
Opcional. O desenvolvedor definiu instruções do sistema. No momento, apenas texto.
generationConfig
object (GenerationConfig
)
Opcional. Opções de configuração para geração e saídas de modelos.
cachedContent
string
Opcional. O nome do conteúdo em cache a ser usado como contexto para veicular a previsão. Formato: cachedContents/{cachedContent}
Representação JSON |
---|
{ "model": string, "contents": [ { object ( |
GenerateContentBatch
- Representação JSON
- InputConfig
- InlinedRequests
- InlinedRequest
- GenerateContentBatchOutput
- InlinedResponses
- InlinedResponse
- BatchStats
- BatchState
Um recurso que representa um lote de solicitações GenerateContent.
model
string
Obrigatório. O nome do Model
a ser usado para gerar a conclusão.
Formato: models/{model}
.
name
string
Apenas saída. Identificador. Nome do recurso do lote.
Formato: batches/{batch_id}
.
displayName
string
Obrigatório. O nome definido pelo usuário para este lote.
inputConfig
object (InputConfig
)
Obrigatório. Configuração de entrada das instâncias em que o processamento em lote é realizado.
output
object (GenerateContentBatchOutput
)
Apenas saída. A saída da solicitação em lote.
createTime
string (Timestamp
format)
Apenas saída. A hora em que o lote foi criado.
Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
ou "2014-10-02T15:01:23+05:30"
.
endTime
string (Timestamp
format)
Apenas saída. O horário em que o processamento em lote foi concluído.
Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
ou "2014-10-02T15:01:23+05:30"
.
updateTime
string (Timestamp
format)
Apenas saída. A hora em que o lote foi atualizado pela última vez.
Usa o padrão RFC 3339, em que a saída gerada é sempre convertida em Z e tem 0, 3, 6 ou 9 dígitos fracionários. Além de "Z", outros ajustes também são aceitos. Exemplos: "2014-10-02T15:01:23Z"
, "2014-10-02T15:01:23.045123456Z"
ou "2014-10-02T15:01:23+05:30"
.
batchStats
object (BatchStats
)
Apenas saída. Estatísticas sobre o lote.
state
enum (BatchState
)
Apenas saída. O estado do lote.
priority
string (int64 format)
Opcional. A prioridade do lote. Os lotes com um valor de prioridade mais alto são processados antes dos lotes com um valor de prioridade mais baixo. Valores negativos são permitidos. O padrão é 0.
Representação JSON |
---|
{ "model": string, "name": string, "displayName": string, "inputConfig": { object ( |
InputConfig
Configura a entrada para a solicitação em lote.
source
Union type
source
pode ser apenas de um dos tipos a seguir:fileName
string
O nome do File
que contém as solicitações de entrada.
requests
object (InlinedRequests
)
As solicitações a serem processadas no lote.
Representação JSON |
---|
{
// source
"fileName": string,
"requests": {
object ( |
InlinedRequests
As solicitações a serem processadas no lote, se fornecidas como parte da solicitação de criação do lote.
requests[]
object (InlinedRequest
)
Obrigatório. As solicitações a serem processadas no lote.
Representação JSON |
---|
{
"requests": [
{
object ( |
InlinedRequest
A solicitação a ser processada no lote.
request
object (GenerateContentRequest
)
Obrigatório. A solicitação a ser processada no lote.
metadata
object (Struct
format)
Opcional. Os metadados a serem associados à solicitação.
Representação JSON |
---|
{
"request": {
object ( |
GenerateContentBatchOutput
A saída de uma solicitação em lote. Isso é retornado no campo BatchGenerateContentResponse ou GenerateContentBatch.output.
output
Union type
output
pode ser apenas de um dos tipos a seguir:responsesFile
string
Apenas saída. O ID do arquivo que contém as respostas. O arquivo será um JSONL com uma única resposta por linha. As respostas serão mensagens GenerateContentResponse formatadas como JSON. As respostas serão escritas na mesma ordem das solicitações de entrada.
inlinedResponses
object (InlinedResponses
)
Apenas saída. As respostas às solicitações no lote. Retornado quando o lote foi criado usando solicitações inline. As respostas vão estar na mesma ordem das solicitações de entrada.
Representação JSON |
---|
{
// output
"responsesFile": string,
"inlinedResponses": {
object ( |
InlinedResponses
As respostas às solicitações no lote.
inlinedResponses[]
object (InlinedResponse
)
Apenas saída. As respostas às solicitações no lote.
Representação JSON |
---|
{
"inlinedResponses": [
{
object ( |
InlinedResponse
A resposta a uma única solicitação no lote.
metadata
object (Struct
format)
Apenas saída. Os metadados associados à solicitação.
output
Union type
output
pode ser apenas de um dos tipos a seguir:error
object (Status
)
Apenas saída. O erro encontrado ao processar a solicitação.
response
object (GenerateContentResponse
)
Apenas saída. A resposta à solicitação.
Representação JSON |
---|
{ "metadata": { object }, // output "error": { object ( |
BatchStats
Estatísticas sobre o lote.
requestCount
string (int64 format)
Apenas saída. O número de solicitações no lote.
successfulRequestCount
string (int64 format)
Apenas saída. O número de solicitações processadas com êxito.
failedRequestCount
string (int64 format)
Apenas saída. O número de solicitações que não foram processadas.
pendingRequestCount
string (int64 format)
Apenas saída. O número de solicitações que ainda estão pendentes de processamento.
Representação JSON |
---|
{ "requestCount": string, "successfulRequestCount": string, "failedRequestCount": string, "pendingRequestCount": string } |
BatchState
O estado do lote.
Tipos enumerados | |
---|---|
BATCH_STATE_UNSPECIFIED |
O estado do lote não foi especificado. |
BATCH_STATE_PENDING |
O serviço está se preparando para executar o lote. |
BATCH_STATE_RUNNING |
O lote está em andamento. |
BATCH_STATE_SUCCEEDED |
O lote foi concluído. |
BATCH_STATE_FAILED |
O lote falhou. |
BATCH_STATE_CANCELLED |
O lote foi cancelado. |
BATCH_STATE_EXPIRED |
O lote expirou. |
Recurso REST: lotes
Recurso: operação
Este recurso representa uma operação de longa duração resultante de uma chamada de API de rede.
name
string
O nome atribuído pelo servidor, que é exclusivo somente no mesmo serviço que o retorna originalmente. Se você usar o mapeamento padrão de HTTP, name
precisa ser um nome de recurso que termine com operations/{unique_id}
.
metadata
object
Metadados específicos do serviço associados à operação. Eles geralmente contêm informações sobre o progresso e metadados comuns, como a hora da criação. Em alguns serviços, esses metadados talvez não sejam fornecidos. Em qualquer método que retorna uma operação de longa duração, o tipo de metadados, se houver, deve ser documentado.
Um objeto contendo campos de um tipo arbitrário. Um campo adicional "@type"
contém uma URI que identifica o tipo. Exemplo: { "id": 1234, "@type": "types.example.com/standard/id" }
.
done
boolean
Se o valor for false
, significa que a operação ainda está em andamento. Se for true
, a operação será concluída e error
ou response
estarão disponíveis.
result
Union type
error
ou uma response
válida. Se done
== false
, nem error
ou response
estão definidos. Se done
== true
, será possível definir exatamente um entre error
ou response
. Alguns serviços podem não fornecer o resultado. result
pode ser apenas um dos seguintes:error
object (Status
)
Resultado do erro da operação em caso de falha ou cancelamento.
response
object
A resposta normal e bem-sucedida da operação. Se o método original não retornar dados em caso de êxito, como Delete
, a resposta será google.protobuf.Empty
. Se o método original for Get
/Create
/Update
padrão, a resposta será o recurso. Para outros métodos, a resposta precisa ser do tipo XxxResponse
, em que Xxx
é o nome do método original. Por exemplo, se o nome do método original for TakeSnapshot()
, o tipo inferido de resposta será TakeSnapshotResponse
.
Um objeto contendo campos de um tipo arbitrário. Um campo adicional "@type"
contém uma URI que identifica o tipo. Exemplo: { "id": 1234, "@type": "types.example.com/standard/id" }
.
Representação JSON |
---|
{
"name": string,
"metadata": {
"@type": string,
field1: ...,
...
},
"done": boolean,
// result
"error": {
object ( |
Método: batches.get
Recebe o estado mais recente de uma operação de longa duração. Os clientes usam este método para pesquisar o resultado da operação em intervalos, conforme recomendado pelo serviço da API.
Endpoint
gethttps: / /generativelanguage.googleapis.com /v1beta /{name=batches /*}
Parâmetros de caminho
name
string
O nome do recurso de operação. Ele tem o formato batches/{batches}
.
Corpo da solicitação
O corpo da solicitação precisa estar vazio.
Corpo da resposta
Se a solicitação for bem-sucedida, o corpo da resposta conterá uma instância de Operation
.
Método: batches.list
- Endpoint
- Parâmetros de caminho
- Parâmetros de consulta
- Corpo da solicitação
- Corpo da resposta
- Escopos de autorização
Lista as operações correspondentes ao filtro especificado na solicitação. Se o servidor não for compatível com esse método, ele retornará UNIMPLEMENTED
.
Endpoint
gethttps: / /generativelanguage.googleapis.com /v1beta /{name=batches}
Parâmetros de caminho
name
string
O nome do recurso pai da operação. Ele tem o formato batches
.
Parâmetros de consulta
filter
string
O filtro de lista padrão.
pageSize
integer
O tamanho de página de lista padrão.
pageToken
string
O token de página de lista padrão.
Corpo da solicitação
O corpo da solicitação precisa estar vazio.
Corpo da resposta
Se a solicitação for bem-sucedida, o corpo da resposta conterá uma instância de ListOperationsResponse
.
Método: batches.cancel
Inicia o cancelamento assíncrono de uma operação de longa duração. São feitas várias tentativas para cancelar a operação no servidor, mas o sucesso não é garantido. Se o servidor não for compatível com esse método, ele retornará google.rpc.Code.UNIMPLEMENTED
. Os clientes podem usar Operations.GetOperation
ou outros métodos para verificar se o cancelamento ocorreu ou se a operação foi concluída mesmo com o cancelamento. Caso o cancelamento ocorra, a operação não será excluída. Em vez disso, ela se tornará uma operação com um valor Operation.error
que tem um google.rpc.Status.code
de 1
, correspondente a Code.CANCELLED
.
Endpoint
posthttps: / /generativelanguage.googleapis.com /v1beta /{name=batches /*}:cancel
Parâmetros de caminho
name
string
O nome do recurso de operação a ser cancelado. Ele tem o formato batches/{batches}
.
Corpo da solicitação
O corpo da solicitação precisa estar vazio.
Corpo da resposta
Se não houver nenhum problema, o corpo da resposta será um objeto JSON vazio.
Método: batches.delete
Exclui uma operação de longa duração. Este método indica que o cliente não está mais interessado no resultado da operação. Ele não cancela a operação. Se o servidor não for compatível com esse método, ele retornará google.rpc.Code.UNIMPLEMENTED
.
Endpoint
deletehttps: / /generativelanguage.googleapis.com /v1beta /{name=batches /*}
Parâmetros de caminho
name
string
O nome do recurso de operação que será excluído. Ele tem o formato batches/{batches}
.
Corpo da solicitação
O corpo da solicitação precisa estar vazio.
Corpo da resposta
Se não houver nenhum problema, o corpo da resposta será um objeto JSON vazio.