Partilhar via


Referência da API de voz ao vivo

A API de voz ao vivo fornece comunicação bidirecional em tempo real para aplicativos habilitados para voz usando conexões WebSocket. Esta API suporta recursos avançados, incluindo reconhecimento de fala, síntese de texto para fala, streaming de avatar, dados de animação e recursos abrangentes de processamento de áudio.

A API usa eventos formatados em JSON enviados por conexões WebSocket para gerenciar conversas, fluxos de áudio, interações de avatar e respostas em tempo real. Os eventos são categorizados em eventos de cliente (enviados de cliente para servidor) e eventos de servidor (enviados de servidor para cliente).

Principais características

  • Processamento de áudio em tempo real: Suporte para vários formatos de áudio, incluindo PCM16 em várias taxas de amostragem e codecs G.711
  • Opções avançadas de voz: vozes OpenAI, vozes personalizadas do Azure, vozes padrão do Azure e vozes pessoais do Azure
  • Integração de avatar: streaming de avatar baseado em WebRTC com vídeo, animação e blendshapes
  • Deteção inteligente de turnos: várias opções de VAD, incluindo VAD semântica do Azure e deteção do lado do servidor
  • Aprimoramento de áudio: Built-in redução de ruído e cancelamento de eco
  • Chamada de funções: integração de ferramentas para recursos de conversação aprimorados
  • Gerenciamento flexível de sessões: modalidades, instruções e parâmetros de resposta configuráveis

Eventos do Cliente

A API de voz ao vivo suporta os seguintes eventos de cliente que podem ser enviados do cliente para o servidor:

Event Description
session.update Atualize a configuração da sessão, incluindo voz, modalidades, deteção de turnos e outras configurações
sessão.avatar.connect Estabeleça conexão de avatar fornecendo SDP do cliente para negociação WebRTC
input_audio_buffer.append Acrescentar bytes de áudio ao buffer de áudio de entrada
input_audio_buffer.Commit Confirme o buffer de áudio de entrada para processamento
input_audio_buffer.clear Limpe o buffer de áudio de entrada
conversa.item.create Adicionar um novo item ao contexto da conversação
conversa.item.retrieve Recuperar um item específico da conversa
conversation.item.truncate Truncar uma mensagem de áudio do assistente
conversa.item.delete Remover um item da conversação
resposta.criar Instruir o servidor a criar uma resposta por meio da inferência do modelo
resposta.cancelar Cancelar uma resposta em andamento
mcp_approval_response Envie aprovação ou rejeição para uma chamada de ferramenta MCP que exija aprovação

session.update

Atualize a configuração da sessão. Esse evento pode ser enviado a qualquer momento para modificar configurações como voz, modalidades, deteção de turnos, ferramentas e outros parâmetros da sessão. Observe que, uma vez que uma sessão é inicializada com um modelo específico, ela não pode ser alterada para outro modelo.

Estrutura do Evento

{
  "type": "session.update",
  "session": {
    "modalities": ["text", "audio"],
    "voice": {
      "type": "openai",
      "name": "alloy"
    },
    "instructions": "You are a helpful assistant. Be concise and friendly.",
    "input_audio_format": "pcm16",
    "output_audio_format": "pcm16",
    "input_audio_sampling_rate": 24000,
    "turn_detection": {
      "type": "azure_semantic_vad",
      "threshold": 0.5,
      "prefix_padding_ms": 300,
      "silence_duration_ms": 500
    },
    "temperature": 0.8,
    "max_response_output_tokens": "inf"
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "session.update"
sessão RealtimeRequestSession Objeto de configuração de sessão com campos a serem atualizados

Exemplo com o Azure Custom Voice

{
  "type": "session.update",
  "session": {
    "voice": {
      "type": "azure-custom",
      "name": "my-custom-voice",
      "endpoint_id": "12345678-1234-1234-1234-123456789012",
      "temperature": 0.7,
      "style": "cheerful"
    },
    "input_audio_noise_reduction": {
      "type": "azure_deep_noise_suppression"
    },
    "avatar": {
      "character": "lisa",
      "customized": false,
      "video": {
        "resolution": {
          "width": 1920,
          "height": 1080
        },
        "bitrate": 2000000
      }
    }
  }
}

sessão.avatar.connect

Estabeleça uma conexão avatar fornecendo a oferta SDP (Session Description Protocol) do cliente para negociação de mídia WebRTC. Este evento é necessário ao usar recursos de avatar.

Estrutura do Evento

{
  "type": "session.avatar.connect",
  "client_sdp": "<client_sdp>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "session.avatar.connect"
client_sdp cadeia (de caracteres) A oferta SDP do cliente para o estabelecimento de conexão WebRTC

input_audio_buffer.append

Anexe bytes de áudio ao buffer de áudio de entrada.

Estrutura do Evento

{
  "type": "input_audio_buffer.append",
  "audio": "UklGRiQAAABXQVZFZm10IBAAAAABAAEARKwAAIhYAQACABAAZGF0YQAAAAA="
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "input_audio_buffer.append"
audio cadeia (de caracteres) Dados de áudio codificados em Base64

input_audio_buffer.Commit

Confirme o buffer de áudio de entrada para processamento.

Estrutura do Evento

{
  "type": "input_audio_buffer.commit"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "input_audio_buffer.commit"

input_audio_buffer.clear

Limpe o buffer de áudio de entrada.

Estrutura do Evento

{
  "type": "input_audio_buffer.clear"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "input_audio_buffer.clear"

conversa.item.create

Adicione um novo item ao contexto da conversa. Isso pode incluir mensagens, chamadas de função e respostas de chamada de função. Os itens podem ser inseridos em posições específicas no histórico de conversas.

Estrutura do Evento

{
  "type": "conversation.item.create",
  "previous_item_id": "item_ABC123",
  "item": {
    "id": "item_DEF456",
    "type": "message",
    "role": "user",
    "content": [
      {
        "type": "input_text",
        "text": "Hello, how are you?"
      }
    ]
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "conversation.item.create"
previous_item_id cadeia (de caracteres) Opcional. ID do item após o qual inserir este item. Se não for fornecido, anexa ao final
item RealtimeConversationRequestItem O item a ser adicionado à conversa

Exemplo com conteúdo de áudio

{
  "type": "conversation.item.create",
  "item": {
    "type": "message",
    "role": "user",
    "content": [
      {
        "type": "input_audio",
        "audio": "UklGRiQAAABXQVZFZm10IBAAAAABAAEARKwAAIhYAQACABAAZGF0YQAAAAA=",
        "transcript": "Hello there"
      }
    ]
  }
}

Exemplo com chamada de função

{
  "type": "conversation.item.create",
  "item": {
    "type": "function_call",
    "name": "get_weather",
    "call_id": "call_123",
    "arguments": "{\"location\": \"San Francisco\", \"unit\": \"celsius\"}"
  }
}

Exemplo com chamada MCP

{
  "type": "conversation.item.create",
  "item": {
    "type": "mcp_call",
    "approval_request_id": null,
    "arguments": "",
    "server_label": "deepwiki",
    "name": "ask_question",
    "output": null,
    "error": null
  }
}

conversa.item.retrieve

Recupere um item específico do histórico de conversas. Isso é útil para inspecionar o áudio processado após o cancelamento de ruído e VAD.

Estrutura do Evento

{
  "type": "conversation.item.retrieve",
  "item_id": "item_ABC123"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "conversation.item.retrieve"
item_id cadeia (de caracteres) A ID do item a ser recuperado

conversation.item.truncate

Truncar o conteúdo de áudio de uma mensagem de assistente. Isso é útil para interromper a reprodução em um ponto específico e sincronizar o entendimento do servidor com o estado do cliente.

Estrutura do Evento

{
  "type": "conversation.item.truncate",
  "item_id": "item_ABC123",
  "content_index": 0,
  "audio_end_ms": 5000
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "conversation.item.truncate"
item_id cadeia (de caracteres) A ID do item de mensagem do assistente a ser truncado
content_index número inteiro O índice da parte de conteúdo a ser truncada
audio_end_ms número inteiro A duração até à qual truncar o áudio, em milissegundos

conversa.item.delete

Remova um item do histórico de conversas.

Estrutura do Evento

{
  "type": "conversation.item.delete",
  "item_id": "item_ABC123"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "conversation.item.delete"
item_id cadeia (de caracteres) A ID do item a ser excluído

resposta.criar

Instrua o servidor a criar uma resposta por meio da inferência do modelo. Esse evento pode especificar a configuração específica da resposta que substitui os padrões de sessão.

Estrutura do Evento

{
  "type": "response.create",
  "response": {
    "modalities": ["text", "audio"],
    "instructions": "Be extra helpful and detailed.",
    "voice": {
      "type": "openai",
      "name": "alloy"
    },
    "output_audio_format": "pcm16",
    "temperature": 0.7,
    "max_response_output_tokens": 1000
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.create"
response RealtimeResponseOptions Configuração de resposta opcional que substitui os padrões de sessão

Exemplo com escolha de ferramenta

{
  "type": "response.create",
  "response": {
    "modalities": ["text"],
    "tools": [
      {
        "type": "function",
        "name": "get_current_time",
        "description": "Get the current time",
        "parameters": {
          "type": "object",
          "properties": {}
        }
      }
    ],
    "tool_choice": "get_current_time",
    "temperature": 0.3
  }
}

Exemplo com animação

{
  "type": "response.create",
  "response": {
    "modalities": ["audio", "animation"],
    "animation": {
      "model_name": "default",
      "outputs": ["blendshapes", "viseme_id"]
    },
    "voice": {
      "type": "azure-custom",
      "name": "my-expressive-voice",
      "endpoint_id": "12345678-1234-1234-1234-123456789012",
      "style": "excited"
    }
  }
}

resposta.cancelar

Cancelar uma resposta em andamento. Isso interrompe imediatamente a geração de resposta e a saída de áudio relacionada.

Estrutura do Evento

{
  "type": "response.cancel"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.cancel"

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser conversation.item.retrieve.
item_id cadeia (de caracteres) A ID do item a ser recuperado.
event_id cadeia (de caracteres) A ID do evento.

RealtimeClientEventConversationItemTruncate

O evento client conversation.item.truncate é usado para truncar o áudio de uma mensagem de assistente anterior. O servidor produz áudio mais rápido do que em tempo real, portanto, esse evento é útil quando o usuário interrompe para truncar o áudio que foi enviado para o cliente, mas ainda não foi reproduzido. A compreensão do servidor do áudio com a reprodução do cliente é sincronizada.

Truncar o áudio exclui a transcrição de texto do lado do servidor para garantir que não haja texto no contexto que o usuário não conheça.

Se o evento do cliente for bem-sucedido, o servidor responderá com um conversation.item.truncated evento.

Estrutura do evento

{
  "type": "conversation.item.truncate",
  "item_id": "<item_id>",
  "content_index": 0,
  "audio_end_ms": 0
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser conversation.item.truncate.
item_id cadeia (de caracteres) A ID do item de mensagem do assistente a ser truncar. Apenas os itens de mensagem do assistente podem ser truncados.
content_index número inteiro O índice da parte de conteúdo a truncar. Defina esta propriedade como "0".
audio_end_ms número inteiro Duração inclusiva até à qual o áudio é truncado, em milissegundos. Se o audio_end_ms for maior do que a duração real do áudio, o servidor responderá com um erro.

RealtimeClientEventInputAudioBufferAppend

O evento client input_audio_buffer.append é usado para acrescentar bytes de áudio ao buffer de áudio de entrada. O buffer de áudio é um armazenamento temporário no qual você pode gravar e confirmar posteriormente.

No modo VAD (Deteção de Atividade de Voz) do servidor, o buffer de áudio é usado para detetar fala e o servidor decide quando confirmar. Quando o VAD do servidor está desativado, o cliente pode escolher a quantidade de áudio a colocar em cada evento até um máximo de 15 MiB. Por exemplo, o streaming de partes menores do cliente pode permitir que o VAD seja mais responsivo.

Ao contrário da maioria dos outros eventos de cliente, o servidor não envia uma resposta de confirmação para o evento do cliente input_audio_buffer.append .

Estrutura do evento

{
  "type": "input_audio_buffer.append",
  "audio": "<audio>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser input_audio_buffer.append.
audio cadeia (de caracteres) Bytes de áudio codificados em Base64. Esse valor deve estar no formato especificado pelo input_audio_format campo na configuração da sessão.

RealtimeClientEventInputAudioBufferClear

O evento client input_audio_buffer.clear é usado para limpar os bytes de áudio no buffer.

O servidor responde com um input_audio_buffer.cleared evento.

Estrutura do evento

{
  "type": "input_audio_buffer.clear"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser input_audio_buffer.clear.

RealtimeClientEventInputAudioBufferCommit

O evento client input_audio_buffer.commit é usado para confirmar o buffer de áudio de entrada do usuário, que cria um novo item de mensagem do usuário na conversa. O áudio é transcrito se input_audio_transcription estiver configurado para a sessão.

Quando no modo VAD do servidor, o cliente não precisa enviar esse evento, o servidor confirma o buffer de áudio automaticamente. Sem o VAD do servidor, o cliente deve confirmar o buffer de áudio para criar um item de mensagem do usuário. Esse evento de cliente produz um erro se o buffer de áudio de entrada estiver vazio.

Confirmar o buffer de áudio de entrada não cria uma resposta do modelo.

O servidor responde com um input_audio_buffer.committed evento.

Estrutura do evento

{
  "type": "input_audio_buffer.commit"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser input_audio_buffer.commit.

RealtimeClientEventResponseCancel

O evento client response.cancel é usado para cancelar uma resposta em andamento.

O servidor responderá com um response.done evento com um status de response.status=cancelled.

Estrutura do evento

{
  "type": "response.cancel"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.cancel.

RealtimeClientEventResponseCriar

O evento client response.create é usado para instruir o servidor a criar uma resposta por meio da inferência do modelo. Quando a sessão é configurada no modo VAD do servidor, o servidor cria respostas automaticamente.

Uma resposta inclui pelo menos um item, e pode ter dois, caso em que o segundo é uma chamada de função. Esses itens são anexados ao histórico de conversas.

O servidor responde com um evento, um response.created ou mais eventos de item e conteúdo (como conversation.item.created e response.content_part.added) e, finalmente, um response.done evento para indicar que a resposta está completa.

Estrutura do evento

{
  "type": "response.create"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.create.
response RealtimeResponseOptions As opções de resposta.

RealtimeClientEventSessionUpdate

O evento client session.update é usado para atualizar a configuração padrão da sessão. O cliente pode enviar este evento a qualquer momento para atualizar a configuração da sessão, e qualquer campo pode ser atualizado a qualquer momento, exceto voz.

Apenas os campos presentes são atualizados. Para limpar um campo (como instructions), passe uma cadeia de caracteres vazia.

O servidor responde com um session.updated evento que contém a configuração efetiva completa.

Estrutura do evento

{
  "type": "session.update"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser session.update.
sessão RealtimeRequestSession A configuração da sessão.

Eventos do servidor

A API do Voice live envia os seguintes eventos de servidor para comunicar status, respostas e dados ao cliente:

Event Description
erro Indica que ocorreu um erro durante o processamento
sessão.criado Enviado quando uma nova sessão é estabelecida com êxito
session.updated Enviado quando a configuração da sessão é atualizada
session.avatar.conectando Indica que a conexão WebRTC avatar está sendo estabelecida
conversa.item.created Enviado quando um novo item é adicionado à conversa
conversation.item.recuperado Resposta à solicitação conversation.item.retrieve
conversation.item.truncado Confirma o truncamento do item
conversa.item.deleted Confirma a exclusão do item
conversation.item.input_audio_transcription.concluída A transcrição de áudio de entrada está completa
conversation.item.input_audio_transcription.delta Transcrição de áudio de entrada de streaming
conversation.item.input_audio_transcription.falhou Falha na transcrição de áudio de entrada
input_audio_buffer.Comprometido O buffer de áudio de entrada foi confirmado para processamento
input_audio_buffer.limpo O buffer de áudio de entrada foi limpo
input_audio_buffer.speech_iniciado Fala detetada no buffer de áudio de entrada (VAD)
input_audio_buffer.speech_parou Fala terminada em buffer de áudio de entrada (VAD)
response.created Começou uma nova geração de respostas
resposta.feito A geração de respostas está completa
response.output_item.adicionado Novo item de saída adicionado à resposta
response.output_item.feito O item de saída está completo
response.content_part.adicionado Nova parte de conteúdo adicionada ao item de saída
response.content_part.feito A parte do conteúdo está completa
resposta.text.delta Streaming de conteúdo de texto do modelo
response.text.done O conteúdo do texto está completo
response.audio_transcript.delta Streaming de transcrição de áudio
response.audio_transcript.feito A transcrição do áudio está completa
resposta.audio.delta Streaming de conteúdo de áudio do modelo
resposta.audio.done O conteúdo de áudio está completo
response.animation_blendshapes.delta Streaming de dados de misturas de animações
response.animation_blendshapes.feito Os dados de misturas de animações estão completos
response.audio_timestamp.delta Streaming de informações de carimbo de data/hora de áudio
response.audio_timestamp.feito As informações de carimbo de data/hora de áudio estão completas
response.animation_viseme.delta Streaming de dados viseme de animação
response.animation_viseme.feito Os dados do viseme de animação estão completos
response.function_call_arguments.delta Argumentos de chamada de função de streaming
response.function_call_arguments.feito Os argumentos de chamada de função estão completos
mcp_list_tools.in_progress A listagem de ferramentas MCP está em curso
mcp_list_tools.concluído Lista das ferramentas MCP concluída
mcp_list_tools.falhou A listagem de ferramentas MCP falhou
response.mcp_call_arguments.delta Argumentos de chamada MCP em streaming
response.mcp_call_arguments feito Os argumentos da chamada MCP estão completos
response.mcp_call.in_progress A chamada MCP está em curso
response.mcp_call.concluído A chamada MCP foi concluída
response.mcp_call.falhou A chamada MCP falhou

sessão.criado

Enviado quando uma nova sessão é estabelecida com êxito. Este é o primeiro evento recebido após a conexão com a API.

Estrutura do Evento

{
  "type": "session.created",
  "session": {
    "id": "sess_ABC123DEF456",
    "object": "realtime.session",
    "model": "gpt-realtime",
    "modalities": ["text", "audio"],
    "instructions": "You are a helpful assistant.",
    "voice": {
      "type": "openai",
      "name": "alloy"
    },
    "input_audio_format": "pcm16",
    "output_audio_format": "pcm16",
    "input_audio_sampling_rate": 24000,
    "turn_detection": {
      "type": "azure_semantic_vad",
      "threshold": 0.5,
      "prefix_padding_ms": 300,
      "silence_duration_ms": 500
    },
    "temperature": 0.8,
    "max_response_output_tokens": "inf"
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "session.created"
sessão RealtimeResponseSession O objeto de sessão criado

session.updated

Enviado quando a configuração da sessão é atualizada com êxito em resposta a um session.update evento do cliente.

Estrutura do Evento

{
  "type": "session.updated",
  "session": {
    "id": "sess_ABC123DEF456",
    "voice": {
      "type": "azure-custom",
      "name": "my-voice",
      "endpoint_id": "12345678-1234-1234-1234-123456789012"
    },
    "temperature": 0.7,
    "avatar": {
      "character": "lisa",
      "customized": false
    }
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "session.updated"
sessão RealtimeResponseSession O objeto de sessão atualizado

session.avatar.conectando

Indica que uma conexão WebRTC avatar está sendo estabelecida. Este evento é enviado em resposta a um session.avatar.connect evento de cliente.

Estrutura do Evento

{
  "type": "session.avatar.connecting",
  "server_sdp": "<server_sdp>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "session.avatar.connecting"

conversa.item.created

Enviado quando um novo item é adicionado à conversa, seja por meio de um evento do cliente conversation.item.create ou automaticamente durante a geração de respostas.

Estrutura do Evento

{
  "type": "conversation.item.created",
  "previous_item_id": "item_ABC123",
  "item": {
    "id": "item_DEF456",
    "object": "realtime.item",
    "type": "message",
    "status": "completed",
    "role": "user",
    "content": [
      {
        "type": "input_text",
        "text": "Hello, how are you?"
      }
    ]
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "conversation.item.created"
previous_item_id cadeia (de caracteres) ID do item após o qual este item foi inserido
item RealtimeConversationResponseItem O item de conversa criado

Exemplo com item de áudio

{
  "type": "conversation.item.created",
  "item": {
    "id": "item_GHI789",
    "type": "message",
    "status": "completed",
    "role": "user",
    "content": [
      {
        "type": "input_audio",
        "audio": null,
        "transcript": "What's the weather like today?"
      }
    ]
  }
}

conversation.item.recuperado

Enviado em resposta a um conversation.item.retrieve evento do cliente, fornecendo o item de conversa solicitado.

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "conversation.item.created"
item RealtimeConversationResponseItem O item de conversa criado

conversation.item.truncado

O evento server conversation.item.truncated é retornado quando o cliente trunca um item de mensagem de áudio do assistente anterior com um conversation.item.truncate evento. Este evento é usado para sincronizar a compreensão do servidor do áudio com a reprodução do cliente.

Esse evento trunca o áudio e remove a transcrição de texto do lado do servidor para garantir que não haja texto no contexto que o usuário não conheça.

Estrutura do evento

{
  "type": "conversation.item.truncated",
  "item_id": "<item_id>",
  "content_index": 0,
  "audio_end_ms": 0
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser conversation.item.truncated.
item_id cadeia (de caracteres) A ID do item de mensagem do assistente que foi truncado.
content_index número inteiro O índice da parte de conteúdo que foi truncada.
audio_end_ms número inteiro A duração até a qual o áudio foi truncado, em milissegundos.

conversa.item.deleted

Enviado em resposta a um conversation.item.delete evento do cliente, confirmando que o item especificado foi removido da conversa.

Estrutura do Evento

{
  "type": "conversation.item.deleted",
  "item_id": "item_ABC123"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "conversation.item.deleted"
item_id cadeia (de caracteres) ID do item excluído

response.created

Enviado quando uma nova geração de resposta começa. Este é o primeiro evento de uma sequência de resposta.

Estrutura do Evento

{
  "type": "response.created",
  "response": {
    "id": "resp_ABC123",
    "object": "realtime.response",
    "status": "in_progress",
    "status_details": null,
    "output": [],
    "usage": {
      "total_tokens": 0,
      "input_tokens": 0,
      "output_tokens": 0
    }
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.created"
response RealtimeResponse O objeto de resposta que foi criado

resposta.feito

Enviado quando a geração de resposta estiver concluída. Este evento contém a resposta final com todos os itens de saída e estatísticas de uso.

Estrutura do Evento

{
  "type": "response.done",
  "response": {
    "id": "resp_ABC123",
    "object": "realtime.response",
    "status": "completed",
    "status_details": null,
    "output": [
      {
        "id": "item_DEF456",
        "object": "realtime.item",
        "type": "message",
        "status": "completed",
        "role": "assistant",
        "content": [
          {
            "type": "text",
            "text": "Hello! I'm doing well, thank you for asking. How can I help you today?"
          }
        ]
      }
    ],
    "usage": {
      "total_tokens": 87,
      "input_tokens": 52,
      "output_tokens": 35,
      "input_token_details": {
        "cached_tokens": 0,
        "text_tokens": 45,
        "audio_tokens": 7
      },
      "output_token_details": {
        "text_tokens": 15,
        "audio_tokens": 20
      }
    }
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.done"
response RealtimeResponse O objeto de resposta concluído

response.output_item.adicionado

Enviado quando um novo item de saída é adicionado à resposta durante a geração.

Estrutura do Evento

{
  "type": "response.output_item.added",
  "response_id": "resp_ABC123",
  "output_index": 0,
  "item": {
    "id": "item_DEF456",
    "object": "realtime.item",
    "type": "message",
    "status": "in_progress",
    "role": "assistant",
    "content": []
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.output_item.added"
response_id cadeia (de caracteres) ID da resposta a que este item pertence
output_index número inteiro Índice do item na matriz de saída da resposta
item RealtimeConversationResponseItem O item de saída que foi adicionado

response.output_item.feito

Enviado quando um item de saída é concluído.

Estrutura do Evento

{
  "type": "response.output_item.done",
  "response_id": "resp_ABC123",
  "output_index": 0,
  "item": {
    "id": "item_DEF456",
    "object": "realtime.item",
    "type": "message",
    "status": "completed",
    "role": "assistant",
    "content": [
      {
        "type": "text",
        "text": "Hello! I'm doing well, thank you for asking."
      }
    ]
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.output_item.done"
response_id cadeia (de caracteres) ID da resposta a que este item pertence
output_index número inteiro Índice do item na matriz de saída da resposta
item RealtimeConversationResponseItem O item de saída concluído

response.content_part.adicionado

O evento server response.content_part.added é retornado quando uma nova parte de conteúdo é adicionada a um item de mensagem assistente durante a geração de resposta.

Estrutura do Evento

{
  "type": "response.content_part.added",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
  "content_index": 0,
  "part": {
    "type": "text",
    "text": ""
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.content_part.added"
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item ao qual esta parte de conteúdo pertence
output_index número inteiro Índice do item na resposta
content_index número inteiro Índice desta parte do conteúdo no item
part RealtimeContentPart A parte de conteúdo que foi adicionada

response.content_part.feito

O evento server response.content_part.done é retornado quando uma parte do conteúdo é feita streaming em um item de mensagem assistente.

Esse evento também é retornado quando uma resposta é interrompida, incompleta ou cancelada.

Estrutura do Evento

{
  "type": "response.content_part.done",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
  "content_index": 0,
  "part": {
    "type": "text",
    "text": "Hello! I'm doing well, thank you for asking."
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.content_part.done"
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item ao qual esta parte de conteúdo pertence
output_index número inteiro Índice do item na resposta
content_index número inteiro Índice desta parte do conteúdo no item
part RealtimeContentPart A parte de conteúdo concluída

resposta.text.delta

Streaming de conteúdo de texto do modelo. Enviado incrementalmente à medida que o modelo gera texto.

Estrutura do Evento

{
  "type": "response.text.delta",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
  "content_index": 0,
  "delta": "Hello! I'm"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.text.delta"
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item
output_index número inteiro Índice do item na resposta
content_index número inteiro Índice da parte do conteúdo
delta cadeia (de caracteres) Conteúdo de texto incremental

response.text.done

Enviado quando a geração de conteúdo de texto estiver concluída.

Estrutura do Evento

{
  "type": "response.text.done",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
  "content_index": 0,
  "text": "Hello! I'm doing well, thank you for asking. How can I help you today?"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.text.done"
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item
output_index número inteiro Índice do item na resposta
content_index número inteiro Índice da parte do conteúdo
enviar SMS cadeia (de caracteres) O conteúdo completo do texto

resposta.audio.delta

Streaming de conteúdo de áudio do modelo. O áudio é fornecido como dados codificados em base64.

Estrutura do Evento

{
  "type": "response.audio.delta",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
  "content_index": 0,
  "delta": "UklGRiQAAABXQVZFZm10IBAAAAABAAEARKwAAIhYAQACABAAZGF0YQAAAAA="
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.audio.delta"
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item
output_index número inteiro Índice do item na resposta
content_index número inteiro Índice da parte do conteúdo
delta cadeia (de caracteres) Bloco de dados de áudio codificado em Base64

resposta.audio.done

Enviado quando a geração de conteúdo de áudio estiver concluída.

Estrutura do Evento

{
  "type": "response.audio.done",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
  "content_index": 0
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.audio.done"
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item
output_index número inteiro Índice do item na resposta
content_index número inteiro Índice da parte do conteúdo

response.audio_transcript.delta

Transcrição de streaming do conteúdo de áudio gerado.

Estrutura do Evento

{
  "type": "response.audio_transcript.delta",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
  "content_index": 0,
  "delta": "Hello! I'm doing"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.audio_transcript.delta"
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item
output_index número inteiro Índice do item na resposta
content_index número inteiro Índice da parte do conteúdo
delta cadeia (de caracteres) Texto de transcrição incremental

response.audio_transcript.feito

Enviado quando a geração da transcrição de áudio estiver concluída.

Estrutura do Evento

{
  "type": "response.audio_transcript.done",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
  "content_index": 0,
  "transcript": "Hello! I'm doing well, thank you for asking. How can I help you today?"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "response.audio_transcript.done"
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item
output_index número inteiro Índice do item na resposta
content_index número inteiro Índice da parte do conteúdo
transcrição cadeia (de caracteres) O texto completo da transcrição

conversation.item.input_audio_transcription.concluída

O evento do servidor conversation.item.input_audio_transcription.completed é o resultado da transcrição de áudio para fala gravada no buffer de áudio.

A transcrição começa quando o buffer de áudio de entrada é confirmado pelo cliente ou servidor (no server_vad modo). A transcrição é executada de forma assíncrona com a criação de resposta, para que esse evento possa vir antes ou depois dos eventos de resposta.

Os modelos de API em tempo real aceitam áudio nativamente e, portanto, a transcrição de entrada é um processo separado executado em um modelo de reconhecimento de fala separado, como whisper-1o . Assim, a transcrição pode divergir um pouco da interpretação do modelo, e deve ser tratada como um guia aproximado.

Estrutura do evento

{
  "type": "conversation.item.input_audio_transcription.completed",
  "item_id": "<item_id>",
  "content_index": 0,
  "transcript": "<transcript>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser conversation.item.input_audio_transcription.completed.
item_id cadeia (de caracteres) A ID do item de mensagem do usuário que contém o áudio.
content_index número inteiro O índice da parte de conteúdo que contém o áudio.
transcrição cadeia (de caracteres) O texto transcrito.

conversation.item.input_audio_transcription.delta

O evento server conversation.item.input_audio_transcription.delta é retornado quando a transcrição de áudio de entrada é configurada e uma solicitação de transcrição para uma mensagem de usuário está em andamento. Este evento fornece resultados de transcrição parcial à medida que ficam disponíveis.

Estrutura do evento

{
  "type": "conversation.item.input_audio_transcription.delta",
  "item_id": "<item_id>",
  "content_index": 0,
  "delta": "<delta>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser conversation.item.input_audio_transcription.delta.
item_id cadeia (de caracteres) A ID do item de mensagem do usuário.
content_index número inteiro O índice da parte de conteúdo que contém o áudio.
delta cadeia (de caracteres) O texto de transcrição incremental.

conversation.item.input_audio_transcription.falhou

O evento do servidor conversation.item.input_audio_transcription.failed é retornado quando a transcrição de áudio de entrada é configurada e uma solicitação de transcrição para uma mensagem de usuário falhou. Este evento é separado de outros error eventos para que o cliente possa identificar o item relacionado.

Estrutura do evento

{
  "type": "conversation.item.input_audio_transcription.failed",
  "item_id": "<item_id>",
  "content_index": 0,
  "error": {
    "code": "<code>",
    "message": "<message>",
    "param": "<param>"
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser conversation.item.input_audio_transcription.failed.
item_id cadeia (de caracteres) A ID do item de mensagem do usuário.
content_index número inteiro O índice da parte de conteúdo que contém o áudio.
erro objecto Detalhes do erro de transcrição.

Consulte as propriedades aninhadas na tabela seguinte.

Propriedades do erro

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de erro.
código cadeia (de caracteres) Código de erro, se houver.
mensagem cadeia (de caracteres) Uma mensagem de erro legível por humanos.
param cadeia (de caracteres) Parâmetro relacionado ao erro, se houver.

response.animation_blendshapes.delta

O evento server response.animation_blendshapes.delta é retornado quando o modelo gera dados de misturas de animação como parte de uma resposta. Esse evento fornece dados de formas de mistura incrementais à medida que ficam disponíveis.

Estrutura do evento

{
  "type": "response.animation_blendshapes.delta",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
  "content_index": 0,
  "frame_index": 0,
  "frames": [
    [0.0, 0.1, 0.2, ..., 1.0]
    ...
  ]
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.animation_blendshapes.delta.
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item
output_index número inteiro Índice do item na resposta
content_index número inteiro Índice da parte do conteúdo
frame_index número inteiro Índice do primeiro quadro neste lote de quadros
molduras matriz de matriz de float Matriz de quadros blendshape, cada quadro é uma matriz de valores blendshape

response.animation_blendshapes.feito

O evento server response.animation_blendshapes.done é retornado quando o modelo termina de gerar dados de misturas de animação como parte de uma resposta.

Estrutura do evento

{
  "type": "response.animation_blendshapes.done",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.animation_blendshapes.done.
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item
output_index número inteiro Índice do item na resposta

response.audio_timestamp.delta

O evento server response.audio_timestamp.delta é retornado quando o modelo gera dados de carimbo de data/hora de áudio como parte de uma resposta. Esse evento fornece dados incrementais de carimbo de data/hora para alinhamento de áudio e texto de saída à medida que fica disponível.

Estrutura do evento

{
  "type": "response.audio_timestamp.delta",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
  "content_index": 0,
  "audio_offset_ms": 0,
  "audio_duration_ms": 500,
  "text": "Hello",
  "timestamp_type": "word"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.audio_timestamp.delta.
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item
output_index número inteiro Índice do item na resposta
content_index número inteiro Índice da parte do conteúdo
audio_offset_ms número inteiro Deslocamento de áudio em milissegundos a partir do início do áudio
audio_duration_ms número inteiro Duração do segmento de áudio em milissegundos
enviar SMS cadeia (de caracteres) O segmento de texto correspondente a este carimbo de data/hora de áudio
timestamp_type cadeia (de caracteres) O tipo de carimbo de data/hora, atualmente apenas "palavra" é suportado

response.audio_timestamp.feito

Enviado quando a geração de carimbo de data/hora de áudio estiver concluída.

Estrutura do Evento

{
  "type": "response.audio_timestamp.done",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
  "content_index": 0
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.audio_timestamp.done.
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item
output_index número inteiro Índice do item na resposta
content_index número inteiro Índice da parte do conteúdo

response.animation_viseme.delta

O evento server response.animation_viseme.delta é retornado quando o modelo gera dados viseme de animação como parte de uma resposta. Este evento fornece dados viseme incrementais à medida que se tornam disponíveis.

Estrutura do Evento

{
  "type": "response.animation_viseme.delta",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
  "content_index": 0,
  "audio_offset_ms": 0,
  "viseme_id": 1
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.animation_viseme.delta.
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item
output_index número inteiro Índice do item na resposta
content_index número inteiro Índice da parte do conteúdo
audio_offset_ms número inteiro Deslocamento de áudio em milissegundos a partir do início do áudio
viseme_id número inteiro O ID viseme correspondente à forma da boca para animação

response.animation_viseme.feito

O evento server response.animation_viseme.done é retornado quando o modelo termina de gerar dados de animação viseme como parte de uma resposta.

Estrutura do Evento

{
  "type": "response.animation_viseme.done",
  "response_id": "resp_ABC123",
  "item_id": "item_DEF456",
  "output_index": 0,
  "content_index": 0
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.animation_viseme.done.
response_id cadeia (de caracteres) ID da resposta
item_id cadeia (de caracteres) ID do item
output_index número inteiro Índice do item na resposta
content_index número inteiro Índice da parte do conteúdo

O evento server response.animation_viseme.delta é retornado quando o modelo gera dados viseme de animação como parte de uma resposta. Este evento fornece dados viseme incrementais à medida que se tornam disponíveis.

erro

O evento do servidor error é retornado quando ocorre um erro, que pode ser um problema do cliente ou do servidor. A maioria dos erros é recuperável e a sessão permanece aberta.

Estrutura do evento

{
  "type": "error",
  "error": {
    "code": "<code>",
    "message": "<message>",
    "param": "<param>",
    "event_id": "<event_id>"
  }
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser error.
erro objecto Detalhes do erro.

Consulte as propriedades aninhadas na tabela seguinte.

Propriedades do erro

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de erro. Por exemplo, "invalid_request_error" e "server_error" são tipos de erro.
código cadeia (de caracteres) Código de erro, se houver.
mensagem cadeia (de caracteres) Uma mensagem de erro legível por humanos.
param cadeia (de caracteres) Parâmetro relacionado ao erro, se houver.
event_id cadeia (de caracteres) A ID do evento do cliente que causou o erro, se aplicável.

input_audio_buffer.limpo

O evento do servidor input_audio_buffer.cleared é retornado quando o cliente limpa o buffer de áudio de entrada com um input_audio_buffer.clear evento.

Estrutura do evento

{
  "type": "input_audio_buffer.cleared"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser input_audio_buffer.cleared.

input_audio_buffer.Comprometido

O evento do servidor input_audio_buffer.committed é retornado quando um buffer de áudio de entrada é confirmado, pelo cliente ou automaticamente no modo VAD do servidor. A item_id propriedade é a ID do item de mensagem do usuário criado. Assim, um conversation.item.created evento também é enviado para o cliente.

Estrutura do evento

{
  "type": "input_audio_buffer.committed",
  "previous_item_id": "<previous_item_id>",
  "item_id": "<item_id>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser input_audio_buffer.committed.
previous_item_id cadeia (de caracteres) A ID do item anterior após o qual o novo item é inserido.
item_id cadeia (de caracteres) A ID do item de mensagem do usuário criado.

input_audio_buffer.speech_iniciado

O evento do servidor input_audio_buffer.speech_started é retornado no server_vad modo quando a fala é detetada no buffer de áudio. Esse evento pode acontecer sempre que o áudio for adicionado ao buffer (a menos que a fala já seja detetada).

Observação

O cliente pode querer usar esse evento para interromper a reprodução de áudio ou fornecer feedback visual ao usuário.

O cliente deve esperar receber um input_audio_buffer.speech_stopped evento quando a fala parar. A item_id propriedade é a ID do item de mensagem do usuário criado quando a fala é interrompida. O item_id também está incluído no evento, a input_audio_buffer.speech_stopped menos que o cliente confirme manualmente o buffer de áudio durante a ativação do VAD.

Estrutura do evento

{
  "type": "input_audio_buffer.speech_started",
  "audio_start_ms": 0,
  "item_id": "<item_id>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser input_audio_buffer.speech_started.
audio_start_ms número inteiro Milissegundos desde o início de todo o áudio gravado no buffer durante a sessão quando a fala foi detetada pela primeira vez. Esta propriedade corresponde ao início do áudio enviado para o modelo e, portanto, inclui o prefix_padding_ms configurado na sessão.
item_id cadeia (de caracteres) A ID do item de mensagem do usuário criado quando a fala é interrompida.

input_audio_buffer.speech_parou

O evento do servidor input_audio_buffer.speech_stopped é retornado no server_vad modo quando o servidor deteta o fim da fala no buffer de áudio.

O servidor também envia um conversation.item.created evento com o item de mensagem do usuário criado a partir do buffer de áudio.

Estrutura do evento

{
  "type": "input_audio_buffer.speech_stopped",
  "audio_end_ms": 0,
  "item_id": "<item_id>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser input_audio_buffer.speech_stopped.
audio_end_ms número inteiro Milésimos de segundo desde o início da sessão quando a fala parou. Esta propriedade corresponde ao final do áudio enviado para o modelo e, portanto, inclui o min_silence_duration_ms configurado na sessão.
item_id cadeia (de caracteres) A ID do item de mensagem do usuário criado.

rate_limits.atualizado

O evento server rate_limits.updated é emitido no início de uma resposta para indicar os limites de taxa atualizados.

Quando uma resposta é criada, alguns tokens são reservados para os tokens de saída. Os limites de tarifa mostrados aqui refletem essa reserva, que é ajustada em conformidade assim que a resposta for concluída.

Estrutura do evento

{
  "type": "rate_limits.updated",
  "rate_limits": [
    {
      "name": "<name>",
      "limit": 0,
      "remaining": 0,
      "reset_seconds": 0
    }
  ]
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser rate_limits.updated.
rate_limits matriz de RealtimeRateLimitsItem A lista de informações sobre limites de taxa.

resposta.audio.delta

O evento server response.audio.delta é retornado quando o áudio gerado pelo modelo é atualizado.

Estrutura do evento

{
  "type": "response.audio.delta",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0,
  "delta": "<delta>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.audio.delta.
response_id cadeia (de caracteres) O ID da resposta.
item_id cadeia (de caracteres) A ID do item.
output_index número inteiro O índice do item de saída na resposta.
content_index número inteiro O índice da parte de conteúdo na matriz de conteúdo do item.
delta cadeia (de caracteres) delta de dados de áudio codificados em Base64.

resposta.audio.done

O evento server response.audio.done é retornado quando o áudio gerado pelo modelo é concluído.

Esse evento também é retornado quando uma resposta é interrompida, incompleta ou cancelada.

Estrutura do evento

{
  "type": "response.audio.done",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.audio.done.
response_id cadeia (de caracteres) O ID da resposta.
item_id cadeia (de caracteres) A ID do item.
output_index número inteiro O índice do item de saída na resposta.
content_index número inteiro O índice da parte de conteúdo na matriz de conteúdo do item.

response.audio_transcript.delta

O evento server response.audio_transcript.delta é retornado quando a transcrição gerada pelo modelo da saída de áudio é atualizada.

Estrutura do evento

{
  "type": "response.audio_transcript.delta",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0,
  "delta": "<delta>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.audio_transcript.delta.
response_id cadeia (de caracteres) O ID da resposta.
item_id cadeia (de caracteres) A ID do item.
output_index número inteiro O índice do item de saída na resposta.
content_index número inteiro O índice da parte de conteúdo na matriz de conteúdo do item.
delta cadeia (de caracteres) O delta da transcrição.

response.audio_transcript.feito

O evento server response.audio_transcript.done é retornado quando a transcrição gerada pelo modelo da saída de áudio é feita em streaming.

Esse evento também é retornado quando uma resposta é interrompida, incompleta ou cancelada.

Estrutura do evento

{
  "type": "response.audio_transcript.done",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0,
  "transcript": "<transcript>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.audio_transcript.done.
response_id cadeia (de caracteres) O ID da resposta.
item_id cadeia (de caracteres) A ID do item.
output_index número inteiro O índice do item de saída na resposta.
content_index número inteiro O índice da parte de conteúdo na matriz de conteúdo do item.
transcrição cadeia (de caracteres) A transcrição final do áudio.

response.function_call_arguments.delta

O evento server response.function_call_arguments.delta é retornado quando os argumentos de chamada de função gerados pelo modelo são atualizados.

Estrutura do evento

{
  "type": "response.function_call_arguments.delta",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "call_id": "<call_id>",
  "delta": "<delta>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.function_call_arguments.delta.
response_id cadeia (de caracteres) O ID da resposta.
item_id cadeia (de caracteres) A ID do item de chamada de função.
output_index número inteiro O índice do item de saída na resposta.
call_id cadeia (de caracteres) O ID da chamada de função.
delta cadeia (de caracteres) Os argumentos delta como uma cadeia de caracteres JSON.

response.function_call_arguments.feito

O evento server response.function_call_arguments.done é retornado quando os argumentos de chamada de função gerados pelo modelo são feitos de streaming.

Esse evento também é retornado quando uma resposta é interrompida, incompleta ou cancelada.

Estrutura do evento

{
  "type": "response.function_call_arguments.done",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "call_id": "<call_id>",
  "arguments": "<arguments>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.function_call_arguments.done.
response_id cadeia (de caracteres) O ID da resposta.
item_id cadeia (de caracteres) A ID do item de chamada de função.
output_index número inteiro O índice do item de saída na resposta.
call_id cadeia (de caracteres) O ID da chamada de função.
arguments cadeia (de caracteres) Os argumentos finais como uma cadeia de caracteres JSON.

mcp_list_tools.in_progress

O evento do servidor mcp_list_tools.in_progress é devolvido quando o serviço começa a listar as ferramentas disponíveis de um servidor mcp.

Estrutura do evento

{
  "type": "mcp_list_tools.in_progress",
  "item_id": "<mcp_list_tools_item_id>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser mcp_list_tools.in_progress.
item_id cadeia (de caracteres) O ID do item das ferramentas da lista MCP em processamento.

mcp_list_tools.concluído

O evento do servidor mcp_list_tools.completed é devolvido quando o serviço completa de listar as ferramentas disponíveis de um servidor mcp.

Estrutura do evento

{
  "type": "mcp_list_tools.completed",
  "item_id": "<mcp_list_tools_item_id>"
}
Propriedades
Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser mcp_list_tools.completed.
item_id cadeia (de caracteres) O ID do item das ferramentas da lista MCP em processamento.

mcp_list_tools.falhou

O evento do servidor mcp_list_tools.failed é devolvido quando o serviço não consegue listar as ferramentas disponíveis de um servidor mcp.

Estrutura do evento

{
  "type": "mcp_list_tools.failed",
  "item_id": "<mcp_list_tools_item_id>"
}
Propriedades
Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser mcp_list_tools.failed.
item_id cadeia (de caracteres) O ID do item das ferramentas da lista MCP em processamento.

response.mcp_call_arguments.delta

O evento do servidor response.mcp_call_arguments.delta é devolvido quando os argumentos de chamada à ferramenta mcp gerados pelo modelo são atualizados.

Estrutura do evento

{
  "type": "response.mcp_call_arguments.delta",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "delta": "<delta>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.mcp_call_arguments.delta.
response_id cadeia (de caracteres) O ID da resposta.
item_id cadeia (de caracteres) O ID do item da chamada da ferramenta mcp.
output_index número inteiro O índice do item de saída na resposta.
delta cadeia (de caracteres) Os argumentos delta como uma cadeia de caracteres JSON.

response.mcp_call_arguments feito

O evento do servidor response.mcp_call_arguments.done é devolvido quando os argumentos da chamada à ferramenta mcp gerados pelo modelo terminam de ser transmitidos.

Estrutura do evento

{
  "type": "response.mcp_call_arguments.done",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "arguments": "<arguments>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.mcp_call_arguments.done.
response_id cadeia (de caracteres) O ID da resposta.
item_id cadeia (de caracteres) O ID do item da chamada da ferramenta mcp.
output_index número inteiro O índice do item de saída na resposta.
arguments cadeia (de caracteres) Os argumentos finais como uma cadeia de caracteres JSON.

response.mcp_call.in_progress

O evento do servidor response.mcp_call.in_progress é devolvido quando uma chamada de ferramenta MCP começa a ser processada.

Estrutura do evento

{
  "type": "response.mcp_call.in_progress",
  "item_id": "<item_id>",
  "output_index": 0
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.mcp_call.in_progress.
item_id cadeia (de caracteres) O ID do item da chamada da ferramenta mcp.
output_index número inteiro O índice do item de saída na resposta.

response.mcp_call.concluído

O evento do servidor response.mcp_call.completed é devolvido quando uma chamada de ferramenta MCP é concluída com sucesso.

Estrutura do evento

{
  "type": "response.mcp_call.completed",
  "item_id": "<item_id>",
  "output_index": 0
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.mcp_call.completed.
item_id cadeia (de caracteres) O ID do item da chamada da ferramenta mcp.
output_index número inteiro O índice do item de saída na resposta.

response.mcp_call.falhou

O evento do servidor response.mcp_call.failed é devolvido quando uma chamada à ferramenta MCP falha.

Estrutura do evento

{
  "type": "response.mcp_call.failed",
  "item_id": "<item_id>",
  "output_index": 0
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.mcp_call.failed.
item_id cadeia (de caracteres) O ID do item da chamada da ferramenta mcp.
output_index número inteiro O índice do item de saída na resposta.

response.output_item.adicionado

O evento server response.output_item.added é retornado quando um novo item é criado durante a geração de resposta.

Estrutura do evento

{
  "type": "response.output_item.added",
  "response_id": "<response_id>",
  "output_index": 0
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.output_item.added.
response_id cadeia (de caracteres) A ID da resposta à qual o item pertence.
output_index número inteiro O índice do item de saída na resposta.
item RealtimeConversationResponseItem O item que foi adicionado.

response.output_item.feito

O evento server response.output_item.done é retornado quando um item é feito streaming.

Esse evento também é retornado quando uma resposta é interrompida, incompleta ou cancelada.

Estrutura do evento

{
  "type": "response.output_item.done",
  "response_id": "<response_id>",
  "output_index": 0
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.output_item.done.
response_id cadeia (de caracteres) A ID da resposta à qual o item pertence.
output_index número inteiro O índice do item de saída na resposta.
item RealtimeConversationResponseItem O item que é feito streaming.

resposta.text.delta

O evento server response.text.delta é retornado quando o texto gerado pelo modelo é atualizado. O texto corresponde à text parte de conteúdo de um item de mensagem do assistente.

Estrutura do evento

{
  "type": "response.text.delta",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0,
  "delta": "<delta>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.text.delta.
response_id cadeia (de caracteres) O ID da resposta.
item_id cadeia (de caracteres) A ID do item.
output_index número inteiro O índice do item de saída na resposta.
content_index número inteiro O índice da parte de conteúdo na matriz de conteúdo do item.
delta cadeia (de caracteres) O texto delta.

response.text.done

O evento server response.text.done é retornado quando o texto gerado pelo modelo é feito streaming. O texto corresponde à text parte de conteúdo de um item de mensagem do assistente.

Esse evento também é retornado quando uma resposta é interrompida, incompleta ou cancelada.

Estrutura do evento

{
  "type": "response.text.done",
  "response_id": "<response_id>",
  "item_id": "<item_id>",
  "output_index": 0,
  "content_index": 0,
  "text": "<text>"
}

Propriedades

Campo Tipo Description
tipo cadeia (de caracteres) O tipo de evento deve ser response.text.done.
response_id cadeia (de caracteres) O ID da resposta.
item_id cadeia (de caracteres) A ID do item.
output_index número inteiro O índice do item de saída na resposta.
content_index número inteiro O índice da parte de conteúdo na matriz de conteúdo do item.
enviar SMS cadeia (de caracteres) O conteúdo do texto final.

Components

Formatos de áudio

RealtimeAudioFormat

Formato de áudio base usado para entrada de áudio.

Valores permitidos:

  • pcm16 - Formato de áudio PCM de 16 bits
  • g711_ulaw - G.711 formato de áudio μ-law
  • g711_alaw - G.711 A-law formato de áudio

RealtimeOutputAudioFormat

Formato de áudio usado para saída de áudio com taxas de amostragem específicas.

Valores permitidos:

  • pcm16 - Formato de áudio PCM de 16 bits com taxa de amostragem padrão (24kHz)
  • pcm16_8000hz - Formato de áudio PCM de 16 bits a uma taxa de amostragem de 8 kHz
  • pcm16_16000hz - Formato de áudio PCM de 16 bits a uma taxa de amostragem de 16 kHz
  • g711_ulaw - Formato de áudio G.711 μ-law (mu-law) a uma taxa de amostragem de 8kHz
  • g711_alaw - Formato de áudio G.711 A-law a uma taxa de amostragem de 8kHz

RealtimeAudioInputTranscriptionSettings

Configuração para transcrição de áudio de entrada.

Campo Tipo Description
modelo cadeia (de caracteres) O modelo de transcrição.
Suportado por gpt-realtime e gpt-realtime-mini:
whisper-1, gpt-4o-transcribe, gpt-4o-mini-transcribe, gpt-4o-transcribe-diarize.
Suportado com todos os outros modelos e agentes: azure-speech
linguagem cadeia (de caracteres) Código de idioma opcional em BCP-47 (por exemplo, en-US), ou ISO-639-1 (por exemplo, en), ou vários idiomas com deteção automática (por exemplo, en,zh).
custom_speech objecto Configuração opcional para modelos de fala personalizados, válida apenas para azure-speech modelo.
phrase_list string[] Lista opcional de dicas de frase para reconhecimento de viés, válida apenas para azure-speech modelo.
avisar cadeia (de caracteres) Texto prompt opcional para orientar a transcrição, válido apenas para whisper-1, gpt-4o-transcribegpt-4o-mini-transcribe e gpt-4o-transcribe-diarize modelos.

RealtimeInputAudioNoiseReductionSettings

Pode tratar-se de:

RealtimeOpenAINoiseReduction

Configuração de redução de ruído OpenAI com campo de tipo explícito, disponível apenas para gpt-realtime e gpt-realtime-mini modelos.

Campo Tipo Description
tipo cadeia (de caracteres) near_field ou far_field

RealtimeAzureDeepNoiseSuppression

Configuração para redução de ruído de áudio de entrada.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "azure_deep_noise_suppression"

RealtimeInputAudioEchoCancellationSettings

Configuração de cancelamento de eco para processamento de áudio no servidor.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "server_echo_cancellation"

Configuração de voz

RealtimeVoice

União de todas as configurações de voz suportadas.

Pode tratar-se de:

RealtimeOpenAIVoice

Configuração de voz OpenAI com campo de tipo explícito.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "openai"
nome cadeia (de caracteres) Nome de voz OpenAI: alloy, ash, ballad, coral, , echosage, shimmer, verse, marin, ,cedar

RealtimeAzureVoice

Base para configurações de voz do Azure. Esta é uma união discriminada com diferentes tipos:

RealtimeAzureStandardVoice

Configuração de voz padrão do Azure.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "azure-standard"
nome cadeia (de caracteres) Nome da voz (não pode estar vazio)
temperatura número Opcional. Temperatura entre 0,0 e 1,0
custom_lexicon_url cadeia (de caracteres) Opcional. URL para léxico personalizado
prefer_locales string[] Opcional. Localidades preferidas
Locais preferentes alteram os sotaques das línguas. Se o valor não estiver definido, o TTS usará o sotaque padrão de cada língua. por exemplo, quando o TTS fala inglês, usa o sotaque inglês americano. E ao falar espanhol, usa o sotaque mexicano espanhol.
Se definirem o prefer_locales para ["en-GB", "es-ES"], o sotaque inglês será o inglês britânico e o sotaque espanhol será o espanhol europeu. E o TTS também é capaz de falar outras línguas como francês, chinês, etc.
região cadeia (de caracteres) Opcional. Especificação da localidade
Impor a localização para a saída TTS. Se não estiver definido, o TTS usará sempre a localização indicada para falar. por exemplo, definir o local para en-US, o TTS usará sempre o sotaque do inglês americano para falar o conteúdo do texto, mesmo que o conteúdo do texto esteja noutra língua. E o TTS gera silêncio se o conteúdo do texto estiver em chinês.
style cadeia (de caracteres) Opcional. Estilo de voz
Lote cadeia (de caracteres) Opcional. Ajuste de passo
taxa cadeia (de caracteres) Opcional. Ajuste da taxa de fala
volume cadeia (de caracteres) Opcional. Ajuste de volume
RealtimeAzureCustomVoice

Configuração de voz personalizada do Azure (preferencial para vozes personalizadas).

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "azure-custom"
nome cadeia (de caracteres) Nome da voz (não pode estar vazio)
endpoint_id cadeia (de caracteres) ID do ponto final (não pode estar vazio)
temperatura número Opcional. Temperatura entre 0,0 e 1,0
custom_lexicon_url cadeia (de caracteres) Opcional. URL para léxico personalizado
prefer_locales string[] Opcional. Localidades preferidas
Locais preferentes alteram os sotaques das línguas. Se o valor não estiver definido, o TTS usará o sotaque padrão de cada língua. por exemplo, quando o TTS fala inglês, usa o sotaque inglês americano. E ao falar espanhol, usa o sotaque mexicano espanhol.
Se definirem o prefer_locales para ["en-GB", "es-ES"], o sotaque inglês será o inglês britânico e o sotaque espanhol será o espanhol europeu. E o TTS também é capaz de falar outras línguas como francês, chinês, etc.
região cadeia (de caracteres) Opcional. Especificação da localidade
Impor a localização para a saída TTS. Se não estiver definido, o TTS usará sempre a localização indicada para falar. por exemplo, definir o local para en-US, o TTS usará sempre o sotaque do inglês americano para falar o conteúdo do texto, mesmo que o conteúdo do texto esteja noutra língua. E o TTS gera silêncio se o conteúdo do texto estiver em chinês.
style cadeia (de caracteres) Opcional. Estilo de voz
Lote cadeia (de caracteres) Opcional. Ajuste de passo
taxa cadeia (de caracteres) Opcional. Ajuste da taxa de fala
volume cadeia (de caracteres) Opcional. Ajuste de volume

Exemplo:

{
  "type": "azure-custom",
  "name": "my-custom-voice",
  "endpoint_id": "12345678-1234-1234-1234-123456789012",
  "temperature": 0.7,
  "style": "cheerful",
  "locale": "en-US"
}
RealtimeAzurePersonalVoice

Configuração de voz pessoal do Azure.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "azure-personal"
nome cadeia (de caracteres) Nome da voz (não pode estar vazio)
temperatura número Opcional. Temperatura entre 0,0 e 1,0
modelo cadeia (de caracteres) Modelo neural subjacente: DragonLatestNeural, PhoenixLatestNeural, PhoenixV2Neural
custom_lexicon_url cadeia (de caracteres) Opcional. URL para léxico personalizado
prefer_locales string[] Opcional. Localidades preferidas
Locais preferentes alteram os sotaques das línguas. Se o valor não estiver definido, o TTS usará o sotaque padrão de cada língua. por exemplo, quando o TTS fala inglês, usa o sotaque inglês americano. E ao falar espanhol, usa o sotaque mexicano espanhol.
Se definirem o prefer_locales para ["en-GB", "es-ES"], o sotaque inglês será o inglês britânico e o sotaque espanhol será o espanhol europeu. E o TTS também é capaz de falar outras línguas como francês, chinês, etc.
região cadeia (de caracteres) Opcional. Especificação da localidade
Impor a localização para a saída TTS. Se não estiver definido, o TTS usará sempre a localização indicada para falar. por exemplo, definir o local para en-US, o TTS usará sempre o sotaque do inglês americano para falar o conteúdo do texto, mesmo que o conteúdo do texto esteja noutra língua. E o TTS gera silêncio se o conteúdo do texto estiver em chinês.
Lote cadeia (de caracteres) Opcional. Ajuste de passo
taxa cadeia (de caracteres) Opcional. Ajuste da taxa de fala
volume cadeia (de caracteres) Opcional. Ajuste de volume

Deteção de turnos

RealtimeTurnDetection

Configuração para deteção de turnos. Esta é uma união discriminada que suporta vários tipos de DVA.

RealtimeServerVAD

Deteção de turnos baseada em VAD de base.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "server_vad"
limiar número Opcional. Limiar de ativação (0,0-1,0)
prefix_padding_ms número inteiro Opcional. Preenchimento de áudio antes do início da fala
silence_duration_ms número inteiro Opcional. Duração do silêncio para detetar o fim da fala
end_of_utterance_detection RealtimeEOUDetection Opcional. Configuração de deteção de fim de emissão
criar_resposta Booleano Opcional. Habilite ou desabilite se uma resposta é gerada.
resposta_de_interrupção Booleano Opcional. Ativar ou desativar a interrupção de barcaças (padrão: false)
auto_truncate Booleano Opcional. Truncar automaticamente em caso de interrupção (padrão: false)
RealtimeOpenAISemanticVAD

Configuração VAD semântica OpenAI que usa um modelo para determinar quando o usuário terminou de falar. Disponível apenas para gpt-realtime e gpt-realtime-mini modelos.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "semantic_vad"
Entusiasmo cadeia (de caracteres) Opcional. Esta é uma maneira de controlar o quão ansioso o modelo está para interromper o usuário, ajustando o tempo limite máximo de espera. No modo de transcrição, mesmo que o modelo não responda, isso afeta a forma como o áudio é fragmentado.
São permitidos os seguintes valores:
- auto (padrão) é equivalente a medium,
- low permitirá que o usuário dedique seu tempo para falar,
- high irá fragmentar o áudio o mais rápido possível.

Se quiser que o modelo responda com mais frequência no modo de conversação ou que retorne eventos de transcrição mais rapidamente no modo de transcrição, você pode definir a ânsia como high.
Por outro lado, se você quiser deixar o usuário falar ininterruptamente no modo de conversa, ou se quiser blocos de transcrição maiores no modo de transcrição, você pode definir ansiosamente como low.
criar_resposta Booleano Opcional. Habilite ou desabilite se uma resposta é gerada.
resposta_de_interrupção Booleano Opcional. Ativar ou desativar a interrupção de barcaças (padrão: false)
RealtimeAzureSemanticVAD

VAD semântico do Azure, que determina quando o usuário inicia e fala usando um modelo semântico de fala, fornecendo uma deteção mais robusta em ambientes barulhentos.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "azure_semantic_vad"
limiar número Opcional. Limiar de ativação
prefix_padding_ms número inteiro Opcional. Preenchimento de áudio antes da fala
silence_duration_ms número inteiro Opcional. Duração do silêncio para o fim da fala
end_of_utterance_detection RealtimeEOUDetection Opcional. Configuração de deteção EOU
speech_duration_ms número inteiro Opcional. Duração mínima da fala
remove_filler_words Booleano Opcional. Remover palavras de preenchimento (padrão: false)
Idiomas string[] Opcional. Suporta Inglês. Outras línguas serão ignoradas.
criar_resposta Booleano Opcional. Habilite ou desabilite se uma resposta é gerada.
resposta_de_interrupção Booleano Opcional. Ativar ou desativar a interrupção de barcaças (padrão: false)
auto_truncate Booleano Opcional. Truncar automaticamente em caso de interrupção (padrão: false)
RealtimeAzureSemanticVADMultilingual

VAD semântico do Azure (variante padrão).

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "azure_semantic_vad_multilingual"
limiar número Opcional. Limiar de ativação
prefix_padding_ms número inteiro Opcional. Preenchimento de áudio antes da fala
silence_duration_ms número inteiro Opcional. Duração do silêncio para o fim da fala
end_of_utterance_detection RealtimeEOUDetection Opcional. Configuração de deteção EOU
speech_duration_ms número inteiro Opcional. Duração mínima da fala
remove_filler_words Booleano Opcional. Remova palavras de preenchimento (padrão: false).
Idiomas string[] Opcional. Suporta Inglês, Espanhol, Francês, Italiano, Alemão (DE), Japonês, Português, Chinês, Coreano, Hindi. Outras línguas serão ignoradas.
criar_resposta Booleano Opcional. Habilite ou desabilite se uma resposta é gerada.
resposta_de_interrupção Booleano Opcional. Ativar ou desativar a interrupção de barcaças (padrão: false)
auto_truncate Booleano Opcional. Truncar automaticamente em caso de interrupção (padrão: false)

RealtimeEOUDetection

O Azure End-of-Utterance (EOU) pode indicar quando o usuário final parou de falar enquanto permite pausas naturais. A deteção de fim de emissão pode reduzir significativamente os sinais prematuros de fim de turno sem adicionar latência percetível pelo usuário.

Campo Tipo Description
modelo cadeia (de caracteres) Pode ser semantic_detection_v1 compatível com inglês ou semantic_detection_v1_multilingual inglês, espanhol, francês, italiano, alemão (DE), japonês, português, chinês, coreano, hindi
threshold_level cadeia (de caracteres) Opcional. Nível de limite de deteção (low, mediumhigh , e default), o padrão é medium igual à configuração. Com uma configuração mais baixa, a probabilidade de a sentença estar completa será maior.
timeout_ms (tempo limite em milissegundos) número Opcional. Tempo máximo em milissegundos para esperar por mais fala do usuário. O padrão é 1000 ms.

Configuração do avatar

RealtimeAvatarConfig

Configuração para streaming e comportamento de avatar.

Campo Tipo Description
ice_servers RealtimeIceServer[] Opcional. Servidores ICE para WebRTC
carácter cadeia (de caracteres) Nome do personagem ou ID do avatar
style cadeia (de caracteres) Opcional. Estilo de avatar (tom emocional, estilo de fala)
personalizado Booleano Se o avatar é personalizado
vídeo VideoParams em tempo real Opcional. Configuração de vídeo

RealtimeIceServer

Configuração do servidor ICE para negociação de conexão WebRTC.

Campo Tipo Description
URLs string[] URLs do servidor ICE (pontos de extremidade TURN ou STUN)
nome de utilizador cadeia (de caracteres) Opcional. Nome de usuário para autenticação
credencial cadeia (de caracteres) Opcional. Credencial para autenticação

VideoParams em tempo real

Parâmetros de streaming de vídeo para avatar.

Campo Tipo Description
taxa de bits número inteiro Opcional. Bitrate em bits por segundo (padrão: 2000000)
codec cadeia (de caracteres) Opcional. Codec de vídeo, atualmente apenas h264 (padrão: h264)
Rec. RealtimeVideoCrop Opcional. Configurações de corte
resolução RealtimeVideoResolution Opcional. Configurações de resolução

RealtimeVideoCrop

Definição de retângulo de corte de vídeo.

Campo Tipo Description
top_left inteiro[] Canto superior esquerdo [x, y], inteiros não negativos
bottom_right inteiro[] Canto inferior direito [x, y], inteiros não negativos

RealtimeVideoResolution

Especificação de resolução de vídeo.

Campo Tipo Description
Largura número inteiro Largura em pixels (deve ser > 0)
altura número inteiro Altura em pixels (deve ser > 0)

Configuração de animação

RealtimeAnimation

Configuração para saídas de animação, incluindo blendshapes e visemes.

Campo Tipo Description
model_name cadeia (de caracteres) Opcional. Nome do modelo de animação (padrão: "default")
saídas RealtimeAnimationOutputType[] Opcional. Tipos de saída (padrão: ["blendshapes"])

RealtimeAnimationOutputType

Tipos de dados de animação a serem produzidos.

Valores permitidos:

  • blendshapes - Dados de misturas faciais
  • viseme_id - Dados do identificador Viseme

Configuração da sessão

RealtimeRequestSession

Objeto de configuração de sessão usado em session.update eventos.

Campo Tipo Description
modelo cadeia (de caracteres) Opcional. Nome do modelo a ser usado
modalities RealtimeModality[] Opcional. As modalidades suportadas para a sessão.

Por exemplo, "modalidades": ["texto", "áudio"] é a configuração padrão que habilita as modalidades de texto e áudio. Para habilitar apenas texto, defina "modalidades": ["texto"]. Para ativar a saída do avatar, defina "modalidades": ["texto", "áudio", "avatar"]. Não é possível ativar apenas o áudio.
animação RealtimeAnimation Opcional. Configuração de animação
voice RealtimeVoice Opcional. Configuração de voz
instructions cadeia (de caracteres) Opcional. Instruções do sistema para o modelo. As instruções podem orientar o áudio de saída se as vozes OpenAI forem usadas, mas podem não se aplicar às vozes do Azure.
input_audio_sampling_rate número inteiro Opcional. Taxa de amostragem de áudio de entrada em Hz (padrão: 24000 para pcm16, 8000 para g711_ulaw e g711_alaw)
input_audio_format RealtimeAudioFormat Opcional. Formato de áudio de entrada (padrão: pcm16)
output_audio_format RealtimeOutputAudioFormat Opcional. Formato de saída de áudio (padrão: pcm16)
input_audio_noise_reduction RealtimeInputAudioNoiseReductionSettings Configuração para redução de ruído de áudio de entrada. Isso pode ser definido como null para desativar. A redução de ruído filtra o áudio adicionado ao buffer de áudio de entrada antes de ser enviado ao VAD e ao modelo. A filtragem do áudio pode melhorar a precisão da deteção de VAD e da deteção de mudança de estado (reduzindo falsos positivos) e o desempenho do modelo, ao aprimorar a perceção do áudio de entrada.

Esta propriedade é anulável.
input_audio_echo_cancellation RealtimeInputAudioEchoCancellationSettings Configuração para cancelamento de eco de áudio de entrada. Isso pode ser definido como null para desativar. Este cancelamento de eco do lado do serviço pode ajudar a melhorar a qualidade do áudio de entrada, reduzindo o impacto do eco e da reverberação.

Esta propriedade é anulável.
input_audio_transcription RealtimeAudioInputTranscriptionSettings A configuração para transcrição de áudio de entrada. A configuração é nula (desativada) por padrão. A transcrição de áudio de entrada não é nativa do modelo, uma vez que o modelo consome áudio diretamente. A transcrição é executada de forma assíncrona através do /audio/transcriptions ponto final e deve ser tratada como orientação do conteúdo de áudio de entrada, em vez de precisamente o que o modelo ouviu. Para obter orientação adicional para o serviço de transcrição, o cliente pode, opcionalmente, definir o idioma e solicitar a transcrição.

Esta propriedade é anulável.
turn_detection RealtimeTurnDetection As configurações de deteção de turno para a sessão. Isso pode ser definido como null para desativar.
Ferramentas matriz de RealtimeTool As ferramentas disponíveis para o modelo para a sessão.
tool_choice RealtimeToolChoice A escolha da ferramenta para a sessão.

Valores permitidos: auto, none, e required. Caso contrário, você pode especificar o nome da função a ser usada.
temperatura número A temperatura de amostragem para o modelo. Os valores de temperatura permitidos estão limitados a [0,6, 1,2]. O padrão é 0,8.
max_response_output_tokens inteiro ou "inf" O número máximo de tokens de saída por resposta do assistente, incluindo chamadas de ferramentas.

Especifique um inteiro entre 1 e 4096 para limitar os tokens de saída. Caso contrário, defina o valor como "inf" para permitir o número máximo de tokens.

Por exemplo, para limitar os tokens de saída a 1000, defina "max_response_output_tokens": 1000. Para permitir o número máximo de tokens, defina "max_response_output_tokens": "inf".

O padrão é "inf".
Avatar RealtimeAvatarConfig Opcional. Configuração do avatar
output_audio_timestamp_types RealtimeAudioTimestampType[] Opcional. Tipos de carimbo de data/hora para saída de áudio

Modalidade em tempo real

Modalidades de sessão suportadas.

Valores permitidos:

  • text - Entrada/saída de texto
  • audio - Entrada/saída de áudio
  • animation - Saída de animação
  • avatar - Saída de vídeo avatar

RealtimeAudioTimestampType

Tipos de carimbo de data/hora de saída suportados no conteúdo de resposta de áudio.

Valores permitidos:

  • word - Carimbos de data/hora por palavra na saída de áudio

Configuração da ferramenta

Suportamos dois tipos de ferramentas: chamada de funções e ferramentas MCP, que permitem ligar a um servidor mcp.

RealtimeTool

Definição de ferramenta para chamada de função.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "function"
nome cadeia (de caracteres) Nome da função
descrição cadeia (de caracteres) Descrição da função e diretrizes de uso
parameters objecto Parâmetros de função como objeto de esquema JSON

RealtimeToolChoice

Estratégia de seleção de ferramentas.

Pode tratar-se de:

  • "auto" - Deixe o modelo escolher
  • "none" - Não use ferramentas
  • "required" - Deve usar uma ferramenta
  • { "type": "function", "name": "function_name" } - Use uma função específica

MCPTool

Configuração da ferramenta MCP.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "mcp"
rótulo de servidor cadeia (de caracteres) Required. O rótulo do servidor MCP.
URL do servidor cadeia (de caracteres) Required. A URL do servidor MCP.
ferramentas permitidas string[] Opcional. A lista de nomes de ferramentas permitidos. Se não for especificado, todas as ferramentas são permitidas.
headers objecto Opcional. Cabeçalhos adicionais para incluir nos pedidos MCP.
autorização cadeia (de caracteres) Opcional. Token de autorização para pedidos MCP.
requer_aprovação String ou dicionário Opcional.
Se definido como uma cadeia, o valor deve ser never ou always.
Se definido para um dicionário, deve estar no formato {"never": ["<tool_name_1>", "<tool_name_2>"], "always": ["<tool_name_3>"]}.
O valor predefinido é always.
Quando definida para always, a execução da ferramenta requer aprovação, mcp_approval_request será enviada ao cliente quando o argumento mcp estiver concluído, e só será executada quando mcp_approval_response com approve=true for recebida.
Quando definida para never, a ferramenta será executada automaticamente sem aprovação.

RealtimeConversationResponseItem

Este é um tipo de união que pode ser um dos seguintes:

RealtimeConversationUserMessageItem

Item de mensagem do usuário.

Campo Tipo Description
id cadeia (de caracteres) A ID exclusiva do item.
tipo cadeia (de caracteres) Deve ser "message"
objecto cadeia (de caracteres) Deve ser "conversation.item"
função cadeia (de caracteres) Deve ser "user"
conteúdo RealtimeInputTextContentPart O conteúdo da mensagem.
estado RealtimeItemStatus O estado do item.

RealtimeConversationAssistantMessageItem

Item de mensagem do assistente.

Campo Tipo Description
id cadeia (de caracteres) A ID exclusiva do item.
tipo cadeia (de caracteres) Deve ser "message"
objecto cadeia (de caracteres) Deve ser "conversation.item"
função cadeia (de caracteres) Deve ser "assistant"
conteúdo RealtimeOutputTextContentPart[] ou RealtimeOutputAudioContentPart[] O conteúdo da mensagem.
estado RealtimeItemStatus O estado do item.

RealtimeConversationSystemMessageItem

Item de mensagem do sistema.

Campo Tipo Description
id cadeia (de caracteres) A ID exclusiva do item.
tipo cadeia (de caracteres) Deve ser "message"
objecto cadeia (de caracteres) Deve ser "conversation.item"
função cadeia (de caracteres) Deve ser "system"
conteúdo RealtimeInputTextContentPart[] O conteúdo da mensagem.
estado RealtimeItemStatus O estado do item.

RealtimeConversationFunctionCallItem

Item de solicitação de chamada de função.

Campo Tipo Description
id cadeia (de caracteres) A ID exclusiva do item.
tipo cadeia (de caracteres) Deve ser "function_call"
objecto cadeia (de caracteres) Deve ser "conversation.item"
nome cadeia (de caracteres) O nome da função a ser chamada.
arguments cadeia (de caracteres) Os argumentos para a chamada de função como uma cadeia de caracteres JSON.
call_id cadeia (de caracteres) O ID exclusivo da chamada de função.
estado RealtimeItemStatus O estado do item.

RealtimeConversationFunctionCallOutputItem

Item de resposta de chamada de função.

Campo Tipo Description
id cadeia (de caracteres) A ID exclusiva do item.
tipo cadeia (de caracteres) Deve ser "function_call_output"
objecto cadeia (de caracteres) Deve ser "conversation.item"
nome cadeia (de caracteres) O nome da função que foi chamada.
output cadeia (de caracteres) A saída da chamada de função.
call_id cadeia (de caracteres) O ID exclusivo da chamada de função.
estado RealtimeItemStatus O estado do item.

RealtimeConversationMCPListToolsItem

Lista de ferramentas MCP item de resposta.

Campo Tipo Description
id cadeia (de caracteres) A ID exclusiva do item.
tipo cadeia (de caracteres) Deve ser "mcp_list_tools"
rótulo de servidor cadeia (de caracteres) O rótulo do servidor MCP.

RealtimeConversationMCPCallItem

Item de resposta de chamada MCP.

Campo Tipo Description
id cadeia (de caracteres) A ID exclusiva do item.
tipo cadeia (de caracteres) Deve ser "mcp_call"
rótulo de servidor cadeia (de caracteres) O rótulo do servidor MCP.
nome cadeia (de caracteres) O nome da ferramenta a chamar.
approval_request_id cadeia (de caracteres) O ID do pedido de aprovação para a chamada MCP.
arguments cadeia (de caracteres) Os argumentos a favor da chamada MCP.
output cadeia (de caracteres) A saída da chamada MCP.
erro objecto O erro detalha se a chamada MCP falhou.

RealtimeConversationMCPApprovalRequestItem

Item do pedido de aprovação do MCP.

Campo Tipo Description
id cadeia (de caracteres) A ID exclusiva do item.
tipo cadeia (de caracteres) Deve ser "mcp_approval_request"
rótulo de servidor cadeia (de caracteres) O rótulo do servidor MCP.
nome cadeia (de caracteres) O nome da ferramenta a chamar.
arguments cadeia (de caracteres) Os argumentos a favor da chamada MCP.

RealtimeItemStatus

Status dos itens de conversa.

Valores permitidos:

  • in_progress - Atualmente em processamento
  • completed - Concluído com sucesso
  • incomplete - Incompleto (interrompido ou reprovado)

RealtimeContentPart

Parte de conteúdo dentro de uma mensagem.

RealtimeInputTextContentPart

Parte de conteúdo de texto.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "input_text"
enviar SMS cadeia (de caracteres) O conteúdo do texto

RealtimeOutputTextContentPart

Parte de conteúdo de texto.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "text"
enviar SMS cadeia (de caracteres) O conteúdo do texto

RealtimeInputAudioContentPart

Parte de conteúdo de áudio.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "input_audio"
audio cadeia (de caracteres) Opcional. Dados de áudio codificados em Base64
transcrição cadeia (de caracteres) Opcional. Transcrição de áudio

RealtimeOutputAudioContentPart

Parte de conteúdo de áudio.

Campo Tipo Description
tipo cadeia (de caracteres) Deve ser "audio"
audio cadeia (de caracteres) Dados de áudio codificados em Base64
transcrição cadeia (de caracteres) Opcional. Transcrição de áudio

Objetos de resposta

RealtimeResponse

Objeto de resposta que representa uma resposta de inferência de modelo.

Campo Tipo Description
id cadeia (de caracteres) Opcional. ID da resposta
objecto cadeia (de caracteres) Opcional. Sempre "realtime.response"
estado RealtimeResponseStatus Opcional. Estado da resposta
detalhes_do_status RealtimeResponseStatusDetails Opcional. Detalhes do status
output RealtimeConversationResponseItem[] Opcional. Itens de saída
utilização RealtimeUsage Opcional. Estatísticas de uso de token
conversation_id cadeia (de caracteres) Opcional. ID de conversação associada
voice RealtimeVoice Opcional. Voz utilizada para resposta
modalities string[] Opcional. Modalidades utilizadas
output_audio_format RealtimeOutputAudioFormat Opcional. Formato de áudio usado
temperatura número Opcional. Temperatura utilizada
max_response_output_tokens inteiro ou "inf" Opcional. Max tokens usados

RealtimeResponseStatus

Valores de status de resposta.

Valores permitidos:

  • in_progress - A resposta está a ser gerada
  • completed - Resposta concluída com sucesso
  • cancelled - Resposta cancelada
  • incomplete - Resposta incompleta (interrompida)
  • failed - Resposta falhou com erro

RealtimeUsage

Estatísticas de uso de tokens.

Campo Tipo Description
total_tokens número inteiro Total de tokens usados
input_tokens número inteiro Tokens de entrada usados
output_tokens número inteiro Tokens de saída gerados
input_token_details TokenDetails Discriminação dos tokens de entrada
output_token_details TokenDetails Decomposição dos tokens de saída

TokenDetails

Detalhamento detalhado do uso do token.

Campo Tipo Description
cached_tokens número inteiro Opcional. Tokens armazenados em cache usados
text_tokens número inteiro Opcional. Tokens de texto usados
audio_tokens número inteiro Opcional. Tokens de áudio usados

Tratamento de erros

RealtimeErrorDetails

Objeto de informações de erro.

Campo Tipo Description
tipo cadeia (de caracteres) Tipo de erro (por exemplo, "invalid_request_error", "server_error")
código cadeia (de caracteres) Opcional. Código de erro específico
mensagem cadeia (de caracteres) Descrição do erro legível por humanos
param cadeia (de caracteres) Opcional. Parâmetro relacionado com o erro
event_id cadeia (de caracteres) Opcional. ID do evento do cliente que causou o erro

RealtimeConversationRequestItem

Use o RealtimeConversationRequestItem objeto para criar um novo item na conversa por meio do evento conversation.item.create .

Este é um tipo de união que pode ser um dos seguintes:

RealtimeSystemMessageItem

Um item de mensagem do sistema.

Campo Tipo Description
tipo cadeia (de caracteres) O tipo do item.

Valores permitidos: message
função cadeia (de caracteres) O papel da mensagem.

Valores permitidos: system
conteúdo matriz de RealtimeInputTextContentPart O conteúdo da mensagem.
id cadeia (de caracteres) A ID exclusiva do item. O cliente pode especificar o ID para ajudar a gerenciar o contexto do lado do servidor. Se o cliente não fornecer um ID, o servidor gerará um.

RealtimeUserMessageItem

Um item de mensagem do usuário.

Campo Tipo Description
tipo cadeia (de caracteres) O tipo do item.

Valores permitidos: message
função cadeia (de caracteres) O papel da mensagem.

Valores permitidos: user
conteúdo matriz de RealtimeInputTextContentPart ou RealtimeInputAudioContentPart O conteúdo da mensagem.
id cadeia (de caracteres) A ID exclusiva do item. O cliente pode especificar o ID para ajudar a gerenciar o contexto do lado do servidor. Se o cliente não fornecer um ID, o servidor gerará um.

RealtimeAssistantMessageItem

Um item de mensagem do assistente.

Campo Tipo Description
tipo cadeia (de caracteres) O tipo do item.

Valores permitidos: message
função cadeia (de caracteres) O papel da mensagem.

Valores permitidos: assistant
conteúdo matriz de RealtimeOutputTextContentPart O conteúdo da mensagem.

RealtimeFunctionCallItem

Um item de chamada de função.

Campo Tipo Description
tipo cadeia (de caracteres) O tipo do item.

Valores permitidos: function_call
nome cadeia (de caracteres) O nome da função a ser chamada.
arguments cadeia (de caracteres) Os argumentos da função chamam como uma cadeia de caracteres JSON.
call_id cadeia (de caracteres) A ID do item de chamada de função.
id cadeia (de caracteres) A ID exclusiva do item. O cliente pode especificar o ID para ajudar a gerenciar o contexto do lado do servidor. Se o cliente não fornecer um ID, o servidor gerará um.

RealtimeFunctionCallOutputItem

Um item de saída de chamada de função.

Campo Tipo Description
tipo cadeia (de caracteres) O tipo do item.

Valores permitidos: function_call_output
call_id cadeia (de caracteres) A ID do item de chamada de função.
output cadeia (de caracteres) A saída da chamada de função, esta é uma cadeia de caracteres de forma livre com o resultado da função, também pode estar vazia.
id cadeia (de caracteres) A ID exclusiva do item. Se o cliente não fornecer um ID, o servidor gerará um.

RealtimeMCPApprovalResponseItem

Um item de resposta de aprovação do MCP.

Campo Tipo Description
tipo cadeia (de caracteres) O tipo do item.

Valores permitidos: mcp_approval_response
approve Booleano Se o pedido do MCP é aprovado.
approval_request_id cadeia (de caracteres) O ID do pedido de aprovação do MCP.

RealtimeFunctionTool

A definição de uma ferramenta de função como usada pelo ponto de extremidade em tempo real.

Campo Tipo Description
tipo cadeia (de caracteres) O tipo da ferramenta.

Valores permitidos: function
nome cadeia (de caracteres) O nome da função.
descrição cadeia (de caracteres) A descrição da função, incluindo diretrizes de uso. Por exemplo, "Use esta função para obter a hora atual."
parameters objecto Os parâmetros da função na forma de um objeto JSON.

RealtimeItemStatus

Valores permitidos:

  • in_progress
  • completed
  • incomplete

RealtimeResponseAudioContentPart

Campo Tipo Description
tipo cadeia (de caracteres) O tipo da parte de conteúdo.

Valores permitidos: audio
transcrição cadeia (de caracteres) A transcrição do áudio.

Esta propriedade é anulável.

RealtimeResponseFunctionCallItem

Campo Tipo Description
tipo cadeia (de caracteres) O tipo do item.

Valores permitidos: function_call
nome cadeia (de caracteres) O nome do item de chamada de função.
call_id cadeia (de caracteres) A ID do item de chamada de função.
arguments cadeia (de caracteres) Os argumentos do item de chamada de função.
estado RealtimeItemStatus O estado do item.

RealtimeResponseFunctionCallOutputItem

Campo Tipo Description
tipo cadeia (de caracteres) O tipo do item.

Valores permitidos: function_call_output
call_id cadeia (de caracteres) A ID do item de chamada de função.
output cadeia (de caracteres) A saída do item de chamada de função.

RealtimeResponseOptions

Campo Tipo Description
modalities matriz As modalidades que a sessão suporta.

Valores permitidos: text, audio

Por exemplo, "modalities": ["text", "audio"] é a configuração padrão que habilita as modalidades de texto e áudio. Para ativar apenas texto, defina "modalities": ["text"]. Não é possível ativar apenas o áudio.
instructions cadeia (de caracteres) As instruções (a mensagem do sistema) para orientar as respostas do modelo.
voice RealtimeVoice A voz usada para a resposta do modelo para a sessão.

Uma vez que a voz é usada na sessão para a resposta de áudio do modelo, ela não pode ser alterada.
Ferramentas matriz de RealtimeTool As ferramentas disponíveis para o modelo para a sessão.
tool_choice RealtimeToolChoice A escolha da ferramenta para a sessão.
temperatura número A temperatura de amostragem para o modelo. Os valores de temperatura permitidos estão limitados a [0,6, 1,2]. O padrão é 0,8.
max_response_output_tokens inteiro ou "inf" O número máximo de tokens de saída por resposta do assistente, incluindo chamadas de ferramentas.

Especifique um inteiro entre 1 e 4096 para limitar os tokens de saída. Caso contrário, defina o valor como "inf" para permitir o número máximo de tokens.

Por exemplo, para limitar os tokens de saída a 1000, defina "max_response_output_tokens": 1000. Para permitir o número máximo de tokens, defina "max_response_output_tokens": "inf".

O padrão é "inf".
conversa cadeia (de caracteres) Controla a qual conversa a resposta é adicionada. Os valores suportados são auto e none.

O auto valor (ou não definir essa propriedade) garante que o conteúdo da resposta seja adicionado à conversa padrão da sessão.

Defina essa propriedade como none para criar uma resposta fora de banda na qual os itens não serão adicionados à conversa padrão.

O padrão é "auto"
metadados mapa Conjunto de até 16 pares chave-valor que podem ser anexados a um objeto. Isso pode ser útil para armazenar informações adicionais sobre o objeto em um formato estruturado. As teclas podem ter no máximo 64 caracteres e os valores podem ter, no máximo, 512 caracteres.

Por exemplo: metadata: { topic: "classification" }

RealtimeResponseSession

O RealtimeResponseSession objeto representa uma sessão na API em tempo real. Ele é usado em alguns dos eventos do servidor, como:

Campo Tipo Description
objecto cadeia (de caracteres) O objeto session.

Valores permitidos: realtime.session
id cadeia (de caracteres) O ID exclusivo da sessão.
modelo cadeia (de caracteres) O modelo usado para a sessão.
modalities matriz As modalidades que a sessão suporta.

Valores permitidos: text, audio

Por exemplo, "modalities": ["text", "audio"] é a configuração padrão que habilita as modalidades de texto e áudio. Para ativar apenas texto, defina "modalities": ["text"]. Não é possível ativar apenas o áudio.
instructions cadeia (de caracteres) As instruções (a mensagem do sistema) para orientar as respostas de texto e áudio do modelo.

Aqui estão alguns exemplos de instruções para ajudar a orientar o conteúdo e o formato das respostas de texto e áudio:
"instructions": "be succinct"
"instructions": "act friendly"
"instructions": "here are examples of good responses"

Aqui estão alguns exemplos de instruções para ajudar a orientar o comportamento do áudio:
"instructions": "talk quickly"
"instructions": "inject emotion into your voice"
"instructions": "laugh frequently"

Embora o modelo nem sempre siga essas instruções, elas fornecem orientação sobre o comportamento desejado.
voice RealtimeVoice A voz usada para a resposta do modelo para a sessão.

Uma vez que a voz é usada na sessão para a resposta de áudio do modelo, ela não pode ser alterada.
input_audio_sampling_rate número inteiro A taxa de amostragem para o áudio de entrada.
input_audio_format RealtimeAudioFormat O formato para o áudio de entrada.
output_audio_format RealtimeAudioFormat O formato para o áudio de saída.
input_audio_transcription RealtimeAudioInputTranscriptionSettings As configurações para transcrição de entrada de áudio.

Esta propriedade é anulável.
turn_detection RealtimeTurnDetection As configurações de deteção de turno para a sessão.

Esta propriedade é anulável.
Ferramentas matriz de RealtimeTool As ferramentas disponíveis para o modelo para a sessão.
tool_choice RealtimeToolChoice A escolha da ferramenta para a sessão.
temperatura número A temperatura de amostragem para o modelo. Os valores de temperatura permitidos estão limitados a [0,6, 1,2]. O padrão é 0,8.
max_response_output_tokens inteiro ou "inf" O número máximo de tokens de saída por resposta do assistente, incluindo chamadas de ferramentas.

Especifique um inteiro entre 1 e 4096 para limitar os tokens de saída. Caso contrário, defina o valor como "inf" para permitir o número máximo de tokens.

Por exemplo, para limitar os tokens de saída a 1000, defina "max_response_output_tokens": 1000. Para permitir o número máximo de tokens, defina "max_response_output_tokens": "inf".

RealtimeResponseStatusDetails

Campo Tipo Description
tipo RealtimeResponseStatus O status da resposta.

RealtimeRateLimitsItem

Campo Tipo Description
nome cadeia (de caracteres) O nome da propriedade de limite de taxa sobre o qual este item inclui informações.
limit número inteiro O limite máximo configurado para essa propriedade de limite de taxa.
remaining número inteiro A cota restante disponível em relação ao limite configurado para essa propriedade de limite de taxa.
reset_seconds número O tempo restante, em segundos, até que essa propriedade de limite de taxa seja redefinida.