NVIDIA RecSys Examples is a collection of optimized recommender models and components.
The project includes:
- Examples for large-scale HSTU ranking and retrieval models through TorchRec and Megatron-Core integration
- HSTU (Hierarchical Sequential Transduction Unit) attention operator support
- Dynamic Embeddings with GPU acceleration
We provide dockerfile for users to build environment.
docker build -f docker/Dockerfile -t recsys-examples:latest .
You can also set your own base image with args --build-arg <BASE_IMAGE>
.
Before running examples, build and install libs under corelib following instruction in documentation:
On top of those two core libs, Megatron-Core along with other libs are required. You can install them via pypi package:
pip install torchx gin-config torchmetrics==1.0.3 typing-extensions iopath megatron-core==0.9.0
If you fail to install the megatron-core package, usually due to the python version incompatibility, please try to clone and then install the source code.
git clone -b core_r0.9.0 https://github.com/NVIDIA/Megatron-LM.git megatron-lm && \
pip install -e ./megatron-lm
The examples we supported:
Please see our contributing guidelines for details on how to contribute to this project.
Join our community channels to ask questions, provide feedback, and interact with other users and developers:
- GitHub Issues: For bug reports and feature requests
- NVIDIA Developer Forums
If you use RecSys Examples in your research, please cite:
@Manual{,
title = {RecSys Examples: A collection of recommender system implementations},
author = {NVIDIA Corporation},
year = {2024},
url = {https://github.com/NVIDIA/recsys-examples},
}
For more citation information and referenced papers, see CITATION.md.
This project is licensed under the Apache License - see the LICENSE file for details.