生成式AI引爆廣告效率革命,揭秘京東大模型應用架構的實踐之道

演講嘉賓|張澤華
編輯 |李忠良
策劃 |AICon 全球人工智慧開發與應用大會
在京東廣告的大模型應用架構中,召回環節至關重要。傳統召回方式在規則靈活性和使用者需求捕捉上存在侷限,而大模型帶來了新的契機,但也面臨訓練成本和隱私保護的挑戰。京東廣告的生成式召回體系包括:基於世界知識和電商平臺的資料體系、多模態商品內容理解與使用者意圖識別,以及高效的生成式模型訓練和推理架構。在實踐中,透過商品內容語義量化、生成式商品解碼召回和模型推理效能最佳化,顯著提升了召回效率。
在 InfoQ 舉辦的 AICon 全球人工智慧開發與應用大會上京東演算法總監張澤華做了專題演講“京東廣告大模型應用架構實踐”,演講將分享京東廣告在大模型應用實踐中的解決思路與經驗教訓,期待為廣告技術從業者帶來啟發。
內容亮點
  • 瞭解具備普適性的生成式推薦演算法大規模應用方法,並借鑑推理最佳化和業務最佳化的示範性實踐,提升自身推薦系統的效果和效率
以下是演講實錄(經 InfoQ 進行不改變原意的編輯整理)。
大模型時代廣告領域
發展的契機和挑戰
京東在過去一段時間裡,在大模型浪潮下進行了諸多探索和實踐,涉及演算法和工程方面。
回顧過去一年半行業趨勢,國內大部分廣告平臺都大力投入到基於大語言模型或生成式技術相關的產品及技術升級,涵蓋 B 端和 C 端產品。大模型落地實踐剛開始時較為分散,但逐漸出現收斂趨勢,主要體現在訓練和推理方面。同時,工業級別應用層面的正規化也在逐步收斂。
在電商領域存在一些痛點,如知識融合問題,傳統推薦系統難以有效容納場景化知識,需外掛大量詞表資訊及業務自反饋資訊。而大語言模型時代到來後,對電商使用者和商品的理解能力可在大模型加持下得到提升。此外,基於大語言模型或生成式技術的 scaling law(擴充套件定律)讓廣告算法系統煥發生機。
產業界使用大語言模型主要有三大目標:一是大幅提升人貨匹配效率,尤其在搜尋、推薦等核心鏈路模型中,透過提升人貨匹配效率帶動 CTR(點選透過率)、CVR(轉化率)、GMV(商品交易總額)及廣告收入等核心業務指標上漲;二是藉助其知識理解和融合能力;三是滿足多模態資訊接納需求,發揮大語言模型在文字、影片、語音、圖片等多種模態下的理解能力。
京東希望找到一種在應用級別、一定時間內具有 scaling law 趨勢的演算法演進路線,且該路線能適用於較多場景,同時以低成本獲取高效能
生成式演算法體系
在典型的廣告演算法體系中,生成式技術主要作用於以下場景。從經典廣告系統的鏈路來看,從生成式的角度可以劃分為三個階段:第一個階段是召回和粗排階段,這本質上是一個資訊檢索類問題。其核心是如何“無中生有”,從海量資訊中找出對使用者可能有用或感興趣的資訊,形成一個龐大的候選集合。第二階段是精排階段。CTR(點選透過率)和 CVR(轉化率)是典型的精排問題。精排模型打出的分數常用於排序,本質上是在進行資訊過濾,篩選出更符合使用者需求的內容。第三階段是資訊補足階段。對於已經排在較前位置的商品或資訊流廣告,進一步引入多模態理解能力,包括創意和排序機制的最佳化,即重排。重排可以視為在上下文場景下的二次排序,進一步提升廣告效果。
在討論生成式技術或大語言模型時,離不開其對應的資料體系。資料體系需要解決兩個核心問題:一是使用者行為如何在生成式技術浪潮中進行二次定義;二是在電商廣告場景下,如何將知識融入生成式 AI 模型或演算法中。
對於使用者行為,傳統上是透過人、貨、場三個維度進行定義。在生成式場景下,除了這三個維度,還會包含使用者畫像類資訊。對於電商知識類資訊,除了商品、貨品等結構化資訊,還存在大量未被很好結構化的資訊,例如使用者隨手拍的評論圖片,其語義化資訊尚未被充分利用。
在電商廣告場景下,經過比較和分析,認為 Semantic ID(語義 ID)是當前場景下更適用的表徵解決方案。在資料表徵的基礎上,演算法建設涉及幾個關鍵步驟。首先是商品的量化表示,透過 Semantic ID 的方式進行表徵。其次是讓大語言模型或生成式演算法對這些表徵後的資訊具備理解能力和推理能力。
關於編碼和表徵,引用了一篇經典文章的觀點,探討了 Sid 是如何透過類似殘差資訊的表達方式進行表徵的,這與 Google 的相關研究相對應。即透過某種編碼的 code book 方式來表達資訊。在將資訊注入大語言模型(無論是開源獲取的還是從零開始訓練的)時,面臨兩個關鍵問題:一是這些資料如何訓練;二是如何讓訓練的資料有效表徵其含義,即 DPO。
生成式演算法工程實踐
我們來看一下在具體實踐中遇到的演算法和工程上的挑戰。
首先,我們今天主要討論的環節是召回,但實際上我們的的工作已經覆蓋了排序、創意甚至重排階段。在將生成式 AI 或大語言模型應用於推薦系統時,我們遇到了兩個極具挑戰性的問題。第一個挑戰是工業場景下的規模問題。隨著業務的發展,模型的規模越來越大。在廣告系統中,延遲是一個關鍵問題。如果推理延遲超過 100 毫秒,結果將不會被採納,被認為是毫無意義的。為了實現高效能和低延遲的推理,我們需要付出巨大的計算成本,而我們希望這種成本越低越好。目前,許多大語言模型的工作是基於開源模型進行 SFT(監督微調)或 PT(預訓練)後直接使用。然而,隨著我們對業務的深入理解和演算法應用的靈活性提升,我們發現僅僅借用他人的模型結構已經無法滿足我們的需求。我們需要對模型結構進行改造,並且發現單純的生成式模型無法很好地解決判別型問題。這意味著未來的應用場景需要生成式和判別式模型進行聯合學習和推理。
第二個挑戰是低延遲和高吞吐的要求。我們給出一個典型的參考資料:百萬 token 的推理成本必須低於 1 元人民幣。如果高於這個成本,在大多數工業場景下,成本將變得不可控,模型很可能只能停留在實驗階段,無法大規模落地。這兩個挑戰共同導致了一個問題:我們需要進行極致的效能最佳化,才能讓這樣的模型或演算法真正線上應用。
在進行大規模工業化效能最佳化時,我們發現算力或推理最佳化主要由三個方面決定:首先是裸算力,其次是儲存效能或儲存吞吐量,第三是訓練和推理過程中的 IO 問題。這三者存在木桶短板效應,即任何一個環節的短板都將決定我們在應用中的效能上限。
針對低延遲和高吞吐的極致效能最佳化,我們的最佳化思路分為三個層面:首先是在單節點最佳化上,我們希望實現極致的效能釋放;其次,當任務變為分散式時,我們希望實現軟硬協同的分散式高效能推理;最後,在整個全鏈路上,我們希望尋找其他可以最佳化的資源或耗時空間,例如層次化推理和同層次化算力的最佳化。
在最佳化手段方面,業內已經有許多相關工作,包括基於運算元和圖的最佳化、深度學習編譯器的最佳化,以及推理模式的最佳化,如各種快取模式(KV Cache、Layer Cache 等)和推理正規化的最佳化(例如 PD 分離)。總結來說,單節點上的推理算力釋放主要分為兩部分:一是單純的推理最佳化,二是從服務層級進行最佳化。在單節點推理最佳化方面,主要涉及量化、Tensor 並行和各種 Attention 技術;在服務層級最佳化方面,主要關注排程層面,如連續批處理(continuous batch)和負載均衡。
單節點算力釋放
為了降低單節點推理的無用功計算,我們通常會採用一些最佳化方式,例如多查詢(Multi-Query)注意力機制等。這些方法在業內已經被廣泛應用,例如基於英偉達 GPU 的解決方案,雖然在一定程度上有效,但仍然無法完全解決工業場景下的問題。
在最佳化手段方面,量化技術是一個重要的方向。從半精度到 FP8,甚至更低位元的量化技術,雖然在推理效能上追求極致,但在實際應用場景中,如廣告推薦或搜尋,過低的精度可能導致無法達到預期效果。Tensor 並行則是一種計算層面的資源分配最佳化,透過將任務拆分,降低單卡負載,從而降低延遲並充分利用效能。
在注意力機制的最佳化方面,Flash Attention 和 Page Attention 等技術已經被廣泛應用於開源模型中。透過採用這些最佳化手段,例如 batching 和注意力技術,可以顯著提升推理效率。公開資料顯示,平均推理延遲可以降低到原來的 1/5 左右,吞吐量提升的同時,成本可以降低約一半。
特別地,我們推薦一種 batching 策略—— Dynamic Latency Batching Switch。傳統的 Continuous Batching 雖然可以填充推理過程中的空閒時間,但在低延遲場景下,簡單地將任務插入到空閒位置可能會導致累積延遲超標。動態延遲 batching 的核心思想是,在保證每個推理請求不超過最大延遲的前提下,透過智慧排程,將任務分配到更合適的批次中。例如,當發現某條推理鏈路如果繼續插入任務會導致延遲超標時,系統會將其切換到更早結束的批次,從而確保下一個任務可以更早進入推理狀態。
分散式算力釋放
在分散式場景下,軟硬協同的最佳化思路雖然簡單,但在工業場景下的大規模實現具有挑戰性。由於請求的長度(request length)不同,不同叢集和節點的處理能力也各異。因此,我們傾向於將計算量大的任務分配到計算能力更強的節點上。然而,難點在於負載均衡。並非所有廣告或推薦請求的價值都相同,如果某次請求對系統的價值更高,我們會優先處理。因此,在負載均衡策略上,我們會進行基於請求價值的粗粒度預估,將高價值請求分配到專用計算節點上優先處理,而低優先順序的請求可能會被拋棄或採用傳統演算法和模型處理。
在排程層面之外,我們還嘗試了以下三項已被驗證有價值的工作:
  • 生成式推理叢集:在叢集層面,我們進行了以下最佳化:
    • 大模型的叢集化推理;
    • 小批次(small batch)適配能力;
    • PD分離,prefill(預填充)和 decode(解碼)這是業內常見的最佳化手段。
  • KV Cache 池化:許多企業希望減少計算資源的浪費,同時保證計算精度和效果。KV Cache 池化是應對叢集化推理的有效解決方案,能夠避免從零開始推理每條請求,從而提高效率。
  • 判別式場景的叢集化處理:在廣告場景中,無論是搜尋還是推薦,結果的相關性是一個關鍵問題。對於判別式任務,我們設定了單獨的叢集進行路由化處理。
為了實現叢集化模型的分散式並行推理,我們採用了以下方法:
  • 模型拆圖:將模型中的多個 block(既有 CPU 計算密集型部分,也有 GPU 計算密集型部分)根據計算負荷和價值進行拆分。拆圖後,將不同部分分別進行服務化部署。透過這種方式,可以最佳化叢集的計算資源利用率。拆圖前,由於模型塊的差異,叢集的資源利用率存在較大差異;拆圖並平行計算後,利用率趨於平衡,避免了某些資源過度使用或浪費。
  • 多級快取:針對 IO 瓶頸問題,我們利用 CPU 管理的 RAM 和 GPU 的 HBM(高頻寬儲存器)構建了多級快取。這種多級快取減少了多機之間的通訊,使系統能夠更快地獲取預計算結果,從而實現更低的延遲和更高的吞吐量。
在訓練過程中,我們發現了一些有效的解決方案。對於更復雜的生成式 AI 訓練(超出簡單的大語言模型範疇),全引數 GPU 同步訓練在特定應用場景下能夠顯著提升訓練速度。
在分散式推理的排程器設計中,我們面臨的業務應用場景不僅包括生成式演算法模型,還涉及語義理解層面的相關性以及典型的排序任務(如 CTR、CVR 等)。這些任務透過不同層級的排程器進行請求劃分和排程。
全鏈路算力釋放
為了維持低延遲和低資源消耗的推理,我們希望從其他環節“偷”一些資源或耗時空間。具體方法如下。
  • 端計算與預計算:我們將相當一部分計算下沉到使用者手機端(裝置端),採用端計算模式進行大量預計算工作。在使用者發起請求的瞬間,我們利用召回到排序之間的這段時間進行前置計算,這部分耗時空間約為 30~100 毫秒,具體取決於不同業務場景。
  • 近線計算:對於一些資訊,我們只需要在一定時間內保證其最新即可,因此可以透過近線計算的方式提前算好,然後在線上進行查詢或直接使用。
  • 離線計算:對於計算極其複雜且在較長時間內不會變化的任務,我們採用離線計算的方式。
透過以上層次化的劃分,結合軟硬體的定製化最佳化,我們將原本 100 毫秒的計算延遲拆分為多個幾十毫秒的小塊,這些小塊已經完成了預計算。因此,真正留給即時推理和計算的任務變得相對簡單,從而能夠在百毫秒以內完成線上生成式 AI 的推理。進一步地,我們是否可以更徹底地“偷”資源呢?答案是可以。在每個環節(如檢索、排序等)中,我們都可以利用層次化的算力設計和動態協調機制,實現更加負載均衡的算力配置。
在整個演算法和全鏈路設計中,貫穿了兩條核心思想:
  • 重新定義算力邊界:我們將單環節的推理任務拆分到多個環節,重新定義了算力的邊界以及模型需要計算的內容。
  • 多層次任務定義與最佳化:我們將複雜的計算任務定義到多個層次上,透過硬體升級、排程層面升級以及流程層面升級,帶來實際算力的提升。這樣既能夠保持全鏈路推理在百毫秒以內,又能夠支撐一定程度的 Scaling Law,以應對不斷增長的計算需求。
演算法建模靈活度問題
在演算法研發過程中,演算法工程師們擁有大量富有創意的想法。根據不完全統計,一個典型的業務演算法工程師在一個季度內至少希望進行兩次上線評審,背後可能涉及近 10 次想法的嘗試。如果一個公司或團隊有幾十甚至上百名演算法工程師,演算法的靈活性問題就顯得尤為突出。在這種情況下,如何在有限的耗時空間和硬體資源下,支撐靈活的演算法定製,成為了一個亟待解決的棘手問題。具體而言,如何讓生成式模型和判別式模型進行聯合建模、訓練和推理,是我們當前面臨的一大挑戰。我們主要的解決方案是基於 Python 和 TensorFlow 進行構圖,以實現聯合訓練和推理。
在召回層面,雖然可以透過生成式技術(例如 Semantic ID)對商品進行表徵,根據使用者的歷史行為(如瀏覽、點選等)預測其未來可能感興趣的商品,但這只是最基礎的檢索問題。檢索結果還需要進行相關性判斷,並進入粗排環節進行打分和排序。在這個過程中,如果發現相關性已經失衡,那麼可能根本不需要進行粗排打分,甚至某些類目下的商品或推薦項也無需生成。這種將生成式和判別式演算法鏈路耦合後的結構剪枝,即推理過程中的剪枝,已被實驗驗證可以顯著提升召回率和準確率,甚至達到兩位數的提升。這種效果非常明顯且令人震驚。
為了實現召回和粗排一體化(召排一體),業界最典型的做法是先召回一個大集合,再進行過濾和粗排,形成三個環節。但如果將這三個環節合併為一個,即召回加粗排一體,會面臨哪些問題呢?
以典型的稀疏模型(如粗排或精排的 CTR 模型)為例,其稠密部分的計算量相對較小(約 0.5T Flops),但 embedding table 佔比巨大。而典型的生成式模型,其 Dense 部分非常龐大,對算力要求極高,但 embedding 等外掛資訊相對較少。如果希望將這兩種模型進行耦合或聯合建模,資料是否充足是一個關鍵問題。下圖引用了一張開源公開文章中的截圖,顯示高質量語料資料被認為已接近耗盡,預計耗盡的時間點在 2028 年左右。然而,在我們的業務場景中,用於訓練最典型的稀疏模型的資料仍然非常充足。如果僅關注生成式模型,資料耗盡的風險確實存在。但如果考慮生成式與判別式模型的聯合建模,資料空間仍然較為充裕。無論是生成式模型還是判別式模型,其引數增長的勢頭並未減緩,反而仍在加速增長。
如果簡單地將兩者耦合進行推理,會立即遇到一個明顯的問題——“撞牆”。目前主流的大語言模型,無論是在 Google 的 TPU、英偉達的 GPU 還是 AMD 的 MI 推理晶片上執行,其推理的 token 吞吐量似乎都集中在較低水平,主要受限於 HBM(高頻寬儲存器)的瓶頸。隨著引數增長、資料量和模型結構的擴大,推理環節已經成為制約因素。在這種情況下,單純依靠硬體提升已無法滿足聯合訓練和推理的需求。
我們提出採用分而治之的分層思想來解決這個問題。業界常用的硬體解決方案及其對應的技術棧為我們提供了分層的空間。我們的分層邏輯包括定製化和最佳化兩個層面,最上面是業務層面。透過通訊、建模和資料的三層解耦,我們可以找到三者之間的有機平衡關係。這意味著透過利用區域性計算特性,HBM 的通訊問題得到了一定程度的緩解。
生成式 & 判別式聯合推理能力
在生成式和判別式聯合推理能力方面,我們以基於 TensorFlow 的 CTR(點選透過率)和 CVR(轉化率)排序模型(即典型的稀疏模型)為例,同時結合像 LLaMA 等典型的大語言模型。我們的目標是將這兩者耦合在一起,這種耦合並非簡單的分步推理(即上一步推理完成後再進行下一步),而是透過直接共享 hidden state(隱藏狀態)來驅動整個圖的共享,從而實現整個推理過程的封裝。
在推理過程中,我們同時採用多引擎進行推理:一方面透過 TensorFlow 的 Graph engine 進行觸發和驅動,另一方面驅動 TensorRT engine 推理引擎 。最終,我們實現了生成式和判別式模型的有機結合,並且避免了“撞 HBM 的牆”,能夠在業務場景中真正實現推理。
總結我們所做的工作:
  • 我們基於 TensorFlow 和 Python 重寫了生成式的推理流程和建模能力。
  • 我們採用基於 TensorFlow 的圖排程框架和自定義 TensorFlow 運算元,實現了生成式的推理,並將其耦合到傳統的稀疏模型上。
  • 在這個過程中,我們大量複用了 TensorFlow 以及業務歷史上積累的成百上千個業務運算元。
  • 離線建模和線上推理不再是從離線找到一個開源模型進行 SFT,然後直接將 SFT 的結果用於線上模型,而是離線建模的模型結構與線上推理的模型結構完全一致,實現了高度的一致性。
總結與展望
儘管我們在生成式技術的探索過程中遇到了一些痛點和挑戰,但我們仍然認為生成式技術在傳統演算法領域具有巨大的發展空間。以下是我們對未來工作的展望和規劃。
  • 生成式技術的廣泛應用與收益
    • 全流程覆蓋與顯著收益:雖然我們今天主要介紹了召回和粗排環節,但實際上我們已經將召回、粗排、精排、創意出價以及機制策略重排等環節幾乎完全用生成式技術重寫。這些環節的收益空間均達到了兩位數以上,顯示出生成式技術在提升業務效率和效果方面的巨大潛力。
  • 電商場景下的模型最佳化
    • 開源模型的侷限性與改進:在典型的電商場景中,直接使用開源的大語言模型雖然有一定的效果,但並不足以滿足業務需求。我們希望透過深度改造這些模型,進一步提升其在業務上的表現,實現雙位數的效能提升。這表明在特定領域內對模型進行定製化最佳化是實現業務增長的關鍵。
  • 演算法與工程的協同設計
    • Co-Design 的重要性演算法和工程的 Co-Design 是推動大語言模型或生成式技術在實際場景中落地的關鍵。透過演算法和工程的緊密結合,我們可以更好地最佳化模型的效能,使其更適合實際業務需求,從而加速技術的落地和應用。
未來發展方向
  • 領域特性資料與基座模型:電商場景中的資料具有獨特的領域特性,與公域資料有所不同。我們期待在未來一段時間內能夠出現更強大的電商領域理解基座模型,以更好地支援生成式技術在電商場景中的應用。
  • 生成式與判別式模型的深度融合:我們希望進一步完善生成式與判別式模型的聯合建模和推理,使其更加全面和強大,甚至能夠實現“all in one”的解決方案。這將有助於提升模型的整體效能和效率,更好地滿足業務需求。
嘉賓介紹
張澤華,現任京東集團演算法總監、京東零售演算法通道委員,IEEE 國際標準工作組副主席,並於中國計算機學會擔任標準工委執行委員、大資料專委委員。專注廣告演算法領域在零售業務的研發實踐,推動廣告核心場景演算法效率增長,帶領團隊自研大規模分散式生成式廣告演算法推理能力,取得數倍推理加速效果。迄今申請發明專利 7 項,並先後在國際頂級學術期刊會議 CIKM、NIPS、AAAI 等發表論文 7 篇。牽頭國內行業標準制定 2 項,參編 14 餘項。
 活動推薦
AICon 2025 強勢來襲,5 月上海站、6 月北京站,雙城聯動,全覽 AI 技術前沿和行業落地。大會聚焦技術與應用深度融合,匯聚 AI Agent、多模態、場景應用、大模型架構創新、智慧資料基建、AI 產品設計和出海策略等話題。即刻掃碼購票,一同探索 AI 應用邊界!

相關文章