網(wǎng)站開(kāi)發(fā)廣告推廣網(wǎng)站有哪些
LMDeploy 大模型量化部署實(shí)踐
- 大模型部署背景
- 模型部署
- 定義
- 產(chǎn)品形態(tài)
- 計(jì)算設(shè)備
- 大模型特點(diǎn)
- 大模型挑戰(zhàn)
- 大模型部署方案
- LMDeploy簡(jiǎn)介
- 推理性能
- 核心功能-量化
- 核心功能-推理引擎TurboMind
- 核心功能 推理服務(wù) api-server
- 案例(安裝、部署、量化)
大模型部署背景
模型部署
定義
- 將訓(xùn)練好的模型在特定軟硬件環(huán)境中啟動(dòng)的過(guò)程,使模型能夠接受輸入并返回預(yù)測(cè)結(jié)果
- 為了滿足性能和效率的要求,嘗嘗需要對(duì)模型進(jìn)行優(yōu)化,例如模型壓縮和硬件加速
產(chǎn)品形態(tài)
云端、邊緣計(jì)算端、移動(dòng)端
計(jì)算設(shè)備
CPU、GPU、NPU、TPU等
大模型特點(diǎn)
- 內(nèi)存消耗巨大 龐大的參數(shù)量 7B模型僅權(quán)重就需要14+G內(nèi)存
- 采用自回歸生成token 需要緩存Attention的k/v帶來(lái)巨大的內(nèi)存開(kāi)銷
- 動(dòng)態(tài)shape 請(qǐng)求數(shù)不固定 token逐個(gè)生成,且數(shù)量不定
- 相對(duì)視覺(jué)模型 LLM結(jié)構(gòu)簡(jiǎn)單
大模型挑戰(zhàn)
- 設(shè)備 如何應(yīng)對(duì)巨大的存儲(chǔ)問(wèn)題 ? 底存儲(chǔ)設(shè)備如何部署?
- 推理 如何加速token的生成速度 如何解決動(dòng)態(tài)shape 讓推理可以不間斷 如何有效管理和利用內(nèi)存
- 服務(wù) 如何提升系統(tǒng)整體吞吐量。對(duì)于個(gè)體用戶 如何降低相應(yīng)時(shí)間
大模型部署方案
- 技術(shù)點(diǎn)
- 方案
LMDeploy簡(jiǎn)介
LMDeploy 是LLM在英偉達(dá)設(shè)備上部署的全流程解決方案。包括模型輕量化、推理和服務(wù)。
項(xiàng)目地址:https://github.com/InternLM/lmdeploy
推理性能
- 靜態(tài)推理性能 固定batch
- 動(dòng)態(tài)推理性能 真是對(duì)話
核心功能-量化
為什么做weight only的量化?
- 計(jì)算密集:推理的絕大部分時(shí)間消耗在數(shù)值計(jì)算上,針對(duì)計(jì)算密集場(chǎng)景,可以通過(guò)使用更快的硬件計(jì)算單元來(lái)提升計(jì)算速度,比如量化為W8A8使用Int8 Tensor Core來(lái)加速計(jì)算
- 訪問(wèn)密集:推理時(shí),絕大部分時(shí)間消耗在數(shù)據(jù)讀取上,針對(duì)訪問(wèn)密集場(chǎng)景,一般是通過(guò)提高計(jì)算訪存比來(lái)提升性能。
核心功能-推理引擎TurboMind
核心功能 推理服務(wù) api-server
案例(安裝、部署、量化)
參考教程:
https://github.com/InternLM/tutorial/blob/main/lmdeploy/lmdeploy.md