近幾個月,多家開源模型不斷冒出來,能力甚至直逼閉源模型!
GLM、Kimi、MiniMax、Qwen……一個接一個冒出來,不只模型能力越來越強,也讓越來越多人開始想嘗試本地部屬。
不管是企業內部部署,還是自己在家跑模型,很快都會遇到同一個問題:
為什麼明明是同一張 GPU、同一個模型,別人跑起來就是比我快好幾倍?
模型本身沒有變,硬體也沒有變,差別很多時候就藏在「Inference」這一層。
也就是模型在真正產生 Token 時,資料怎麼被送進 GPU、KV Cache 怎麼管理、Request 怎麼排程、記憶體怎麼使用,以及推論引擎到底幫你做了哪些最佳化。
這也是這個系列想做的事情。
我們不只會介紹 vLLM、SGLang、TensorRT-LLM、llama.cpp、LMDeploy 這些推論引擎,而是會繼續往下探索。
為什麼 Continuous Batching 可以提高吞吐量?
PagedAttention 到底解決了什麼?
KV Cache 為什麼這麼吃顯存?
Prefill 和 Decode 又為什麼會有完全不同的瓶頸?
當這些東西真的弄懂之後,才會知道不同推論引擎為什麼會有不同設計,也才知道什麼情境該選哪一套。
甚至哪天現成方案不夠用,需要自己改 Scheduler、Cache 或底層 Kernel,也知道問題到底該從哪裡下手。
接下來 30 天,我們就從一個 Token 是怎麼產生的開始,一路往下探索。
把那些躲在 LLM Inference 裡的 Tokens/s 小偷,一個一個抓出來!