Eventos do servidor para a API Qwen-Omni-Realtime, incluindo eventos de chamada de ferramentas (chamada de funções).
Consulte Qwen-Omni-Realtime .
error
Erro do servidor.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_RoUu4T8yExPMI37GKwaOC",
"type": "error",
"error": {
"type": "invalid_request_error",
"code": "invalid_value",
"message": "Invalid modalities: ['audio']. Supported combinations are: ['text'] and ['audio', 'text'].",
"param": "session.modalities"
}
}
|
typestring Tipo do evento. Este valor é sempre error. |
errorobject Detalhes do erro. Properties typestring Tipo do erro. codestring Código do erro. messagestring Mensagem de erro. paramstring Parâmetro associado ao erro, como session.modalities. |
session.created
Retornado quando um cliente se conecta. Contém a configuração padrão da sessão.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_RdvlSpbBb2ssyBjYrDHjt",
"type": "session.created",
"session": {
"object": "realtime.session",
"model": "qwen3-omni-flash-realtime",
"modalities": [
"text",
"audio"
],
"voice": "Cherry",
"input_audio_format": "pcm",
"output_audio_format": "pcm",
"input_audio_transcription": {
"model": "qwen3-asr-flash-realtime"
},
"turn_detection": {
// The value can be server_vad or semantic_vad (only supported by qwen3.5-omni-realtime series model).
"type": "server_vad",
"threshold": 0,5,
"prefix_padding_ms": 300,
"silence_duration_ms": 800,
"create_response": true,
"interrupt_response": true
},
"enable_search": false,
"search_options": {},
"tools": [],
"temperature": 0,8,
"id": "sess_Ov7GOXoNXhNjlxXtOGKQS"
}
}
|
typestring Tipo do evento. Este valor é sempre session.created. |
sessionobject Configuração da sessão. Properties objectstring Este valor é sempre realtime.session. modelstring Modelo utilizado. modalitiesarray Modalidades de saída do modelo. voicestring Voz do áudio gerado pelo modelo. input_audio_formatstring Formato de áudio de entrada. Apenas pcm é suportado (taxa de amostragem de 16 kHz). output_audio_formatstring Formato de áudio de saída. Apenas pcm é suportado (taxa de amostragem de 24 kHz). input_audio_transcriptionobject Configuração de transcrição. Properties modelstring Modelo de transcrição. Sempre qwen3-asr-flash-realtime. Não configurável. turn_detectionobject Configuração de detecção de atividade de voz (VAD). Properties typestring Tipo de VAD. Os valores válidos são server_vad (padrão) ou semantic_vad. Consulte Client events. thresholdfloat Limiar de detecção do VAD. silence_duration_msinteger Duração do silêncio (ms) que aciona a detecção de fim de fala. idle_timeout_msinteger Tempo limite de ociosidade em milissegundos. Retornado apenas no modo server_vad com os modelos qwen3.5-omni-plus-realtime ou qwen3.5-omni-flash-realtime. enable_searchboolean Indica se a pesquisa na web deve ser ativada. Suportado apenas pela série de modelos Qwen3.5-Omni-Realtime. search_optionsobject Opções para a pesquisa na web. temperaturefloat Parâmetro de temperatura do modelo. |
session.updated
Retornado após uma solicitação session.update bem-sucedida. Em caso de falha, um evento error é retornado em seu lugar.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_X1HsXS4b4uptp6yo1LgKd",
"type": "session.updated",
"session": {
"id": "sess_Aih6vAcY5Ddt6jwFx1tCa",
"object": "realtime.session",
"model": "qwen3-omni-flash-realtime",
"modalities": [
"text",
"audio"
],
"instructions": "You are Xiao Yun, a personal assistant. Answer user questions accurately and in a friendly manner. Always respond with a helpful attitude.",
"voice": "Cherry",
"input_audio_format": "pcm",
"output_audio_format": "pcm",
"input_audio_transcription": {
"model": "qwen3-asr-flash-realtime"
},
"turn_detection": {
// The value can be server_vad or semantic_vad (only supported by qwen3.5-omni-realtime series model).
"type": "server_vad",
"threshold": 0,1,
"prefix_padding_ms": 500,
"silence_duration_ms": 900,
"create_response": true,
"interrupt_response": true
},
"enable_search": true,
"search_options": {
"enable_source": true
},
"tools": [
{
"type": "function",
"function": {
"name": "get_current_weather",
"description": "Useful for querying the weather in a specific city.",
"parameters": {
"type": "object",
"properties": {
"location": {"type": "string", "description": "The city name"}
},
"required": ["location"]
}
}
}
],
"temperature": 0,8,
"max_response_output_token": "inf",
"max_tokens": 16384,
"repetition_penalty": 1,05,
"presence_penalty": 0,0,
"top_k": 50,
"top_p": 1,0,
"seed":-1
}
}
|
typestring Tipo do evento. Este valor é sempre session.updated. |
sessionobject Configuração da sessão. Properties temperaturefloat Parâmetro de temperatura do modelo. modalitiesarray Modalidades de saída do modelo. voicestring Voz do áudio gerado pelo modelo. instructionsstring Objetivo e função do modelo. input_audio_formatstring Formato de áudio de entrada. Apenas pcm é suportado (taxa de amostragem de 16 kHz). output_audio_formatstring Formato de áudio de saída. Apenas pcm é suportado (taxa de amostragem de 24 kHz). input_audio_transcriptionobject Configuração de transcrição. Properties modelstring Modelo de transcrição. Sempre qwen3-asr-flash-realtime. Não configurável. turn_detectionobject Configuração de detecção de atividade de voz (VAD). Properties typestring Tipo de VAD. Os valores válidos são server_vad (padrão) ou semantic_vad. Consulte Client events. thresholdfloat Limiar de detecção do VAD. silence_duration_msinteger Duração do silêncio (ms) que aciona a detecção de fim de fala. idle_timeout_msinteger Tempo limite de ociosidade em milissegundos. Retornado apenas no modo server_vad com os modelos qwen3.5-omni-plus-realtime ou qwen3.5-omni-flash-realtime. enable_searchboolean (opcional) Indica se a pesquisa na web deve ser ativada. Suportado apenas pela série de modelos Qwen3.5-Omni-Realtime. search_optionsobject (opcional) Opções de pesquisa na web. toolsarray (opcional) Definições de ferramentas. Quando configuradas, o modelo pode decidir chamar uma ferramenta com base na entrada do usuário. Properties typestring (obrigatório) Este valor é sempre function. function.namestring (obrigatório) Nome da função, como get_current_weather ou get_current_time. function.descriptionstring (opcional) Descrição da finalidade da função. O modelo usa essa informação para decidir se deve chamar a função. function.parametersobject (opcional) Esquema de parâmetros de entrada. O modelo usa esse esquema para extrair parâmetros. Omita se a função não aceitar parâmetros. Properties typestring (obrigatório) Este valor é sempre object. propertiesobject (opcional) Cada chave é um nome de parâmetro mapeado para um objeto com type e description. requiredarray (opcional) Especifica quais parâmetros de entrada são obrigatórios. top_pfloat Limiar de probabilidade para amostragem de núcleo. top_kinteger Tamanho do conjunto de candidatos para amostragem durante a geração. max_tokensinteger Número máximo de tokens que o modelo pode retornar para esta solicitação. repetition_penaltyfloat Controla a repetição em sequências consecutivas durante a geração. presence_penaltyfloat Controla a repetição no conteúdo gerado. seedinteger Grau de consistência na saída do modelo por solicitação. |
No modo VAD, retornado quando o servidor detecta o início da fala no buffer de áudio.
Pode ser acionado sempre que áudio é adicionado ao buffer antes da detecção de fala.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_Pvp8nEhsQuGCQbFJ9x58n",
"type": "input_audio_buffer.speech_started",
"audio_start_ms": 3647,
"item_id": "item_YbAiGvK2H7YaS34o4R6Ba"
}
|
typestring Tipo do evento. Este valor é sempre input_audio_buffer.speech_started. |
audio_start_msinteger Tempo (ms) desde o início da gravação no buffer de áudio até a primeira detecção de fala. |
item_idstring ID do item de mensagem do usuário criado quando o fim da fala é detectado.
Os itens de mensagem do usuário anexam a entrada do usuário ao histórico da conversa para inferência do modelo.
|
No modo VAD, retornado quando o servidor detecta o fim da fala no buffer de áudio.
Também retorna um evento conversation.item.created com o item de mensagem do usuário correspondente.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_UhQiqNVRsgUiq4KUS5Xb5",
"type": "input_audio_buffer.speech_stopped",
"audio_end_ms": 4453,
"item_id": "item_YbAiGvK2H7YaS34o4R6Ba"
}
|
typestring Tipo do evento. Este valor é sempre input_audio_buffer.speech_stopped. |
audio_end_msinteger Tempo (ms) desde o início da sessão até a detecção do fim da fala. |
item_idstring ID do item de mensagem do usuário que será criado. |
Retornado quando o buffer de áudio de entrada é confirmado.
- No modo VAD, o servidor confirma automaticamente o buffer ao detectar o fim da fala.
- No modo Manual, retornado após o cliente enviar um evento
input_audio_buffer.commit.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_Iy6sUzL1nmdFgshFYxJEz",
"type": "input_audio_buffer.committed",
"item_id": "item_YbAiGvK2H7YaS34o4R6Ba"
}
|
typestring Tipo do evento. Este valor é sempre input_audio_buffer.committed. |
item_idstring ID do item de mensagem do usuário que será criado. |
Retornado após o cliente enviar um evento input_audio_buffer.clear.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_RoUu4T8yExPMI37GKwaOC",
"type": "input_audio_buffer.cleared"
}
|
typestring Tipo do evento. Este valor é sempre input_audio_buffer.cleared. |
conversation.item.created
Retornado quando um item de conversa é criado.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_JEfkrr9gO3Ny7Xcv9bGVd",
"type": "conversation.item.created",
"item": {
"id": "item_YbAiGvK2H7YaS34o4R6Ba",
"object": "realtime.item",
"type": "message",
"status": "in_progress",
"role": "assistant",
"content": [
{
"type": "input_audio"
}
]
}
}
// Tool calling scenario
{
"event_id": "event_S1hkaIQgcuQD8OEdOpGHQ",
"type": "conversation.item.created",
"item": {
"id": "item_FEG9qJGNkPcdf4et3p7BV",
"object": "realtime.item",
"type": "function_call",
"status": "in_progress",
"call_id": "call_bc0a7fb7235840f69ecfe4",
"name": "get_current_weather",
"arguments": ""
}
}
|
typestring Tipo do evento. Este valor é sempre conversation.item.created. |
itemobject Item de conversa a ser adicionado. Properties idstring ID exclusivo do item de conversa. objectstring Este valor é sempre realtime.item. statusstring Status do item de conversa. rolestring Função da mensagem. contentarray Conteúdo da mensagem. Este parâmetro é retornado quando o tipo é message. typestring Tipo do item de conversa. Os valores válidos são message ou function_call. namestring Nome da função chamada quando o tipo é function_call. call_idstring Quando o type é function_call, este é o ID exclusivo da invocação da função. argumentsstring Quando o type é function_call, este parâmetro contém os argumentos para a invocação da função como uma string JSON. |
Enviado frequentemente enquanto o usuário fala, caso a transcrição de áudio de entrada esteja ativada. Fornece resultados intermediários de transcrição em tempo real. Concatene text + stash para obter a visualização mais completa da frase a qualquer momento.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_C7jzoeSFuiwOZS6tR14yx",
"type": "conversation.item.input_audio_transcription.delta",
"item_id": "item_ThVYhLHOdeXb4bBSvzSFF",
"content_index": 0,
"text": "",
"stash": "How is the weather today?",
"language": "en",
"emotion": "neutral",
"obfuscation": "ABEXGYmxdmc97u"
}
Para obter a visualização mais completa da frase a qualquer momento, concatene estes dois campos: visualização em tempo real = text + stash. Clique em para ver o exemplo Suponha que o usuário esteja dizendo: "The weather is nice today, sunny and warm." A tabela abaixo mostra o fluxo de eventos que você pode receber e como interpretá-los: Tempo | Progresso da fala do usuário | Resposta da API (text e stash) | Exibição na UI do cliente (text + stash) |
|---|
T1 | "The weather..." | text: "" stash: "The weather" | The weather | T2 | "...is nice..." | text: "" stash: "The weather is nice" | The weather is nice | T3 | "...today," | text: "The weather" stash: " is nice today," | The weather is nice today, ("The weather" foi confirmado e movido para text) | T4 | (breve pausa) | text: "The weather is nice today, " stash: "" | The weather is nice today, (primeira oração totalmente confirmada) | T5 | "sunny..." | text: "The weather is nice today, " stash: "sunny" | The weather is nice today, sunny | T6 | "...and warm." | text: "The weather is nice today, " stash: "sunny and warm." | The weather is nice today, sunny and warm. | T7 | (para de falar) | - | Use a transcrição de conversation.item.input_audio_transcription.completed como resultado final. |
|
typestring Tipo do evento. Este valor é sempre conversation.item.input_audio_transcription.delta. |
item_idstring ID do item de conversa associado. |
content_indexinteger Índice da parte de conteúdo que contém o áudio. |
textstring Prefixo de texto confirmado — a parte que o modelo finalizou e não será alterada. |
stashstring Sufixo de texto preliminar — um rascunho temporário após a parte confirmada, sujeito a revisão. |
languagestring Idioma detectado do áudio reconhecido. |
emotionstring Emoção detectada no áudio reconhecido. Valores válidos: neutral, happy, sad, angry, surprised, disgusted, fearful. |
Indica que o áudio do usuário foi transcrito pelo modelo de reconhecimento de fala integrado (qwen3-asr-flash-realtime). Não configurável.
O texto transcrito pelo modelo de reconhecimento de fala pode diferir da interpretação gerada pelo modelo Qwen-Omni-Realtime. A transcrição serve apenas como referência.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_FrrZcxiDfTB9LD9p4pVng",
"type": "conversation.item.input_audio_transcription.completed",
"item_id": "item_YbAiGvK2H7YaS34o4R6Ba",
"content_index": 0,
"transcript": "Hello."
}
|
typestring Tipo do evento. Este valor é sempre conversation.item.input_audio_transcription.completed. |
item_idstring ID do item de mensagem do usuário. |
content_indexinteger Este valor é sempre 0. |
transcriptstring Texto transcrito. |
Retornado quando a transcrição de áudio de entrada está ativada e a transcrição falha. Independente do evento error; ajuda os clientes a identificar falhas de transcrição especificamente.
event_idstring Identificador exclusivo deste evento. | {
"type": "conversation.item.input_audio_transcription.failed",
"item_id": "<item_id>",
"content_index": 0,
"error": {
"code": "<code>",
"message": "<message>",
"param": "<param>"
}
}
|
typestring Tipo do evento. Este valor é sempre conversation.item.input_audio_transcription.failed. |
item_idstring ID do item de mensagem do usuário. |
content_indexinteger Este valor é sempre 0. |
errorobject Informações de erro. Properties code string Código do erro. message string Mensagem de erro. param string Parâmetro relacionado ao erro. |
response.created
Retornado quando o servidor começa a gerar uma nova resposta.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_XuDavMzQN3KKepqGu3KRh",
"type": "response.created",
"response": {
"id": "resp_HaVOPdbmX6vifiV5pAfJY",
"object": "realtime.response",
"conversation_id": "conv_FjJaccpnvwHNo9cPVuzGc",
"status": "in_progress",
"modalities": [
"text",
"audio"
],
"voice": "Cherry",
"output_audio_format": "pcm",
"output": []
}
}
|
typestring Tipo do evento. Este valor é sempre response.created. |
responseobject Objeto de resposta. Properties id string ID exclusivo da resposta. conversation_id string ID exclusivo da sessão atual. object string Tipo de objeto. Para este evento, este valor é sempre realtime.response. status string Status da resposta. Os valores válidos são completed, failed, in_progress, ou incomplete. modalities array Modalidades da resposta. voice string Voz do áudio gerado pelo modelo. output array Este campo está vazio para este evento. |
response.done
Retornado após a geração completa da resposta. O objeto response inclui todos os itens de saída, exceto dados de áudio brutos.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_CSaxRRYLvbrfexDXAEuDG",
"type": "response.done",
"response": {
"id": "resp_HaVOPdbmX6vifiV5pAfJY",
"object": "realtime.response",
"conversation_id": "conv_FjJaccpnvwHNo9cPVuzGc",
"status": "completed",
"modalities": [
"text",
"audio"
],
"voice": "Cherry",
"output_audio_format": "pcm",
"output": [
{
"id": "item_Ls6MtCUWO7LM4E59QziNv",
"object": "realtime.item",
"type": "message",
"status": "completed",
"role": "assistant",
"content": [
{
"type": "audio",
"transcript": "Hello! How can I help you?"
}
]
}
],
"usage": {
"total_tokens": 377,
"input_tokens": 336,
"output_tokens": 41,
"input_tokens_details": {
"text_tokens": 228,
"audio_tokens": 108
},
"output_tokens_details": {
"text_tokens": 9,
"audio_tokens": 32
},
"plugins": {
"search": {
"count": 1,
"strategy": "agent"
}
}
}
}
}
// Tool calling scenario
{
"event_id": "event_T1EFAJp43X2DWtDRmxTtx",
"type": "response.done",
"response": {
"id": "resp_TucN5QgymL5MA8vkJvFlS",
"object": "realtime.response",
"conversation_id": "conv_SEDZESRlefT8WvLSmEn6E",
"status": "completed",
"modalities": ["text", "audio"],
"voice": "Ethan",
"output_audio_format": "pcm",
"output": [
{
"id": "item_FEG9qJGNkPcdf4et3p7BV",
"object": "realtime.item",
"type": "function_call",
"status": "completed",
"call_id": "call_bc0a7fb7235840f69ecfe4",
"name": "get_current_weather",
"arguments": " {\"location\": \"Hangzhou\"}"
}
],
"usage": {
"total_tokens": 567,
"input_tokens": 524,
"output_tokens": 43,
"input_tokens_details": {
"text_tokens": 487,
"audio_tokens": 37
},
"output_tokens_details": {
"text_tokens": 43
}
}
}
}
|
typestring Tipo do evento. Este valor é sempre response.done. |
responseobject Objeto de resposta. Properties id string ID exclusivo da resposta. conversation_id string ID exclusivo da sessão atual. object string Tipo de objeto. Para este evento, este valor é sempre realtime.response. status string Status da resposta. modalities array Modalidades da resposta. voice string Voz do áudio gerado pelo modelo. output object Saída da resposta. Properties id string ID da saída da resposta. type string Tipo do item de saída. Os valores válidos são message ou function_call. object string Tipo de objeto do item de saída. Este valor é sempre realtime.item. status string Status do item de saída. role string Função do item de saída. content array Conteúdo do item de saída. Este campo é retornado apenas quando o type é message. Properties type string Tipo de conteúdo. O valor pode ser text para saída de texto simples ou audio para saída de áudio. text string Saída de texto. transcript string Transcrição textual do áudio. name string Nome da função invocada quando o tipo é function_call. call_id string Quando o type é function_call, este é o ID exclusivo da invocação da função. arguments string Quando o type é function_call, este campo contém os argumentos completos para a chamada de função como uma string JSON. usage object Detalhes de uso de tokens para esta resposta. Properties total_tokens integer Total de tokens usados nesta resposta. input_tokens integer Número de tokens de entrada. output_tokens integer Número de tokens de saída. input_tokens_details object Detalhes sobre o uso de tokens de entrada, incluindo text_tokens e audio_tokens. output_tokens_details object Detalhes sobre o uso de tokens de saída, incluindo text_tokens e audio_tokens. plugins object (opcional) Métricas de uso de plugins. Retornado quando a pesquisa na web (enable_search) está ativada. Properties search object Dados de medição de pesquisa. Properties count integer Número de pesquisas. strategy string Estratégia de pesquisa. |
response.text.delta
Retornado quando a modalidade de saída é apenas texto e o modelo gera novo texto incrementalmente.
event_idstring Identificador exclusivo deste evento. | {
"delta": "Hello",
"event_id": "event_TH49MauuPmRo1RGaMSlP7",
"type": "response.text.delta",
"response_id": "resp_PrRSvPVpnCExdUOGHHLuP",
"item_id": "item_L8IRm9kRXFpxoOjDqDC96",
"output_index": 0,
"content_index": 0
}
|
typestring Tipo do evento. Este valor é sempre response.text.delta. |
deltastring Texto incremental gerado pelo modelo. |
response_idstring ID da resposta. |
item_idstring ID do item de mensagem. |
output_indexinteger Índice do item de saída na resposta. Este valor é sempre 0. |
content_indexinteger Índice da parte interna dentro do item de saída. Este valor é sempre 0. |
response.text.done
Retornado quando a modalidade de saída é apenas texto e o modelo termina de gerar o texto.
Também retornado se a resposta for interrompida, incompleta ou cancelada.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_B1lIeE2Nac33zn5V7h2mm",
"type": "response.text.done",
"response_id": "resp_B1lIdtjF4Noqpn5NOjznj",
"item_id": "item_B1lIdJsAJlJiFs8ztWpJt",
"output_index": 0,
"content_index": 0,
"text": "How can I assist you today?"
}
|
typestring Tipo do evento. Este valor é sempre response.text.done. |
response_idstring ID da resposta. |
item_idstring ID do item de mensagem. |
output_indexinteger Índice do item de saída na resposta. |
content_indexinteger Índice do item de saída na resposta. |
text string Texto completo gerado pelo modelo. |
response.audio.delta
Retornado quando a modalidade de saída inclui áudio e o modelo gera novos dados de áudio incrementalmente.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_B1osWMZBtrEQbiIwW0qHQ",
"type": "response.audio.delta",
"response_id": "resp_P79OOMs8LnrXVpiIHUCKR",
"item_id": "item_OFaPGtzfWCPyGzxnuEX9i",
"output_index": 0,
"content_index": 0,
"delta": "{base64 audio}"
}
|
typestring Tipo do evento. Este valor é sempre response.audio.delta. |
response_idstring ID da resposta. |
item_idstring ID do item de mensagem. |
output_indexinteger Índice do item de saída na resposta. |
content_indexinteger Índice do item de saída na resposta. |
delta string Dados de áudio incrementais, codificados em Base64. |
response.audio.done
Retornado quando a modalidade de saída inclui áudio e o modelo termina de gerar os dados de áudio.
Também retornado se a resposta for interrompida, incompleta ou cancelada.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_Le1TDl7VfyHQxl47DtGxI",
"type": "response.audio.done",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"item_id": "item_Ls6MtCUWO7LM4E59QziNv",
"output_index": 0,
"content_index": 0
}
|
typestring Tipo do evento. Este valor é sempre response.audio.done. |
response_idstring ID da resposta. |
item_idstring ID do item de mensagem. |
output_indexinteger Índice do item de saída na resposta. |
content_indexinteger Índice do item de saída na resposta. |
response.audio_transcript.delta
Retornado quando a modalidade de saída inclui áudio e o modelo gera novo texto de transcrição response.audio_transcript.delta incrementalmente.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_BksW7fOwnyavZdDxIzZYM",
"type": "response.audio_transcript.delta",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"item_id": "item_Ls6MtCUWO7LM4E59QziNv",
"output_index": 0,
"content_index": 0,
"delta": "What"
}
|
typestring Tipo do evento. Este valor é sempre response.audio_transcript.delta. |
response_idstring ID da resposta. |
item_idstring ID do item de mensagem. |
output_indexinteger Índice do item de saída na resposta. |
content_indexinteger Índice do item de saída na resposta. |
deltastring Texto incremental. |
response.audio_transcript.done
Retornado como um evento response.audio_transcript.done quando a modalidade de saída inclui áudio e o modelo conclui a transcrição do áudio.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_X49tL2WerT4WjxcmH16lS",
"type": "response.audio_transcript.done",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"item_id": "item_Ls6MtCUWO7LM4E59QziNv",
"output_index": 0,
"content_index": 0,
"transcript": "Hello! How can I help you?"
}
|
typestring Tipo do evento. Este valor é sempre response.audio_transcript.done. |
response_idstring ID da resposta. |
item_idstring ID do item de mensagem. |
output_indexinteger Índice do item de saída na resposta. |
content_indexinteger Índice do item de saída na resposta. |
transcriptstring Texto completo da transcrição. |
response.function_call_arguments.delta
Retornado conforme o modelo transmite os argumentos de chamada de função em fluxo. Concatene os campos delta em ordem para construir a string de argumentos. O conteúdo completo é fornecido no evento subsequente response.function_call_arguments.done.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_SlKoJyEbPEqLq14DSM1u5",
"type": "response.function_call_arguments.delta",
"response_id": "resp_JnTOsWXlFhKcFohZbtfz6",
"item_id": "item_Rhcms7CauTNsQprV5S4Hr",
"output_index": 0,
"call_id": "call_2be200f4cafe419b9530dd",
"delta": " {\"location\": \"Beijing\"}"
}
|
typestring Tipo do evento. Este valor é sempre response.function_call_arguments.delta. |
response_idstring ID da resposta. |
item_idstring ID do item de mensagem. |
output_indexinteger Índice do item de saída na resposta. |
call_idstring ID exclusivo para esta invocação de função. É consistente com o evento done no mesmo turno. |
deltastring Novo segmento da string de argumentos. Concatene os segmentos em ordem. |
response.function_call_arguments.done
Indica que os argumentos de chamada de função foram totalmente gerados. O campo arguments contém a string completa de argumentos. Use os arguments deste evento — e não os resultados concatenados de delta — para analisar e chamar a função local.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_X6suLyuL5agdH7r6koesM",
"type": "response.function_call_arguments.done",
"response_id": "resp_JnTOsWXlFhKcFohZbtfz6",
"item_id": "item_Rhcms7CauTNsQprV5S4Hr",
"output_index": 0,
"name": "get_current_weather",
"call_id": "call_2be200f4cafe419b9530dd",
"arguments": " {\"location\": \"Beijing\"}"
}
|
typestring Tipo do evento. Este valor é sempre response.function_call_arguments.done. |
response_idstring ID da resposta. |
item_idstring ID do item de mensagem. |
output_indexinteger Índice do item de saída na resposta. |
call_idstring ID exclusivo para esta invocação de função. |
namestring Nome da função chamada. |
argumentsstring Argumentos completos da chamada de função como uma string JSON. |
response.output_item.added
Retornado quando um novo item é criado durante a geração da resposta. O tipo de item pode ser message ou function_call.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_DsCO341DEVtiATtCB6BUY",
"type": "response.output_item.added",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"output_index": 0,
"item": {
"id": "item_Ls6MtCUWO7LM4E59QziNv",
"object": "realtime.item",
"type": "message",
"status": "in_progress",
"role": "assistant",
"content": []
}
}
// Tool calling scenario
{
"event_id": "event_HXmKt5pGoiRtXx7Hq7zpN",
"type": "response.output_item.added",
"response_id": "resp_TucN5QgymL5MA8vkJvFlS",
"output_index": 0,
"item": {
"id": "item_FEG9qJGNkPcdf4et3p7BV",
"object": "realtime.item",
"type": "function_call",
"status": "in_progress",
"call_id": "call_bc0a7fb7235840f69ecfe4",
"name": "get_current_weather",
"arguments": ""
}
}
|
typestring Tipo do evento. Este valor é sempre response.output_item.added. |
response_idstring ID da resposta. |
output_indexinteger Índice do item de saída na resposta. |
itemobject Informações sobre o item de saída. Properties idstring ID exclusivo do item de saída. objectstring Este valor é sempre realtime.item. statusstring Status do item de saída. rolestring Função do remetente. contentarray Conteúdo da mensagem. Este campo é retornado quando o type é message. typestring Tipo do item de saída. Os valores válidos são message ou function_call. namestring Nome da função a ser chamada quando o type é function_call. call_idstring ID exclusivo da invocação de função atual quando o tipo é function_call. argumentsstring Argumentos da chamada de função como uma string JSON quando o type é function_call. Inicialmente uma string vazia em eventos added. |
response.output_item.done
Retornado quando um item de saída é totalmente gerado.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_MEu5nlLw1LsOguHiehIP8",
"type": "response.output_item.done",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"output_index": 0,
"item": {
"id": "item_Ls6MtCUWO7LM4E59QziNv",
"object": "realtime.item",
"type": "message",
"status": "completed",
"role": "assistant",
"content": [
{
"type": "audio",
"text": "Hello! How can I help you?"
}
]
}
}
// Tool calling scenario
{
"event_id": "event_FHspdfAnCyjuME3mmAwSY",
"type": "response.output_item.done",
"response_id": "resp_TucN5QgymL5MA8vkJvFlS",
"output_index": 0,
"item": {
"id": "item_FEG9qJGNkPcdf4et3p7BV",
"object": "realtime.item",
"type": "function_call",
"status": "completed",
"call_id": "call_bc0a7fb7235840f69ecfe4",
"name": "get_current_weather",
"arguments": " {\"location\": \"Hangzhou\"}"
}
}
|
typestring Tipo do evento. Este valor é sempre response.output_item.done. |
response_idstring ID da resposta. |
output_indexinteger Índice do item de saída na resposta. |
itemobject Informações do item de saída. Properties idstring ID exclusivo do item de saída. objectstring Este valor é sempre realtime.item. statusstring Status do item de saída. rolestring Função do remetente. contentarray Conteúdo da mensagem. Este campo é retornado quando o type é message. typestring Tipo do item de saída. Os valores válidos são message ou function_call. namestring Nome da função chamada quando o tipo é function_call. call_idstring Quando o type é function_call, este é o ID exclusivo da invocação da função. argumentsstring Quando o type é function_call, contém os argumentos completos da chamada de função como uma string JSON. |
response.content_part.added
Retornado quando uma nova parte de conteúdo é adicionada a um item de mensagem do assistente durante a geração da resposta.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_AVBOmrgY3C8bjlRajfSUT",
"type": "response.content_part.added",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"item_id": "item_Ls6MtCUWO7LM4E59QziNv",
"output_index": 0,
"content_index": 0,
"part": {
"type": "audio",
"text": ""
}
}
|
typestring Tipo do evento. Este valor é sempre response.content_part.added. |
response_idstring ID da resposta. |
item_idstring ID do item de mensagem. |
output_indexinteger Índice do item de saída na resposta. Este valor é sempre 0. |
content_indexinteger Índice da parte interna dentro do item de saída. Este valor é sempre 0. |
partobject Informações do item de saída. Properties typestring Tipo da parte de conteúdo. textstring Texto da parte de conteúdo. |
response.content_part.done
Retornado quando a transmissão de uma parte de conteúdo dentro de um item de mensagem do assistente termina.
event_idstring Identificador exclusivo deste evento. | {
"event_id": "event_Il8HD19v58Qr5IBkw7LtN",
"type": "response.content_part.done",
"response_id": "resp_HaVOPdbmX6vifiV5pAfJY",
"item_id": "item_Ls6MtCUWO7LM4E59QziNv",
"output_index": 0,
"content_index": 0,
"part": {
"type": "audio",
"text": "Hello! How can I help you?"
}
}
|
typestring Tipo do evento. Este valor é sempre response.content_part.done. |
response_idstring ID da resposta. |
item_idstring ID do item de mensagem. |
output_indexinteger Índice do item de saída na resposta. Este valor é sempre 0. |
content_indexinteger Índice da parte de conteúdo no array de conteúdo. Este valor é sempre 0. |
partobject Informações do item de saída. Properties typestring Tipo da parte de conteúdo. textstring Texto da parte de conteúdo. |