본문으로 건너뛰기

생성형 추천 시스템이 대규모 RecSys를 바꾸는 방식

HSTU와 Semantic IDs를 활용한 생성형 추천 시스템이 대규모 embedding과 긴 사용자 이력의 병목을 줄인다.

이 요약은 AI가 원문을 분석해 생성했습니다. 정확한 내용은 원문 기준으로 확인하세요.

TL;DR

전통적인 embedding 기반 RecSys는 사용자 이력과 상품 embedding의 유사도를 계산하지만, 데이터가 테라바이트·페타바이트 규모로 커지면 GPU HBM 부족, long-tail 상품의 희소한 학습 신호, 신규 사용자·상품의 cold start, 수 밀리초 단위 latency가 병목이 된다. Generative Recommender는 이 문제를 사용자 이력에서 다음 상품을 생성하는 순차 예측으로 바꾸며, HSTU는 SiLU weighting과 relative attention bias로 긴 시퀀스를 처리하고 Semantic IDs는 상품을 작은 토큰 vocabulary로 변환해 beam search로 후보를 생성한다. NVIDIA의 recsys-examples는 DynamicEmb, TorchRec, Megatron-Core, fused CUDA ops, 추천 전용 KV cache를 결합해 대규모 학습과 추론을 최적화하고, HSTU 학습 MFU를 7.65%에서 31.40%로 높였다. Semantic ID-GR 전용 추론 경로는 context 5,000과 beam width 256 조건에서 SGLang보다 offline latency를 2.27배 줄이고 online throughput을 약 1.85배 높였으며, nv-embedding-cache는 GPU·CPU·원격 저장소의 계층형 embedding 조회로 단일 GPU를 넘는 table을 서비스한다.

빠른 이해

새로운 점

추천 시스템의 긴 context와 짧은 beam decoding에 맞춰 ContextKV, BeamKV, BeamPath를 분리한 GR 전용 추론 경로를 제안한다.

핵심 메커니즘

사용자 이력과 상품 정보를 입력으로 받아 HSTU는 순차 표현을 학습하고, Semantic ID 기반 GR은 상품을 계층적 토큰 시퀀스로 생성한다. 학습 단계에서는 DynamicEmb가 실제 접근한 ID만 scored hash table에 저장하고 HBM·host memory에 분산하며, 추론 단계에서는 ContextKV와 BeamKV를 분리해 긴 공통 context를 beam마다 복제하지 않는다. nv-embedding-cache는 GPU HBM, CPU DRAM, 원격 parameter store를 계층형 lookup으로 연결하고 cache promotion과 동시 eviction을 수행한다. 최종 출력은 item-constrained beam search가 생성한 Semantic ID 후보이며, logits와 beam 경로가 추천 순위를 결정한다.

핵심 수치

  • 두 DGX H100 노드 학습 MFU: 7.65% -> 31.40%- recsys-examples HSTU 학습 스택
  • AOTI backend와 KV cache 추론 speedup: Python backend 대비 2.20x ~ 2.38x- 이상적인 all GPU cache-hit 조건
  • Semantic ID-GR offline latency: ctx=5000, batch=4, beam=256, output=3에서 3154.224ms -> 349.857ms, 2.27x faster- H100 80GB, Qwen3-1.7B, SGLang beam-search 비교
  • Semantic ID-GR online serving throughput: 약 10.7 req/s -> 약 19.7 req/s, 약 1.85x higher- ctx=5000, concurrency=4, beam=256, output=3
  • Semantic ID-GR online median latency: 약 370ms -> 약 198ms, 약 46% lower- ctx=5000, concurrency=4, beam=256, output=3
  • DLRM v3 online server throughput: 99,997 queries/sec- MLPerf generative recommender benchmark에서 recsys-examples와 NVE 조합

섹션별 상세

대규모 RecSys의 병목

추천 시스템의 입력인 사용자 이력은 범주형·연속형 feature가 섞여 있고 시간에 따라 빠르게 변하며, 산업 현장에서는 하루에 테라바이트 또는 페타바이트 규모로 누적될 수 있다. 이 데이터가 단일 GPU의 HBM에 들어가지 않으면 embedding 조회와 parameter 이동이 학습·추론 병목으로 이어진다. 인기 상품에 상호작용이 몰리는 long-tail 구조에서는 다수의 niche 상품에 충분한 학습 신호가 남지 않고, 신규 사용자와 상품은 이력이 없어 초기 embedding 품질도 낮다. 온라인 서비스는 수천 개 후보를 수 밀리초 안에 조회하고 순위를 매겨야 하므로, LLM보다 짧은 지연시간을 요구하는 경우가 많다.

생성형 추천의 전환

Generative Recommender는 사용자 이력에서 다음 행동이나 상품을 예측하는 순차 모델링 문제로 추천을 재구성한다. 입력은 시간순으로 배열된 사용자·상품·행동 기록이고, 모델은 조건부 확률 P(nextextunderscoreitemuserextunderscorehistory)P(next extunderscore item user extunderscore history)에 따라 다음 상품을 출력한다. 이 방식은 embedding 공간에서 유사 상품을 검색하는 절차 대신 autoregressive decoding 결과의 logits로 순위를 만들며, beam search를 통해 한 번의 forward pass에서 여러 Semantic ID 후보를 생성한다. 따라서 retrieval과 ranking을 하나의 모델 안에서 결합하고 LLM 생태계의 Transformer 기반 최적화 기법을 활용할 여지가 생긴다.

HSTU의 순차 모델링

HSTU는 timestamp로 정렬한 상품과 행동의 교차 시퀀스를 입력으로 받아 명시적 feature engineering 대신 attention으로 사용자·상품 상호작용의 표현을 학습한다. 표준 Transformer의 softmax attention을 SiLU 기반 weighting으로 바꾸고 relative attention bias와 출력 projection 전 elementwise gating을 추가해 긴 시퀀스의 magnitude 정보를 보존한다. 이 구조는 attention 연산을 fused kernel로 묶기 쉽고 inference 지연을 줄이는 방향으로 설계됐다. recsys-examples의 TorchRec·DynamicEmb와 Megatron-Core 통합은 embedding과 dense module의 sharding 및 data·tensor·sequence·pipeline parallelism을 함께 조정하며, 두 개의 DGX H100 노드에서 MFU를 7.65%에서 31.40%로 높였다.
근거
  • HSTU는 softmax 대신 SiLU 기반 weighting과 relative attention bias, elementwise gating을 사용해 긴 사용자 시퀀스를 처리한다. HSTU 절에서 표준 Transformer attention과 다른 aggregation mechanism을 설명한 문단

Semantic IDs와 생성 경로

대규모 상품 catalog에 대해 full softmax를 계산하면 long-tail 상품의 약한 학습 신호와 의미적으로 유사한 상품에 대한 일반화 부족이 동시에 발생한다. Semantic IDs는 상품 embedding을 계층적으로 clustering해 더 작은 token vocabulary를 만들고, 모델이 이 토큰을 순차적으로 생성하도록 한다. 사용자는 긴 이력을 입력하고 2~3개의 Semantic ID token을 출력하며, beam width 128 또는 256으로 여러 경로를 유지할 수 있다. H100 80GB에서 Qwen3-1.7B와 beam width 256을 사용한 측정에서는 context 5,000, batch 4 조건의 offline latency가 3,154.224ms에서 349.857ms로 줄어 SGLang 대비 2.27배 빨라졌고, online throughput은 약 10.7req/s에서 약 19.7req/s로 높아졌다.
고정된 weight autoencoder가 multi-modal 입력을 Semantic ID 토큰으로 바꾸고, Sequential GR이 다음 토큰을 예측하는 구조다.
Diagram그림은 입력된 사용자·상품 정보가 LLM encoder와 frozen quant encoder를 거쳐 s0, s1, s2 같은 Semantic ID와 종료 토큰으로 변환되는 흐름을 나타낸다. 생성 단계에서는 이 토큰 시퀀스를 Sequential GR이 받아 다음 상품 토큰을 순차적으로 예측하므로, 기존 embedding 검색 대신 생성 결과 자체가 추천 후보가 된다.
근거
  • GR-specialized Semantic ID inference path는 context 5,000, beam width 256 조건에서 SGLang beam-search보다 offline latency와 online throughput을 개선했다. Semantic ID-GR 절의 Table 2 serving results

recsys-examples의 실행 구조

recsys-examples는 HSTU와 Semantic ID 모델의 학습·추론을 NVIDIA GPU에 맞춰 구성하고 DynamicEmb, 추천 전용 KV cache, fused CUDA ops를 모듈식으로 결합한다. DynamicEmb는 arbitrary feature ID가 실제로 조회될 때만 scored hash table에 embedding 행을 할당하고, HBM과 pinned host memory에 걸쳐 테이블을 확장한다. admission control은 중요한 ID를 받아들이고 score-based eviction은 덜 중요한 ID를 내보내며, row-wise sharding과 SUM·MEAN·sequence pooling용 fused CUDA kernel이 분산 조회와 gradient reduction을 처리한다. 추론에서는 PyTorch AOTInductor가 Torch C++ runtime에서 실행되고 Triton Inference Server와 연결되며, AOTI와 KV cache를 함께 사용하면 Python backend 대비 이상적인 GPU cache-hit 조건에서 2.20배에서 2.38배의 speedup이 측정됐다.
Triton Inference Server에서 Python backend와 AOTI backend, GPU cache hit 조건의 HSTU 요청 지연시간을 비교한 막대그래프다.
Chart그래프는 3-layer HSTU와 8-layer HSTU에서 AOTI backend가 Python backend보다 낮은 latency를 내고, GPU cache hit을 추가하면 지연시간이 더 줄어드는 양상을 나타낸다. 이는 PyTorch AOTInductor의 C++ runtime 실행과 KV·embedding cache가 추천 추론의 Python 실행 오버헤드와 반복 계산을 줄이는 근거로 연결된다.
근거
  • recsys-examples 통합 학습 스택은 두 개의 DGX H100 노드에서 MFU를 7.65%에서 31.40%로 높였다. HSTU support 절의 Model FLOP Utilization 수치
  • AOTI backend와 KV cache를 함께 사용한 추론은 Python backend 대비 2.20배에서 2.38배의 speedup을 기록했다. HSTU support 절의 Triton Inference Server 성능 비교와 Figure 2

NVE의 계층형 embedding cache

대규모 embedding table이 단일 GPU HBM을 초과하면 자주 쓰는 데이터와 덜 자주 쓰는 데이터를 서로 다른 메모리 계층에 배치해야 한다. nv-embedding-cache는 GPU HBM을 hot tier, CPU DRAM을 warm tier, Redis 또는 RocksDB 기반 원격 parameter store를 하위 tier로 사용하고, 조회 과정에서 필요한 key를 상위 계층으로 승격한다. lockless invalidate-and-commit protocol은 GPU lookup stream을 멈추지 않은 채 조회와 cache 변경을 병렬 처리하며, CUDA virtual memory는 여러 GPU나 노드에 걸친 하나의 논리 테이블을 지원한다. NVEmbedding과 NVEmbeddingBag은 PyTorch embedding layer의 drop-in replacement로 작동하고, DLRM v3 기반 MLPerf generative recommender benchmark에서 recsys-examples와 NVE 조합은 online server 조건에서 99,997 queries/sec 처리량을 기록했다.
embedding table을 Host Cache와 GPU Cache에 나누고 Parameter Server와 PCI/C2C 또는 ETH/IB로 연결한 메모리 계층도다.
Diagram그림은 노드 내부의 SysMem Host Cache와 GPU0·GPU1 Cache, 원격 Parameter Server의 Embedding Table 사이에서 embedding 데이터가 이동하는 구조를 나타낸다. 자주 조회하는 key를 GPU HBM에 두고 나머지를 CPU memory나 원격 저장소에 배치하면 단일 GPU 용량을 넘는 table도 계층형 lookup으로 서비스할 수 있다.
근거
  • recsys-examples와 nv-embedding-cache는 DLRM v3 기반 MLPerf generative recommender benchmark에서 99,997 queries/sec를 달성했다. nv-embedding-cache 절의 DLRM v3 online server benchmark 문단

용어 해설

생성형 추천 시스템(Generative Recommender)
사용자 이력에서 다음 행동이나 상품을 확률적으로 생성하는 추천 모델이다. 기존처럼 사용자와 상품의 embedding 유사도를 계산해 후보를 찾는 대신, 순차 모델링과 autoregressive decoding으로 추천 결과와 순위를 함께 산출한다. 이를 통해 retrieval과 ranking을 하나의 모델 안에서 통합할 가능성이 생긴다.
Semantic ID
상품 embedding을 계층적으로 군집화한 뒤 각 상품에 의미 정보를 반영한 짧은 토큰 시퀀스를 부여하는 방식이다. 모델은 거대한 상품 전체에 대한 full softmax 대신 작은 토큰 vocabulary를 순차적으로 생성하며, 비슷한 상품 간 일반화와 long-tail 상품 선택을 지원한다.
Dynamic Embedding
고정된 embedding table을 미리 할당하지 않고 실제로 접근한 사용자나 상품 ID에만 embedding 행을 동적으로 배정하는 방식이다. scored hash table과 admission control, score-based eviction을 사용해 HBM과 pinned host memory를 함께 관리하며, 계속 늘어나는 고카디널리티 데이터를 처리한다.
KV Cache
Transformer의 이전 attention 계산에서 나온 key와 value를 저장해 다음 토큰 생성 때 재계산을 줄이는 메모리 구조다. 이 글의 추천 workload에서는 긴 사용자 context와 짧은 beam별 decoding 기록을 분리하고, GPU·CPU·원격 저장소 계층에 나누어 배치한다.
Beam Search
각 decoding 단계에서 가능성이 높은 여러 경로를 동시에 유지하며 최종 출력 후보를 선택하는 탐색 방법이다. Semantic ID 기반 추천에서는 beam width 128 또는 256으로 여러 상품 토큰 경로를 병렬 탐색해 추천 다양성을 높이고, item-constrained generation으로 유효한 상품만 남긴다.

기술

  • Generative Recommenders
  • HSTU
  • Semantic IDs
  • TIGER
  • PLUM
  • OneRec v1/v2
  • PyTorch
  • recsys-examples
  • DynamicEmb
  • TorchRec
  • Megatron-Core
  • FBGEMM
  • AOTInductor
  • NVIDIA Triton Inference Server
  • FlexKV
  • Qwen3-1.7B
  • SGLang
  • vLLM
  • TensorRT LLM
  • CUDA
  • nv-embedding-cache
  • Redis
  • RocksDB
  • DLRM v3
  • MLPerf

언급된 리소스

AI 분석 전체 내용 보기

AI 요약 · 북마크 · 개인 피드 설정 — 무료

출처 · 인용 안내

수집 2026. 08. 21.출처 타입 WEB

인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.