RadixAttention
De manier van SGLang om de KV-cache over verzoeken heen te hergebruiken door elk eerder geziene prefix in een radixboom te bewaren in plaats van de cache weg te gooien zodra een verzoek klaar is.
Het idee berust op een waarneming over echt verkeer: verzoeken delen vrijwel altijd hun begin. Dezelfde systeemprompt, dezelfde few-shotvoorbeelden, hetzelfde document, dezelfde gespreksgeschiedenis min één beurt. Klassieke serveersystemen berekenen dat deel telkens opnieuw. Hier staan de gecachete key- en value-tensors in een radixboom waarvan elke tak een tokenreeks is, zodat een nieuw verzoek de langste gemeenschappelijke prefix kan vinden en alleen de rest hoeft te berekenen. De boom wordt volgens LRU opgeruimd als het geheugen vol raakt, en de scheduler weet ervan: hij groepeert verzoeken met een gedeelde prefix zodat een knoop niet vlak voor de volgende treffer verdwijnt. Bij workloads met veel prefixdeling, zoals agentlussen en gestructureerde uitvoer, is het effect een meervoud van de doorvoer in plaats van enkele procenten.