AkaliKong/MiniOneRec
Minimal reproduction of OneRec
What it solves
MiniOneRec은 생성형 추천 시스템의 확장성 문제를 해결합니다. 기존의 추천 작업을 대규모 언어 모델 (LLM)이 다음 아이템을 이산적 토큰으로 예측하도록 하는 생성 프로세스로 변환하는 완전한 엔드투엔드 파이프라인을 제공합니다. 이는 기존의 랭킹 방식에던 Relying on traditional ranking methods에 의존하는 대신 생성 프로세스로 변환합니다.
How it works
이 프레임워크는 세 가지 주요 단계로 작동합니다:
- SID Construction: 모든 제품은 컴팩트하고 의미론적으로 유의미한 토큰인 "시맨틱 ID" (SID)로 변환됩니다. 이는 아이템 제목과 설명을 동결된 텍스트 인코더를 통해 인코딩하고 RQ-VAE 또는 RQ-Kmeans와 같은 방법을 사용하여 임베딩을 양자화하여 수행됩니다.
- Supervised Fine-Tuning (SFT): LLM은 사용자 이력을 SID 시퀀스로 취급하여 다음 SID를 예측하도록 훈련됩니다. 이 단계에는 모델이 자연어와 SID 공간 사이를 매핑할 수 있도록 하는 언어 정렬 목표가 포함됩니다.
- Recommendation-Oriented RL: Group Relative Policy Optimization (GRPO)을 사용하여 모델을 더욱 정교화합니다. 이는 생성된 토큰이 유효한 SID임을 보장하기 위해 제약 조건이 있는 빔 서치를 사용하며, 정확성과 다양성을 개선하기 위해 이진 정확도와 랭크 인식 페널티를 결합한 보상 신호를 사용합니다.
Who it’s for
SID 생성, SFT 및 강화 학습을 위한 표준화된 워크플로우를 구축하려는 생성형 추천 시스템 구축 AI 연구자 및 개발자를 위해 설계되었습니다.
Highlights
- End-to-End Pipeline: 원시 데이터 전처리 및 SID 생성부터 최종 RL 폴리싱까지 모든 것을 다룹니다.
- Flexible SID Generation: RQ-VAE, RQ-Kmeans 및 제약 조건이 있는 RQ-Kmeans를 지원합니다.
- Constrained Decoding: 모델이 유효한 아이템 ID만 생성하도록 보장하기 위해 logit processor를 구현합니다.
- RL Integration: GRPO를 사용하여 정확도 및 랭킹 메트릭을 기반으로 추천을 최적화합니다.