生成式推薦系統(tǒng)優(yōu)勢(shì)
推薦系統(tǒng)的主要任務(wù)在于根據(jù)用戶的過往行為預(yù)測其潛在興趣點(diǎn),并據(jù)此推薦相應(yīng)的商品。在傳統(tǒng)的推薦系統(tǒng)中,當(dāng)處理用戶請(qǐng)求時(shí),會(huì)觸發(fā)多個(gè)召回模塊,例如熱門商品召回、個(gè)性化召回以及深度召回等,從而召回大量候選商品。之后,系統(tǒng)會(huì)借助相對(duì)簡單的粗排模型對(duì)這些候選集進(jìn)行初步篩選,以縮小候選范圍,最后通過精排和重排模型,確定最終返回給用戶的推薦結(jié)果。
隨著大語言模型 (LLM) 在推薦系統(tǒng)中的廣泛應(yīng)用,生成式推薦系統(tǒng)相較于傳統(tǒng)推薦系統(tǒng)可展現(xiàn)出以下顯著優(yōu)勢(shì):
推薦流程的簡化:生成式推薦系統(tǒng)從多級(jí)過濾的判別式 (discriminative-based) 架構(gòu)轉(zhuǎn)變成單級(jí)過濾的生成式 (generative-based) 架構(gòu)。通過直接生成推薦結(jié)果,大幅簡化了推薦流程,顯著降低了系統(tǒng)復(fù)雜性。
知識(shí)融合:LLM 具備更強(qiáng)的泛化能力和穩(wěn)定性。借助其豐富的世界知識(shí)和推理能力,生成式推薦系統(tǒng)可以突破傳統(tǒng)電商平臺(tái)在商品和用戶建模時(shí)面臨的數(shù)據(jù)局限。在新用戶、新商品的冷啟動(dòng)以及新領(lǐng)域的推薦場景中,生成式推薦系統(tǒng)可以提供更優(yōu)質(zhì)的推薦效果和更出色的遷移性能。
規(guī)模定律(Scaling Law):傳統(tǒng)的點(diǎn)擊率 (CTR) 稀疏模型在模型規(guī)模擴(kuò)大時(shí),往往會(huì)面臨邊際收益遞減的問題。而 LLM 所表現(xiàn)出的規(guī)模定律屬性,為模型的有效擴(kuò)展提供了一種新路徑,即模型性能隨著規(guī)模的增加而持續(xù)提升。這意味著通過擴(kuò)大模型規(guī)模,可以獲得更優(yōu)的推薦效果,從而突破傳統(tǒng)模型的性能瓶頸。
以下是基于京東廣告場景落地的生成式召回應(yīng)用,介紹大語言模型在推薦系統(tǒng)中的實(shí)踐。
生成式召回方案介紹
1. 生成式召回算法與實(shí)現(xiàn)步驟
生成式推薦包含兩個(gè)接地 (grounding) 過程:一是將商品與自然語言連接起來。二是將用戶行為與目標(biāo)商品連接起來。具體實(shí)現(xiàn)步驟如下:
商品表示:直接生成文檔或商品描述在實(shí)際中幾乎是不可行的。因此采用短文本序列(即語義 ID)來表征商品。選取高點(diǎn)擊商品的標(biāo)題、類目等語義信息,經(jīng)由編碼器模型獲得向量表示,再利用 RQ-VAE 對(duì)向量進(jìn)行殘差量化,最終得到商品的語義 ID。例如,商品:“XXX 品牌 14+ 2024 14.5 英寸輕薄本 AI 全能本高性能獨(dú)顯商務(wù)辦公筆記本電腦”可表示為:
用戶畫像與行為建模:通過構(gòu)建提示詞來定義任務(wù),并將用戶畫像、用戶歷史行為數(shù)據(jù)等用戶相關(guān)信息轉(zhuǎn)化為文本序列。例如:“用戶按時(shí)間順序點(diǎn)擊過這些商品:
模型訓(xùn)練:確定生成模型的輸入(用戶表示)和輸出(商品物料標(biāo)識(shí)符)后,即可基于生成式 Next Token Prediction 任務(wù)進(jìn)行模型訓(xùn)練。
模型推理:經(jīng)過訓(xùn)練后,生成模型能夠接收用戶信息并預(yù)測相應(yīng)的商品語義 ID,這些語義標(biāo)識(shí)可以對(duì)應(yīng)數(shù)據(jù)集中的實(shí)際商品 ID。
2. LLM 模型部署的工程適配
傳統(tǒng)基于深度學(xué)習(xí)的召回模型,參數(shù)量通常在幾十萬到幾千萬之間,且模型結(jié)構(gòu)以 Embedding 層為主。而基于 LLM 實(shí)現(xiàn)的生成式召回模型,參數(shù)規(guī)模大幅提升至 0.5B 至 7B 之間,模型結(jié)構(gòu)主要由 Dense 網(wǎng)絡(luò)構(gòu)成。由于參數(shù)量顯著增加,LLM 在推理過程中所需的計(jì)算資源相比于傳統(tǒng)模型大幅提升,通常高出幾十倍甚至上百倍。因此,LLM 在處理復(fù)雜任務(wù)時(shí)具備更強(qiáng)的表現(xiàn)力,但同時(shí)也對(duì)計(jì)算能力有著更高的要求。
為了將如此龐大的算力模型部署至線上環(huán)境,并確保其滿足毫秒級(jí)實(shí)時(shí)響應(yīng)的需求,同時(shí)在嚴(yán)格控制資源成本的前提下實(shí)現(xiàn)工業(yè)化應(yīng)用,我們必須對(duì)在線推理架構(gòu)進(jìn)行極致的性能優(yōu)化。
圖 1: 在線推理架構(gòu)
該圖片來源于京東,若您有任何疑問或需要使用該圖片,請(qǐng)聯(lián)系京東
3. 基于 TensorRT-LLM 的 LLM構(gòu)建優(yōu)化及系統(tǒng)部署
在建模封裝層,通過TensorRT-LLM實(shí)現(xiàn) LLM 模型的構(gòu)建與優(yōu)化,并將其無縫整合到現(xiàn)有生態(tài)系統(tǒng)中,利用 Python 與 TensorFlow API 構(gòu)建端到端推理圖。基于 TensorFlow 原生算子及現(xiàn)有業(yè)務(wù)的自定義 TensorFlow 算子庫(例如用戶行為特征處理算子),實(shí)現(xiàn)算法的靈活建模。
在推理優(yōu)化層,通過應(yīng)用 Inflight Batching、Constrained Sampling、Flash Attention 及 Paged Attention 等加速方案,最大化提升單卡吞吐量并降低推理延遲。
在系統(tǒng)部署方面,為了最大程度利用時(shí)間資源,生成式召回一期的部署采用了與傳統(tǒng)多分支召回模塊并行的方式。由于簡化了推理流程,相較于傳統(tǒng)召回方式,生成式召回的資源消耗更少,運(yùn)行時(shí)間更短,并且召回效果更優(yōu)。
圖 2:生成式召回與傳統(tǒng)多路召回并行
該圖片來源于京東,若您有任何疑問或需要使用該圖片,請(qǐng)聯(lián)系京東
4. 生成式召回一期
在推薦廣告及搜索廣告的成功應(yīng)用
目前,生成式召回一期已在京東推薦廣告及搜索廣告等主要業(yè)務(wù)線成功實(shí)施。在推薦廣告方面,基于生成式模型的參數(shù)規(guī)模及語義理解優(yōu)勢(shì),AB 實(shí)驗(yàn)結(jié)果顯示商品點(diǎn)擊率與消費(fèi)得到了顯著提升。在搜索廣告方面,LLM 所具備的語義理解能力顯著提升了對(duì)查詢與商品的認(rèn)知能力,尤其是在處理搜索中的長尾查詢時(shí),填充率有明顯提升,AB 實(shí)驗(yàn)也取得了點(diǎn)擊率與消費(fèi)幾個(gè)百分點(diǎn)的收益增長。
通過 TensorRT-LLM 進(jìn)行推理優(yōu)化加速:
降低延遲并提升吞吐
在原先的模型推理方案中,線上業(yè)務(wù)的低延遲要求往往較難達(dá)成。然而,在切換到 TensorRT-LLM 之后,借助其豐富的優(yōu)化特性,不僅模型推理延遲達(dá)到線上業(yè)務(wù)要求,同時(shí)吞吐也有了顯著提升。
在 NVIDIA GPU 上進(jìn)行的測試顯示,與基線對(duì)比,在限制 100 毫秒推理耗時(shí)的廣告場景下,采用 TensorRT-LLM 進(jìn)行推理的吞吐量提升了五倍以上。這相當(dāng)于將部署成本降至原來的五分之一。
圖 3:TensorRT-LLM 和基線的對(duì)比 (Qwen2-1.5B | beam 5 | vocab size 15W | input 150 | output 4) ,數(shù)據(jù)來自京東廣告團(tuán)隊(duì)測試結(jié)果
該圖片來源于京東,若您有任何疑問或需要使用該圖片,請(qǐng)聯(lián)系京東
針對(duì)這個(gè)特定的應(yīng)用場景,合理配置 beam width 對(duì)檢索結(jié)果有著重要影響。一般來說,較高的 beam width 能夠增加候選商品的數(shù)量,從而提高檢索的準(zhǔn)確性。例如,在需要返回 300 個(gè)商品時(shí),若 beam width 設(shè)置較低,每個(gè) code 就需要對(duì)應(yīng)更多的商品 id,這無疑會(huì)導(dǎo)致檢索的精度降低。
為了解決這個(gè)問題,NVIDIA DevTech 技術(shù)團(tuán)隊(duì)進(jìn)行了有針對(duì)性的二次開發(fā)和優(yōu)化工作,從而讓 TensorRT-LLM 支持更大范圍的 beam width,及時(shí)滿足了線上的業(yè)務(wù)需求。
持續(xù)優(yōu)化技術(shù)以實(shí)現(xiàn)模型效率效果提升
未來,我們將持續(xù)在生成式推薦領(lǐng)域深入探索,重點(diǎn)聚焦以下幾個(gè)方向:
提升模型規(guī)模以滿足實(shí)時(shí)推理需求
目前,由于算力、時(shí)間消耗和成本等客觀條件的限制,生成式推薦系統(tǒng)在實(shí)時(shí)推理中的可部署模型規(guī)模相對(duì)較小(約 0.5B 至 6B 參數(shù)之間)。然而,離線實(shí)驗(yàn)的數(shù)據(jù)表明,擴(kuò)大模型規(guī)模可以顯著提升線上推薦效果。這意味著對(duì)在線性能優(yōu)化提出了更高要求。為了支持更大規(guī)模的模型在線部署,同時(shí)不顯著增加成本,我們需要進(jìn)一步優(yōu)化模型結(jié)構(gòu)和推理效率。例如,采用模型剪枝、量化等模型壓縮技術(shù),優(yōu)化采樣檢索算法效率,以及高效的分布式推理架構(gòu)。
擴(kuò)展用戶行為輸入以提升模型效果
實(shí)驗(yàn)表明,輸入更長的用戶歷史行為序列能夠顯著提高模型的推薦效果,但同時(shí)也會(huì)增加計(jì)算資源消耗和推理時(shí)間。因此,我們需要在效果提升和性能開銷之間找到平衡。優(yōu)化方案包括:
a. Token 序列壓縮:對(duì)輸入序列進(jìn)行壓縮(例如去除冗余信息、合并相似行為等),減少序列長度,同時(shí)保留關(guān)鍵信息。
b. 用戶行為 KV 緩存復(fù)用:在推理過程中,針對(duì)用戶行為特征有序遞增的特點(diǎn),對(duì)長期行為進(jìn)行離線計(jì)算并進(jìn)行緩存,在線部分負(fù)責(zé)計(jì)算實(shí)時(shí)行為,從而避免重復(fù)計(jì)算,最大化利用算力,提高推理效率。
融合稀疏與稠密模型以實(shí)現(xiàn)聯(lián)合推理
隨著模型參數(shù)量的增加,我們可以將稀疏的傳統(tǒng) CTR 模型與稠密的 LLM 模型進(jìn)行聯(lián)合推理。稀疏模型擅長處理高維度的稀疏特征,計(jì)算效率高;而稠密模型可以捕獲復(fù)雜的非線性特征和深層次的語義信息。通過對(duì)兩者的優(yōu)勢(shì)進(jìn)行融合,構(gòu)建一個(gè)既高效又精確的推薦系統(tǒng)。
針對(duì)于稀疏訓(xùn)練場景, NVIDIA 可以提供DynamicEmb方案。DynamicEmb 是一個(gè) Python 包,專門針對(duì)推薦系統(tǒng)提供稀疏訓(xùn)練方案,包括模型并行的 dynamic embedding 表和 embedding lookup 功能。
DynamicEmb 利用 HierarchicalKV 哈希表后端,將鍵值(特征-嵌入)對(duì)存儲(chǔ)在 GPU 的高帶寬內(nèi)存 (HBM) 以及主機(jī)內(nèi)存中,而 embedding lookup 部分則主要利用了 EMBark 論文中的部分算法。
-
NVIDIA
+關(guān)注
關(guān)注
14文章
5233瀏覽量
105718 -
模型
+關(guān)注
關(guān)注
1文章
3480瀏覽量
49951 -
推薦系統(tǒng)
+關(guān)注
關(guān)注
1文章
44瀏覽量
10205 -
LLM
+關(guān)注
關(guān)注
1文章
319瀏覽量
674
原文標(biāo)題:NVIDIA TensorRT-LLM 在推薦廣告及搜索廣告的生成式召回的加速實(shí)踐
文章出處:【微信號(hào):NVIDIA-Enterprise,微信公眾號(hào):NVIDIA英偉達(dá)企業(yè)解決方案】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
名單公布!【書籍評(píng)測活動(dòng)NO.31】大語言模型:原理與工程實(shí)踐
【大語言模型:原理與工程實(shí)踐】探索《大語言模型原理與工程實(shí)踐》
【大語言模型:原理與工程實(shí)踐】大語言模型的基礎(chǔ)技術(shù)
【大語言模型:原理與工程實(shí)踐】探索《大語言模型原理與工程實(shí)踐》2.0
【大語言模型:原理與工程實(shí)踐】大語言模型的預(yù)訓(xùn)練
【大語言模型:原理與工程實(shí)踐】大語言模型的評(píng)測
【大語言模型:原理與工程實(shí)踐】大語言模型的應(yīng)用
大語言模型:原理與工程實(shí)踐+初識(shí)2
在Ubuntu上使用Nvidia GPU訓(xùn)練模型
NVIDIA SWI UNETR模型在醫(yī)療中的應(yīng)用

NVIDIA NeMo最新語言模型服務(wù)幫助開發(fā)者定制大規(guī)模語言模型
KT利用NVIDIA AI平臺(tái)訓(xùn)練大型語言模型
現(xiàn)已公開發(fā)布!歡迎使用 NVIDIA TensorRT-LLM 優(yōu)化大語言模型推理

評(píng)論