RadixAttention від SGLang скоротив час розігріву до першого токена (TTFT) до 68 мс на системі з двома RTX 3090, тоді як PagedAttention від vLLM затримався на позначці 184 мс — різниця в затримці на 82,9 % робить взаємодію з багатоходовими агентами помітно плавнішою.

Обидва проєкти намагаються прискорити інференс великих мовних моделей (LLM), але цей бенчмарк націлений на навантаження, що забезпечують роботу автономних асистентів: довгі системні промпти, схеми виклику інструментів (tool-calling) та історія діалогу користувача з асистентом. Ці повторювані токени зберігаються в пам'яті GPU; якщо кешем не керувати ефективно, вони стають вузьким місцем обчислень, що гальмує розмову.

Навантаження, що змінило правила гри

Традиційні сервери LLM оптимізовані для одного обміну повідомленнями: промпт користувача, відповідь моделі — і готово. Сучасні агенти, однак, підтримують «стан розмови», який може охоплювати десятки ходів, кожен з яких додає сотні токенів до кешу. Тестовий набір відтворював такий багатоходовий цикл на двох картах RTX 3090, вимірюючи:

  • Час розігріву до першого токена (TTFT) — затримка перед появою першого токена після початку нового ходу.
  • Загальна затримка — середній час на один токен протягом усього циклу.
  • Стабільна пропускна здатність — кількість токенів, що обробляються за секунду під час безперервного циклу.
  • Коефіцієнт попадання в кеш (cache-hit ratio) — частка токенів, що повторно використовуються з key-value (KV) кешу замість повторного обчислення.

SGLang перевершив vLLM за кожним показником: TTFT 68 мс проти 184 мс, скорочення затримки на 82,9 %, вища пропускна здатність на 39,8 % та коефіцієнт попадання в кеш 96,8 % порівняно з 84,2 % у vLLM.

PagedAttention проти RadixAttention

Обидва рушії зберігають проміжні KV-пари в пам'яті GPU, але організовують цю пам'ять по-різному.

  • PagedAttention (vLLM) розбиває кеш на блоки фіксованого розміру. Якщо промпт закінчується посередині блоку, залишкові токени доводиться переобчислювати під час кожного ходу, оскільки блок не можна використовувати частково. Цей підхід простий і працює, коли промпти збігаються з межами блоків, але він витрачає ресурси на «крайові» токени, які найчастіше змінюються в циклах агентів.
  • RadixAttention (SGLang) розглядає кеш як дерево. Він знаходить найдовший спільний префікс між поточним промптом і тим, що вже є в кеші, незалежно від меж блоків, і видаляє невикористані гілки. Це дозволяє величезному системному промпту залишатися закріпленим у пам'яті GPU, тоді як обробляється лише найновіший хід, що підвищує коефіцієнт попадання в кеш і зменшує кількість зайвої роботи.

Коли кожен рушій демонструє найкращі результати

Сценарій Рекомендований рушій
Багатоходові автономні агенти, інтенсивний виклик інструментів, логіка tree-of-thought reasoning SGLang (RadixAttention)
Широка підтримка обладнання (включаючи прискорювачі AMD та Gaudi), спекулятивне декодування, vision-language моделі vLLM (PagedAttention)

Відмінність полягає не лише у продуктивності, а й в екосистемі. Ширша сумісність vLLM із різним обладнанням робить його безпечнішим вибором за замовчуванням для організацій із гетерогенними обчислювальними кластерами. Його функція спекулятивного декодування — паралельна генерація кількох кандидатів у токени — може прискорити генерацію в один хід, що є нішевою сферою, де деревоподібне кешування RadixAttention дає менше переваг.

Підсумок

Для розробників, які створюють багатоходових агентів, що працюють із довгими промптами та інкрементальними оновленнями, RadixAttention від SGLang забезпечує помітно швидшу та ефективнішу роботу з кешем на споживчих GPU. Команди, яким потрібна широка підтримка обладнання або які спеціалізуються на генерації в один хід, можуть надавати перевагу vLLM. Вибір тепер залежить від того, чи є навантаження «орієнтованим на агентів», чи «різноплановим щодо обладнання».