¿Qué es la decodificación especulativa?
Cuando un modelo grande escribe texto, suelta un token a la vez, y cada paso es caro. La decodificación especulativa tiene un truco ingenioso: un modelo pequeño hace primero el borrador y el grande revisa todo el borrador de una vez — mantiene lo correcto y arregla lo erróneo. Mismo resultado, varias veces más rápido.¿Cómo funciona?
El modelo pequeño adivina primeroUn modelo pequeño y rápido genera enseguida un trozo de texto candidato — unas cuantas palabras siguientes.
El grande verifica en una pasada
El modelo grande lee el trozo entero a la vez y comprueba qué aciertos fueron correctos. La parte acertada se acepta; donde falla, se detiene y corrige.
De dónde viene el ahorro
El modelo grande valida varios tokens de una vez en lugar de generar uno a uno: procesa por lotes el paso caro.
¿Por qué es útil?
Más rápido, no más tontoComo el modelo grande tiene la última palabra, la calidad es casi idéntica a la generación directa, solo que más rápida.
Sin cambiar la arquitectura
No hay que reentrenar el modelo grande; solo se le empareja con uno pequeño, así que es fácil de desplegar.
Útil en general
Traducción, escritura, generación de código: toda tarea generativa se beneficia.
¿Cuáles son sus límites?
La aceleración depende de lo bien que acierte el modelo pequeño. Acierta bien y verificas un tramo largo de una vez; falla y vuelves a la velocidad normal. Los dos modelos tienen que estar bien emparejados.En resumen: la decodificación especulativa hace que un modelo pequeño borre y uno grande revise, cambiando verificación por lotes por velocidad.
Comentarios