Uma H100 de US$ 2 por hora rendeu quatro vezes o próprio custo numa manhã cheia. Na semana, deu prejuízo
Um engenheiro da Microsoft rodou o Qwen3.8-27B numa H100 Spot no Azure. As horas cheias pagaram quatro para um; a semana inteira não cobriu o compute. Quem decidiu foi a utilização.
Ouça este artigo · 5 min
Narração completa do artigo, gerada por IA.

Durante três horas na manhã de 9 de outubro, uma única H100 no Azure atendeu 1.434 requisições ao Qwen3.8-27B: 168,7 milhões de tokens de entrada e 1,27 milhão de tokens de saída. Pelo preço de tabela público desse modelo, esses tokens valiam US$ 24,35. As três horas de VM Spot custaram US$ 4,65.
É nesse resultado que a maioria dos argumentos a favor do self-hosting para. Wuyi Weng, que fez o experimento e o publicou no blog Apps on Azure da Microsoft em 10 de outubro, continuou medindo pelo resto da semana.
| Medida | As 3 horas mais cheias (9 de out.) | Primeira semana (3 a 10 de out.) |
|---|---|---|
| Horas com o servidor do modelo no ar | 3,0 | 37,9 |
| Requisições | 1.434 | 5.469 |
| Tokens de entrada (parcela do cache de prefixo) | 168,7 mi (88%) | 564,2 mi (88%) |
| Tokens de saída | 1,27 mi | 6,11 mi |
| Valor a preço de tabela | US$ 24,35 | US$ 85,94 |
| Custo de compute | US$ 4,65 | Cerca de US$ 98 por 46 horas de VM, mais discos e NAT |
As horas cheias renderam US$ 8,12 em tokens por hora de servidor no ar, contra cerca de US$ 2 de VM. Na semana, isso caiu para US$ 2,27 por hora de servidor, e as VMs rodaram de fato cerca de 46 horas, contando configuração, carga do modelo, benchmarks e as primeiras execuções antes de a telemetria existir. A semana custou cerca de US$ 98 em compute para produzir US$ 86 em tokens. A resposta do próprio autor à pergunta do título: compensa quando está ocupada.
De onde veio o valor
Um detalhe dos dados derruba um hábito comum. Na janela cheia, a entrada vinda do cache produziu 52% do valor em tokens, a entrada calculada na hora 35% e a saída só 13%. Tráfego no estilo de agentes reenvia históricos longos de conversa, e o cache de prefixo do vLLM serviu 88% dos tokens de entrada.
Benchmarks de throughput costumam reportar tokens de saída por segundo. Nessa carga, a saída foi menos de um quinto do valor. Se os seus agentes reenviam contextos longos, o processamento do prompt e o comportamento do cache importam mais do que a velocidade de geração, e um benchmark que ignora isso mede a coisa errada. É o mesmo mecanismo que derrubou o custo do agente de navegador da Asana, visto pelo lado da infraestrutura.
As horas que você paga e não consegue vender
O prejuízo da semana não veio de inferência lenta. Veio de horas sem tráfego pagante: carregar o checkpoint de 31 GB, rodar benchmarks, tempo ocioso e interrupções.
A capacidade Spot vende GPUs ociosas com desconto, sem SLA e com 30 segundos de aviso antes do despejo. O experimento teve sete despejos em cerca de 40 horas de execução e cinco tentativas de criar ou reiniciar uma VM numa região que falharam por falta de capacidade. O autor também observa que a taxa de despejo do Azure é por hora: a 5% por hora, uma execução de oito horas tem cerca de uma chance em três de ser interrompida. O conselho do post é ler até a faixa mais baixa de despejo como motivo para planejar interrupções, e não como sinal de que elas são raras.
Com os preços desse teste, a GPU precisava ficar ocupada mais ou menos um quarto do tempo para empatar. Cada hora despejada, carregando ou ociosa era uma hora em que ela não podia gerar valor.
Isto foi um experimento, não um desenho de produção
O autor é claro sobre os limites, e eles importam. O gateway não tinha autenticação própria; uma lista de IPs permitidos no túnel era o único controle de acesso, o que servia para testes pessoais e nada mais. VMs Spot não têm SLA de disponibilidade. Capacidade regular eliminaria os despejos a um preço por hora maior, o que muda o ponto de equilíbrio. E “valor a preço de tabela” é uma equivalência, não dinheiro economizado.
Nada disso faz do self-hosting uma má ideia. Faz dele uma questão de utilização. As condições do autor para quando faz sentido valem ser guardadas: tráfego constante cujos prompts compartilham prefixos longos, uma necessidade real de controlar o checkpoint exato e a configuração de serviço, e uma carga que tolera uma reinicialização, ou orçamento para capacidade regular.
É um caso mais estreito do que “pesos abertos são mais baratos”, e honesto. Como notamos quando a Reflection liberou os pesos do Beam, com pesos abertos o dever de operar passa para você. Este experimento põe preço numa parte desse dever: as horas em que ninguém está usando o que você mantém no ar. Antes de comparar o preço por hora de uma GPU com o preço por token de uma API, meça quantas horas por dia o seu tráfego manteria a GPU de fato ocupada.