For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Navegação principal
Theme

Otimização de custos

Entenda como o uso de voz é medido e gerencie os custos do GPT-Live e da Realtime API.

Selecione a API que você usa para entender como ela mede o uso e conhecer formas de gerenciar os custos do seu aplicativo de voz.

Uso e custos do GPT-Live

O GPT-Live separa a conversa por voz do backend responsável pelo raciocínio e pela execução das ferramentas. Estime os dois custos separadamente. O custo da sessão de voz depende da duração, enquanto o custo do backend depende dos modelos e das ferramentas que você usa.

Custos da sessão de voz

As sessões de voz do GPT-Live são cobradas por segundo, de acordo com a tarifa vigente do modelo. A duração da sessão não é arredondada para o minuto inteiro seguinte.

O tempo de sessão ativa inclui os períodos em que o usuário fala, o assistente fala, ambos ficam em silêncio ou o backend está processando uma tarefa.

Para fazer estimativas, conte o tempo de sessão ativa do início ao encerramento. Use a duração informada pela API em vez de cronometrar apenas o áudio reproduzido pelo aplicativo. Silenciar o microfone não encerra a sessão. Quando a conversa terminar, encerre a sessão e registre os dados finais de uso.

Consulte os preços da API para saber quanto custam os modelos e as ferramentas do backend.

Cobrança pela inicialização de sessões WebRTC

Ao criar uma sessão WebRTC com uma solicitação POST /v1/live/sessions, você paga por 15 segundos de voz durante a inicialização. Quando a sessão começa a funcionar, o valor já cobrado é descontado da cobrança pela duração. Ao estimar o custo, não acrescente mais 15 segundos à duração da sessão em execução.

Por exemplo, a sessão de 90 segundos abaixo já inclui os 15 segundos cobrados na inicialização. A cobrança corresponde a 90 segundos, e não a 105. Leve em conta a cobrança pela criação de sessões ao avaliar reconexões ou aplicativos que criam sessões antes que o usuário esteja pronto para falar.

Custos do backend

As chamadas feitas pelo backend são cobradas separadamente da sessão de voz, assim como nos aplicativos sem voz. Inclua os tokens de entrada e de saída do modelo, os tokens de entrada em cache quando houver suporte e as cobranças aplicáveis pelo uso de imagens ou ferramentas. Se o aplicativo chamar outros serviços, inclua esses custos na estimativa.

Você pode otimizar o processamento no backend independentemente da interface de voz. Consulte o guia de otimização de custos para reduzir o número de solicitações e o consumo de tokens. Nos modelos de backend compatíveis, aproveite o cache de prompts mantendo as instruções reutilizáveis, as definições de ferramentas e outros conteúdos que não mudam no início do prompt.

As escolhas que você faz no backend também podem alterar a duração da conversa. Compare o custo total quando uma otimização aumentar o tempo de espera do usuário ou afetar a confiabilidade do assistente na execução da tarefa.

Como estimar o custo de uma conversa

Para uma conversa com uma única sessão de voz, use a fórmula abaixo.

Custo total = (segundos de voz faturáveis ÷ 60 × tarifa de voz por minuto) + custos do backend

Por exemplo, com uma tarifa hipotética de US$ 0,05 por minuto, uma sessão de voz de 90 segundos custa US$ 0,075. Se o custo do modelo e das ferramentas no backend somar US$ 0,02, a conversa custará US$ 0,095.

Componente Cálculo Custo
Sessão de voz 90 segundos ÷ 60 × US$ 0,05 US$ 0,075
Processamento no backend Custo total do modelo e das ferramentas US$ 0,02
Total da conversa US$ 0,075 + US$ 0,02 US$ 0,095

A tarifa e o custo do backend acima são exemplos. Use a tarifa de voz vigente, o uso medido no backend e as tarifas aplicáveis aos modelos e às ferramentas. Se a tarefa envolver várias sessões de voz, some as durações e inclua o processamento realizado no backend entre as sessões.

Estratégias de otimização

Ajude o usuário a concluir a tarefa com menos tempo de espera e sem prolongar a conversa desnecessariamente. Mantenha as confirmações e verificações que a tarefa exige.

Forneça contexto relevante antes da sessão

Antes de iniciar a sessão de voz, reúna as informações que o aplicativo já tem permissão para usar. Por exemplo, um assistente que ajuda o usuário com um pedido pode começar a conversa já sabendo o número e a situação atual do pedido. Assim, o usuário não precisa repetir essas informações nem esperar por outra consulta.

Mantenha o contexto atualizado e restrito ao que importa para a tarefa. Forneça ao modelo de voz as informações necessárias para a conversa e mantenha os registros detalhados e os fluxos de trabalho no backend. Consulte Configuração da sessão e Delegação e ferramentas.

Reduza o tempo de espera pelas ferramentas

Reduzir a espera pode melhorar a experiência do usuário e diminuir o custo da sessão de voz. Por exemplo, suponha que o backend use gpt-5.6-luna no modo Fast e execute em paralelo as chamadas independentes a ferramentas. Se essas otimizações permitirem que o usuário conclua a tarefa e encerre a sessão de voz um minuto antes, você economizará US$ 0,05 em tarifas de voz. O custo total cairá se o custo adicional do backend for menor que essa economia.

Você também pode iniciar uma consulta especulativa a partir de trechos da transcrição antes de receber um evento de delegação. Ao medir o custo do backend, inclua também as consultas especulativas cujos resultados não foram usados.

Consulte Como reduzir a latência do backend para otimizar modelos, conexões, streaming e ferramentas. Use avaliações de agentes de voz para verificar quanto tempo o usuário espera por uma resposta de voz útil e se a tarefa é concluída com sucesso.

Encerre a sessão durante tarefas demoradas

A interface de voz e o backend gerenciado pelo aplicativo podem funcionar de forma independente. Com a delegação ao cliente, o processo de trabalho do backend pode continuar em execução tanto com a sessão de voz aberta quanto após seu encerramento. Salve o estado da tarefa e o contexto da conversa antes de encerrar a sessão de voz.

Para configurar o tempo limite de inatividade, definir o que aciona o reinício e restaurar o contexto, consulte Como encerrar sessões ociosas e retomar a conversa.

No caso de um agente que fica disponível em segundo plano, encerre a sessão de voz enquanto o backend executa uma tarefa demorada, como programar no modo Meta. Ofereça um botão Retomar conversa para iniciar uma nova sessão de voz quando o usuário voltar. Outra opção é usar um evento de conclusão do backend para iniciar uma nova sessão e avisar o usuário de que o resultado está pronto.

Para restaurar a conversa, inicie uma nova sessão e inclua o contexto salvo e o resultado verificado da tarefa em input. Por exemplo, envie o evento de inicialização abaixo por uma nova conexão WebSocket.

{
  "type": "session.start",
  "session": {
    "model": "gpt-live-1",
    "instructions": "Help the user review completed work and delegate follow-up tasks.",
    "input": [
      {
        "type": "message",
        "role": "developer",
        "content": [
          {
            "type": "input_text",
            "text": "Saved task: add CSV export. Result: code is ready for review."
          }
        ]
      }
    ],
    "delegation": { "type": "client" }
  }
}

Aguarde o evento session.started antes de começar a transmitir áudio. Consulte Como iniciar uma sessão com o histórico de uma conversa para conhecer o formato de histórico aceito.

Se a sessão anterior tiver sido armazenada com store: true, você também poderá criar um fork dessa sessão. Em ambos os casos, mantenha no aplicativo o estado verificado da tarefa executada no backend.

Encerrar a sessão economiza US$ 0,05 por minuto de inatividade da sessão de voz. Compare essa economia com o custo da reconexão e considere o impacto da interrupção na experiência do usuário.

Escolha o modelo adequado para o backend

Comece pelos modelos que atendem aos requisitos de precisão e confiabilidade da tarefa. Em seguida, compare o custo total da conversa, incluindo a duração da sessão de voz, o uso do modelo, as chamadas a ferramentas e as novas tentativas. O guia de seleção de modelos explica como ponderar esses fatores.

Um modelo maior no backend pode ter um custo total menor se concluir a tarefa mais rápido e a economia na sessão de voz superar o custo adicional dos tokens. Um modelo mais barato pode sair mais caro no total se demorar mais, repetir chamadas a ferramentas ou não conseguir concluir a tarefa.

Compare o custo por tarefa concluída com sucesso, a taxa de conclusão e o tempo necessário para concluir a tarefa. Inclua as tentativas que falharam e as novas tentativas no total para que uma configuração mais barata não pareça melhor só porque conclui menos tarefas. Ao planejar a comparação, consulte o exemplo de avaliação de agentes de voz do Cookbook.

Monitore o uso real

Registre separadamente a duração da sessão de voz e o uso do backend em cada sessão. O GPT-Live informa a duração acumulada da sessão de voz em segundos.

{
  "type": "session.usage.updated",
  "event_id": "event_usage_1",
  "usage": { "seconds": 12 },
  "context_window": { "usage_ratio": 0.42 }
}

Cada atualização substitui a medição anterior da duração. Não some as medições. Depois de enviar session.close, continue recebendo eventos até receber session.closed e registre uma única vez o valor final de usage.seconds desse evento. Siga o procedimento de encerramento para que o aplicativo possa coletar os dados finais de uso antes de se desconectar.

Na delegação à API Responses, leia o campo usage da resposta do backend nos eventos response.completed aninhados que chegam por meio de response.event. Use o ID da resposta para contabilizar cada resposta do backend uma única vez. Guarde os dados dos tokens de entrada, de saída e em cache necessários para aplicar as tarifas do modelo. Se o aplicativo executar tarefas no backend de forma independente, colete também os dados de uso dessas solicitações.

Compare os totais estimados com os reais em conversas representativas. Contabilize as chamadas ao modelo feitas exclusivamente para avaliação separadamente do uso do aplicativo e analise o custo junto com o sucesso na execução das tarefas.