Day 09 如果模型不變,為什麼 Context 越長越吃 VRAM?
我有多年 IT 技術與跨域學習經驗,現在把 AI、Cloud、Infrastructure 串起來。 昨日談問到如果模型越大,就一定需要越大的 GPU 嗎?今日來談談
如果模型不變,為什麼 Context 越長越吃 VRAM?
前幾天談到 GPU 與 VRAM 時,我開始思考一個問題:如果模型本身沒有變大,為什麼只把 Context Length 拉長,GPU 的記憶體需求也會跟著增加?
實際接觸 LLM 後,我才發現,模型權重並不是 GPU 唯一需要存放的東西。當模型處理越來越長的輸入內容時,推論過程還需要保存 KV Cache,而 Context Length 越長,需要保存的資訊也越多。
這讓我在理解 LLM Infrastructure 時有一個很重要的體會:「模型大小」和「實際服務所需要的 GPU Memory」其實是兩件不同的事情。
如果今天只是自己測試一個模型,短 Context 可能完全沒有問題;但到了 Production,同時有多個使用者、每個請求又帶著大量文件或長對話時,KV Cache 可能迅速成為 GPU Memory 的重要負擔。Google Cloud 的 GKE 文件也指出,KV Cache 會隨 Context Length 與同時處理的請求數增加。
所以問題來了:
如果模型本身沒有變大,只是讓它「記得更多」,為什麼 GPU 就可能開始不夠用了?
這也是《AI Infrastructure 實戰:AI Demo 為什麼上不了 Production?》中,我希望帶讀者理解的重要觀念:AI Infrastructure 不能只看模型有幾 B,還必須理解實際推論時的 Memory 使用方式。Production 的 VRAM 不只是「模型權重」。KV Cache、Context Length、Batch Size 、Model Weights、Overhead、Activations都列為 GPU accelerator memory 計算的重要因素;Context 越長,KV Cache 的需求也會增加。
關於作者
我是一名 AI × Infrastructure Solution / Integration 技術實作者,專注於 AI、MLOps、Cloud、Docker、Kubernetes、GPU、LLM 與 AI Agent 等技術的整合與落地,跨足 LLM、GPU、Docker、Kubernetes、MLOps 與 AI Agent,持續研究企業 AI 從 Prototype 到 Production 所需要的工程能力。協助企業理解 AI 從 Prototype 到 Production 所需要的技術能力。
本系列同時是《AI Infrastructure 實戰:AI Demo 為什麼上不了 Production?》的延伸實戰筆記。如果想完整理解這些更深的技術問題,如KV Cache 的數學公式,未來可以去看這本書(書裡教你怎麼理解與解決,書中還包含了一些的範例與提示詞,特別是AMD W7900 48G的使用技術心得,這些是外面很少有的獨家踩坑經驗,未來買書真的賺到!)。敬請期待唷~
留言
張貼留言