vLLM и TGI дают разный throughput даже на одной и той же модели — из-за scheduler’а и KV-cache
Если задача — максимальный поток при пачке коротких запросов, vLLM обычно выигрывает за счёт continuous batching и более агрессивного управления памятью. Он лучше переваривает смесь длинных и коротких промптов, пока VRAM не упирается в лимит.
TGI чаще берут, когда важны предсказуемость, совместимость с HF-экосистемой и более прямой путь к production-обвязке. Но на длинном контексте и высокой конкуренции за GPU его узкое место быстрее видно в p95 latency: запросы начинают ждать очередь, даже если средний tokens/sec выглядит прилично.
Проверять надо не «скорость модели», а связку из четырёх вещей: квантизация, max_batch_size, длина контекста и реальный профиль трафика. Для одного и того же веса int4 на 24 GB VRAM может дать больше одновременных сессий, чем fp16 на 80 GB, если контекст короткий и запросы рваные.
Правило простое: если у тебя основной KPI — throughput на mixed workload, первым кандидатом ставь vLLM; если нужна более консервативная production-интеграция и HF-совместимость, смотри в сторону TGI. И всегда меряй p50/p95 latency, а не только tokens/sec.
Open Source LLM — Llama / Qwen / DeepSeek
@open_source_llm_aff
vLLM и TGI дают разный throughput даже на одной и той же модели — из-за scheduler’а и KV-cache
Этот пост опубликован в Telegram-канале Open Source LLM — Llama / Qwen / DeepSeek. Подписаться можно по ссылке: @open_source_llm_aff.