Cuando los usuarios se quejan de respuestas lentas de la IA, a menudo experimentan dos tipos diferentes de retraso: la espera inicial antes de que el modelo comience a responder, y la generación lenta token por token después de que comienza. Estos corresponden a dos fases distintas en la inferencia de LLM: Prefill y Decode. Prefill procesa todo el prompt de entrada en paralelo, calculando cachés de clave-valor para el mecanismo de atención. Decode genera tokens de salida uno a la vez, cada paso requiere un pase hacia adelante completo. Entender esta distinción es crucial para optimizar los pipelines de inferencia. Técnicas como el batching continuo, la decodificación especulativa y la gestión de caché KV se dirigen a estas fases de manera diferente. Para los desarrolladores que construyen aplicaciones de IA, saber si la latencia está dominada por Prefill o Decode ayuda a elegir las estrategias de optimización correctas, como la compresión de prompts para cargas de trabajo pesadas en Prefill o la cuantización de modelos para escenarios pesados en Decode. Este conocimiento fundamental es esencial para cualquiera que implemente LLMs en producción.
Una explicación clara de las dos fases de latencia distintas en la inferencia de LLM—Prefill y Decode—que ayuda a los desarrolladores a diagnosticar y optimizar los tiempos de respuesta de la IA.