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

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

評論