Each language version is independently generated for its own context, not a direct translation.
Imagine que você está gerenciando um restaurante de luxo muito popular, onde os clientes pedem pratos complexos (os LLMs ou Modelos de Linguagem). O processo de servir um prato tem duas etapas distintas:
- A Preparação (Prefill): O chef lê o pedido, pega os ingredientes e começa a cozinhar. Isso exige muita força e atenção, mas é rápido.
- O Serviço (Decode): O prato é entregue ao cliente e ele começa a comer, pedindo mais um pouco de cada vez. Isso exige menos força do chef, mas é um processo contínuo e lento.
No passado, o mesmo chef fazia as duas coisas ao mesmo tempo. O problema? Quando o chef estava focado em preparar o próximo pedido (Preparação), ele demorava para atender o cliente que já estava comendo (Serviço). Isso criava um gargalo: o cliente ficava esperando a primeira garfada (o "Primeiro Token") e, depois, a comida saía devagar.
Para resolver isso, a indústria criou a Desagregação P/D (Prefill-Decode). Agora, temos dois tipos de cozinheiros:
- Cozinheiros de Preparação (Prefill): Super rápidos, focados apenas em pegar o pedido e começar a cozinhar.
- Cozinheiros de Serviço (Decode): Focados apenas em entregar a comida e manter o cliente satisfeito enquanto come.
O Problema: Quantos Cozinheiros Contratar?
Aqui entra o dilema que este artigo resolve. Se você contratar muitos Cozinheiros de Preparação e poucos de Serviço, os pedidos ficam prontos, mas ninguém os entrega rápido, e os clientes reclamam que a comida chega fria (o "Token por Tempo" fica alto). Se contratar muitos de Serviço e poucos de Preparação, os clientes ficam esperando horas para receber o primeiro prato (o "Tempo até o Primeiro Token" fica alto).
A pergunta difícil é: Qual é a quantidade exata de cada tipo de cozinheiro que eu preciso para atender X clientes por hora, sem que ninguém fique insatisfeito e sem gastar dinheiro com cozinheiros ociosos?
A Solução: A Receita Mágica (O Método do Artigo)
Os autores deste artigo propuseram uma "receita" inteligente que mistura matemática teórica com testes práticos para descobrir o número perfeito de cozinheiros.
1. A Teoria do Trânsito (Para a Preparação)
Para saber quantos "Cozinheiros de Preparação" são necessários, eles usam uma teoria chamada M/M/1 (que é basicamente como estudamos filas de banco ou trânsito).
- A Analogia: Imagine que o Cozinheiro de Preparação é uma única janela de atendimento. Se muitos clientes chegam de uma vez, eles formam uma fila.
- O Truque: Eles medem o quanto o cozinheiro consegue fazer no máximo (quando não há fila). Depois, eles calculam: "Se o cliente exige que a primeira garfada chegue em 2 segundos, quantos clientes posso atender por vez sem criar uma fila longa demais?"
- Resultado: Eles descobrem que, para ser rápido, o cozinheiro precisa trabalhar um pouco menos do que sua capacidade máxima, para não deixar ninguém esperando. Isso define quantos cozinheiros de preparação você precisa.
2. O Teste de Resistência (Para o Serviço)
Para os "Cozinheiros de Serviço", a lógica é diferente. Eles podem atender vários clientes ao mesmo tempo (como um garçom que leva várias bandejas).
- A Analogia: Se o garçom carrega 10 pratos de uma vez, ele é super eficiente, mas se ele carregar 20, ele pode tropeçar e demorar mais para entregar cada um (o tempo por token aumenta).
- O Truque: Eles fazem testes práticos (benchmarks) para ver qual é o "número mágico" de pratos que o garçom pode carregar sem violar o tempo de entrega prometido ao cliente.
- Resultado: Eles descobrem exatamente quantos pedidos o garçom pode processar por segundo mantendo a promessa de rapidez.
3. O Equilíbrio Final
Com esses dois números (quantos pedidos a preparação consegue fazer e quantos o serviço consegue entregar), eles usam uma fórmula simples para descobrir a proporção ideal.
- Se os pedidos são longos (muitos ingredientes), você precisa de mais Cozinheiros de Preparação.
- Se os pedidos geram respostas longas (o cliente come muito), você precisa de mais Cozinheiros de Serviço.
O Resultado na Prática
Os autores testaram essa "receita" em um cenário real, usando modelos de IA gigantes (como o DeepSeek) em computadores superpotentes (GPUs H200).
- O Cenário: Eles precisavam atender 5 milhões de "bocas" por minuto, garantindo que o primeiro prato chegasse em 2 segundos e a comida continuasse chegando a cada 20 milissegundos.
- A Descoberta: A fórmula deles disse: "Você precisa de 3 Cozinheiros de Preparação e 4 Cozinheiros de Serviço".
- A Confirmação: Quando eles montaram exatamente essa equipe, o restaurante funcionou perfeitamente, atendendo a meta de velocidade e volume. Se tivessem usado 3 e 3, os clientes teriam reclamado da lentidão na entrega. Se tivessem usado 3 e 5, teriam gastado dinheiro com um garçom extra que não era necessário.
Resumo em uma frase
Este artigo ensina como calcular a quantidade exata de "cérebros rápidos" (para começar a tarefa) e "cérebros contínuos" (para terminar a tarefa) que você precisa para rodar uma Inteligência Artificial, garantindo que ela seja rápida para todos e não desperdice dinheiro com equipamentos parados. É como encontrar o equilíbrio perfeito entre cozinheiros e garçons para um restaurante lotado.