recommenders-addons  by tensorflow

TensorFlow toolkit for scalable recommendation systems

Created 5 years ago
626 stars

Top 52.9% on SourcePulse

GitHubView on GitHub
Project Summary

TensorFlow Recommenders Addons (TFRA) extends TensorFlow with Dynamic Embedding Technology for large-scale recommendation systems. It targets engineers and researchers building sophisticated recommender models, offering improved recommendation effects and simplified development, evaluation, and serving workflows. TFRA provides key-value data structures for trainable dynamic embeddings, enhancing performance and ecosystem compatibility.

How It Works

TFRA introduces Dynamic Embedding Technology, enabling the training of key-value data structures within TensorFlow. This approach yields more effective recommendation models than static embeddings by avoiding hash conflicts and offering flexibility. The library integrates seamlessly with native TensorFlow optimizers, checkpointing, and serving frameworks like TensorFlow Serving and Triton Inference Server, leveraging GPU acceleration.

Quick Start & Requirements

  • Installation: pip install tensorflow-recommenders-addons
  • Dependencies: Requires compatible TensorFlow (e.g., TFRA 0.8.0 needs TF 2.16.2). GPU support needs NVIDIA GPUs with CUDA (e.g., 12.3) and cuDNN (e.g., 8.9). Building from source requires Bazel (v5.1.1 recommended).
  • Apple Silicon: Requires macOS 12.0.0+, specific TensorFlow versions, and Bazelisk.
  • Resources: Building from source can be resource-intensive.
  • Documentation: Tutorials and demos are available.

Highlighted Details

  • Implements Dynamic Embedding Technology with key-value structures (e.g., cuckoohash_map on CPU, HierarchicalKV on GPU).
  • Supports synchronous (dense weights) and asynchronous (sparse weights) training.
  • Compatible with TensorFlow's CheckPoint/SavedModel formats and native optimizers.
  • Robust support for inference via TensorFlow Serving and Triton Inference Server.

Maintenance & Community

TFRA is community-driven, relying on public contributions with significant support from NVIDIA Merlin and China DevTech Teams. Community discussions are available via the SIG Recommenders mailing list: recommenders@tensorflow.org.

Licensing & Compatibility

Licensed under Apache License 2.0, permitting commercial use. TFRA custom ops have strict version binding with TensorFlow; compatibility issues may arise if TensorFlow is not pip-installed or if versions mismatch.

Limitations & Caveats

TFRA's custom operations require compatible TensorFlow installations (pip-installed preferred over Conda). The Apple Silicon version lacks float16 data types, Horovod, and HierarchicalKV save/load. GPU usage is restricted to NVIDIA hardware (compute capability 6.0+) and has a dimension limit of 200 for certain features.

Health Check
Last Commit

2 months ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
2
Star History
2 stars in the last 30 days

Explore Similar Projects

Starred by François Chollet François Chollet(Author of Keras; Cofounder of Ndea, ARC Prize), Chaoyu Yang Chaoyu Yang(Founder of Bento), and
13 more.

neon by NervanaSystems

0%
4k
Deep learning framework (discontinued)
Created 11 years ago
Updated 4 years ago
Starred by Tobi Lutke Tobi Lutke(Cofounder of Shopify), Li Jiang Li Jiang(Coauthor of AutoGen; Engineer at Microsoft), and
27 more.

ColossalAI by hpcaitech

0.0%
41k
AI system for large-scale parallel training
Created 4 years ago
Updated 3 weeks ago
Feedback? Help us improve.