La latencia en sistemas de IA se descompone en varios componentes distintos, y entender cada uno te ayuda a diagnosticar que es lo que realmente esta lento. Primero esta la latencia de red — el tiempo de ida y vuelta para que tu solicitud llegue al servidor del proveedor y para que los primeros bytes de la respuesta regresen. Esto es típicamente de 20 a 100 ms dependiendo de tu distancia geografica al centro de datos. Luego esta el tiempo en cola — cuanto espera tu solicitud antes de que haya una GPU disponible para procesarla. Durante horas pico o para modelos populares, esto puede ir de cero a varios segundos. Después viene el tiempo de prefill — el modelo procesando todo tu prompt de entrada. Para un prompt de 1,000 tokens en un modelo grande, esto puede tomar de 200 a 500 ms. Finalmente, comienza la decodificación y obtienes tu primer token. El total de todas estas etapas es tu TTFT (Time to First Token).
Después de que llega el primer token, hay una segunda métrica de latencia igual de importante: la latencia entre tokens, o que tan rápido llegan los tokens subsiguientes. Esto se mide típicamente en tokens por segundo. GPT-4o puede transmitir a 80-100 tokens/segundo, mientras que Claude transmite a velocidades similares para la mayoría de las solicitudes. Para un chatbot, cualquier cosa por encima de unos 30 tokens/segundo se siente "instantanea" para un lector humano — más rápido de lo que puedes leer. Por debajo de 15 tokens/segundo, la transmisión empieza a sentirse entrecortada. Por eso los proveedores a veces citan tanto TTFT como tokens/segundo — están midiendo cuellos de botella diferentes en la experiencia del usuario. Una respuesta podría comenzar rápido pero transmitirse lentamente, o tardar un momento en empezar pero luego volar.
La longitud del prompt tiene un impacto mayor en la latencia de lo que la mayoría de los desarrolladores esperan. La fase de prefill escala aproximadamente de forma cuadratica con la longitud de entrada para modelos transformer estandar (gracias a la auto-atención), así que un prompt de 10,000 tokens no solo toma 10 veces más que uno de 1,000 tokens — puede tomar significativamente más. Por eso proveedores como Anthropic cobran de manera diferente por tokens de entrada vs. de salida, y por eso meter todo tu código fuente en una ventana de contexto tiene consecuencias reales de rendimiento. Técnicas como el prompt caching ayudan enormemente aquí: la función de prompt caching de Anthropic te permite marcar una porción de tu prompt como cacheable, de modo que si estas enviando el mismo system prompt con cada solicitud (que es lo que hace la mayoría de las aplicaciones), el prefill para esa porción es esencialmente gratis después de la primera llamada.
El error más común que cometen los desarrolladores con la latencia es probar con prompts cortos durante el desarrollo y luego sorprenderse con el rendimiento en producción. Un prompt de prueba de 50 tokens responde en 300 ms; el prompt real de producción con un mensaje de sistema, ejemplos few-shot e historial de conversación sumando 4,000 tokens responde en 2 segundos. El otro error es el enrutamiento geografico — si tu servidor esta en Europa pero estas llamando a un endpoint de API en Estados Unidos, estas agregando 100-150 ms de latencia de red a cada solicitud. Algunos proveedores ofrecen endpoints regionales, y los servicios de proxy de inferencia más inteligentes enrutan tu trafico automáticamente al centro de datos más cercano. Para aplicaciones en tiempo real como asistentes de voz, donde la latencia total de extremo a extremo necesita mantenerse por debajo de 500 ms, cada uno de estos componentes importa y terminas optimizandolos todos simultáneamente.