A API Multimodal Live é uma API de streaming bidirecional de baixa latência que oferece suporte a entradas de streaming de áudio e vídeo e pode gerar streams de saída multimodais (áudio e texto).
Lista de parâmetros
BidiGenerateContentClientContent
Atualização incremental da conversa atual enviada pelo cliente. Todo o conteúdo aqui é adicionado incondicionalmente ao histórico de conversas e usado como parte do comando para o modelo gerar conteúdo.
Uma mensagem aqui vai interromper qualquer geração de modelo atual.
Campos | |
---|---|
turns[] |
Opcional. O conteúdo anexado à conversa atual com o modelo. Para consultas de turno único, esta é uma instância única. Para consultas com várias interações, esse é um campo repetido que contém o histórico da conversa e a solicitação mais recente. |
turn_ |
Opcional. Se verdadeiro, indica que a geração de conteúdo do servidor precisa começar com o comando acumulado. Caso contrário, o servidor aguarda outras mensagens antes de iniciar a geração. |
BidiGenerateContentClientMessage
Mensagens enviadas pelo cliente na chamada BidiGenerateContent.
Campos | |
---|---|
Campo de união message_type . É o tipo de mensagem. message_type pode ser apenas de um dos tipos a seguir: |
|
setup |
Opcional. Configuração da sessão enviada na primeira e única mensagem do cliente. |
client_ |
Opcional. Atualização incremental da conversa atual enviada pelo cliente. |
realtime_ |
Opcional. Entrada do usuário enviada em tempo real. |
tool_ |
Opcional. Resposta a uma |
BidiGenerateContentRealtimeInput
Entrada do usuário enviada em tempo real.
Isso é diferente de BidiGenerateContentClientContent
de algumas maneiras:
- Podem ser enviados continuamente sem interrupção para a geração de modelos.
- Se for necessário misturar dados intercalados entre
BidiGenerateContentClientContent
eBidiGenerateContentRealtimeInput
, o servidor vai tentar otimizar a melhor resposta, mas não há garantias. - O fim da vez não é especificado explicitamente, mas é derivado da atividade do usuário (por exemplo, fim da fala).
- Mesmo antes do fim da jogada, os dados são processados de forma incremental para otimizar o início rápido da resposta do modelo.
- É sempre uma entrada direta do usuário enviada em tempo real. Podem ser enviadas continuamente sem interrupções. O modelo detecta automaticamente o início e o fim da fala do usuário e inicia ou encerra a transmissão da resposta de acordo com isso. Os dados são processados de forma incremental à medida que chegam, minimizando a latência.
Campos | |
---|---|
media_ |
Opcional. Dados de bytes inline para entrada de mídia. |
BidiGenerateContentServerContent
Atualização incremental do servidor gerada pelo modelo em resposta às mensagens do cliente.
O conteúdo é gerado o mais rápido possível, e não em tempo real. Os clientes podem escolher armazenar em buffer e reproduzir em tempo real.
Campos | |
---|---|
turn_ |
Apenas saída. Se verdadeiro, indica que a geração do modelo foi concluída. A geração só vai começar em resposta a outras mensagens do cliente. Pode ser definido com |
interrupted |
Apenas saída. Se verdadeiro, indica que uma mensagem do cliente interrompeu a geração de modelos atual. Se o cliente estiver reproduzindo o conteúdo em tempo real, esse é um bom sinal para interromper e esvaziar a fila de reprodução atual. |
model_ |
Apenas saída. O conteúdo que o modelo gerou como parte da conversa atual com o usuário. |
BidiGenerateContentServerMessage
Mensagem de resposta para a chamada BidiGenerateContent.
Campos | |
---|---|
Campo de união message_type . É o tipo de mensagem. message_type pode ser apenas de um dos tipos a seguir: |
|
setup_ |
Apenas saída. Enviada em resposta a uma mensagem |
server_ |
Apenas saída. Conteúdo gerado pelo modelo em resposta às mensagens do cliente. |
tool_ |
Apenas saída. Solicitar que o cliente execute o |
tool_ |
Apenas saída. Notificação ao cliente de que um |
BidiGenerateContentSetup
Mensagem a ser enviada na primeira e apenas na primeira BidiGenerateContentClientMessage
. Contém a configuração que será aplicada durante a sessão.
Os clientes precisam aguardar uma mensagem BidiGenerateContentSetupComplete
antes de enviar outras mensagens.
Campos | |
---|---|
model |
Obrigatório. O nome do recurso do modelo. Ele serve como um ID para o modelo usar. Formato: |
generation_ |
Opcional. Configuração de geração. Os seguintes campos não são aceitos:
|
system_ |
Opcional. O usuário forneceu instruções do sistema para o modelo. Observação: use apenas texto em partes, e o conteúdo de cada parte ficará em um parágrafo separado. |
tools[] |
Opcional. Uma lista de Um |
BidiGenerateContentSetupComplete
Esse tipo não tem campos.
Enviada em resposta a uma mensagem BidiGenerateContentSetup
do cliente.
BidiGenerateContentToolCall
Solicitar que o cliente execute o function_calls
e retorne as respostas com os id
s correspondentes.
Campos | |
---|---|
function_ |
Apenas saída. A chamada de função a ser executada. |
BidiGenerateContentToolCallCancellation
Notificação para o cliente de que um ToolCallMessage
emitido anteriormente com os id
s especificados não foi executado e precisa ser cancelado. Se houver efeitos colaterais nessas chamadas de ferramentas, os clientes poderão tentar desfazer as chamadas de ferramentas. Essa mensagem ocorre apenas nos casos em que os clientes interrompem as rodadas do servidor.
Campos | |
---|---|
ids[] |
Apenas saída. Os IDs das chamadas de ferramenta a serem canceladas. |
BidiGenerateContentToolResponse
Resposta gerada pelo cliente para uma ToolCall
recebida do servidor. Os objetos FunctionResponse
individuais são associados aos respectivos objetos FunctionCall
pelo campo id
.
Nas APIs unary e de streaming do servidor, a chamada de função GenerateContent acontece trocando as partes Content
, enquanto nas APIs bidi, a chamada de função acontece sobre esse conjunto dedicado de mensagens.
Campos | |
---|---|
function_ |
Opcional. A resposta às chamadas de função. |
Consulte também
- Para mais informações sobre campos de API usados com frequência (por exemplo,
Content
eTool
), consulte Gerar conteúdo. - Saiba mais sobre chamadas de função.
- Consulte a Referência de chamada de função para conferir exemplos.