Pesquisadores introduzem o JoLT, um método para comprimir o cache chave-valor (KV) na inferência de transformers ao tratá-lo como um tensor de terceira ordem. A abordagem aplica decomposição de Tucker parcial aos eixos de tokens e características, enquanto utiliza resíduos rotados de baixo bit de Johnson-Lindenstrauss para restaurar a energia perdida durante a truncagem.
- Um único dual lagrangiano aloca ranks de Tucker e larguras de bits de resíduos por grupo de camadas sob um orçamento de um byte.
- O JoLT alcança compressão de 2-3x com perplexidade, precisão no GSM8K e recuperação RULER permanecendo dentro do ruído estatístico da linha de base não comprimida no Mistral-7B-v0.3 e LLaMA-2-13B.
- Em compressão de 2x, o erro relativo de Frobenius é 0.009 para chaves e 0.006 para valores, uma ordem de magnitude menor que a SVD entre camadas e quantização de 4 bits.
- Uma variante de SVD randomizada chamada FlashJoLT fornece um speedup de tempo de compressão de 5-13x com qualidade correspondente.
Este método aborda o custo dominante de memória da inferência de transformers reduzindo significativamente o tamanho do cache KV sem degradar o desempenho do modelo.