{"id":18843454,"url":"https://github.com/AI-Hypercomputer/RecML","last_synced_at":"2025-04-14T07:32:28.472Z","repository":{"id":259331799,"uuid":"849518598","full_name":"AI-Hypercomputer/RecML","owner":"AI-Hypercomputer","description":null,"archived":false,"fork":false,"pushed_at":"2025-04-07T17:21:41.000Z","size":54,"stargazers_count":3,"open_issues_count":4,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-07T18:32:27.465Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AI-Hypercomputer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"docs/contributing.md","funding":null,"license":"LICENSE","code_of_conduct":"docs/code-of-conduct.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-29T18:24:38.000Z","updated_at":"2025-04-07T17:21:44.000Z","dependencies_parsed_at":"2024-10-24T13:34:47.905Z","dependency_job_id":"2143d393-2cee-474f-8973-6a05d855bc0a","html_url":"https://github.com/AI-Hypercomputer/RecML","commit_stats":null,"previous_names":["ai-hypercomputer/rankml","ai-hypercomputer/recml"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AI-Hypercomputer%2FRecML","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AI-Hypercomputer%2FRecML/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AI-Hypercomputer%2FRecML/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AI-Hypercomputer%2FRecML/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AI-Hypercomputer","download_url":"https://codeload.github.com/AI-Hypercomputer/RecML/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248839537,"owners_count":21169827,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-08T02:57:50.914Z","updated_at":"2025-04-14T07:32:28.331Z","avatar_url":"https://github.com/AI-Hypercomputer.png","language":"Python","readme":"# RecML: High-Performance Recommender Library\n\n## Vision\n\nRecML is envisioned as a high-performance, large-scale deep learning recommender\nsystem library optimized for Cloud TPUs. It aims to provide researchers and\npractitioners state-of-the-art reference implementations, tools, and best\npractice guidelines for building and deploying recommender systems.\n\nThe key goals of RecML are:\n\n*   **Performance \u0026 Scalability:** Leverage Cloud TPUs (including SparseCore\n    acceleration) to deliver exceptional performance for training and serving\n    massive models with large embeddings on datasets with millions or billions\n    of items/users. RecML can additionally target Cloud GPUs.\n*   **State-of-the-Art Models:** Provide production-ready, easy-to-understand\n    reference implementations of popular and cutting-edge models, with a strong\n    focus on LLM-based recommenders.\n*   **Ease of Use:** Offer a user-friendly API, intuitive abstractions, and\n    comprehensive documentation/examples for rapid prototyping and deployment.\n*   **Flexibility:** Primarily built with Keras and JAX, but designed with\n    potential future expansion to other frameworks like PyTorch/XLA.\n*   **Open Source:** Foster community collaboration and provide components to\n    help users get started with advanced recommender workloads on Google Cloud.\n\n## Features\n\n*   **High Performance:** Optimized for Cloud TPU (SparseCore) training and\n    inference.\n*   **Scalable Architecture:** Designed for massive datasets and models with\n    large embedding tables. Includes support for efficient data loading\n    (tf.data, potentially Grain) and sharding/SPMD.\n*   **State-of-the-Art Model Implementations:** Reference implementations for\n    various recommendation tasks (ranking, retrieval, sequential).\n*   **Reusable Building Blocks:**\n    *   Common recommendation layers (e.g., DCN, BERT4Rec).\n    *   Specialized Embedding APIs (e.g. JAX Embedding API for SparseCore).\n    *   Standardized metrics (e.g., AUC, Accuracy, NDCG@K, MRR, Recall@K).\n    *   Common loss functions.\n*   **Unified Trainer:** A high-level trainer abstraction capable of targeting\n    different hardware (TPU/GPU) and frameworks. Includes customizable training\n    and evaluation loops.\n*   **End-to-End Support:** Covers aspects from data pipelines to training,\n    evaluation, checkpointing, metrics logging (e.g., to BigQuery), and model\n    export/serving considerations.\n\n## Models Included\n\nThis library aims to house implementations for a variety of recommender models,\nincluding:\n\n*   **SASRec:** Self-Attention based Sequential Recommendation\n*   **BERT4Rec:** Bidirectional Encoder Representations from Transformer for\n    Sequential Recommendation.\n*   **Mamba4Rec:** Efficient Sequential Recommendation with Selective State\n    Space Models.\n*   **HSTU:** Hierarchical Sequential Transduction Units for Generative\n    Recommendations.\n*   **DLRM v2:** Deep Learning Recommendation Model\n\n## Roadmap / Future Work\n\n*   Expand reference model implementations (Retrieval, Uplift, foundation user\n    model).\n*   Add support for optimized configurations and lower precision training\n    (bfloat16, fp16).\n*   Improve support for Cloud GPU training and inference\n*   Enhance sharding and quantization support.\n*   Improve integration with Keras (and Keras Recommenders) and potentially\n    PyTorch/XLA.\n*   Develop comprehensive model serving examples and integrations.\n*   Refine data loading pipelines (e.g., Grain support).\n*   Add more common layers, losses, and metrics.\n\n## Responsible Use\n\nAs with any machine learning model, potential risks exist. The performance and\nbehavior depend heavily on the training data, which may contain biases reflected\nin the recommendations. Developers should carefully evaluate the model's\nfairness and potential limitations in their specific application context.\n\n## License\n\nRecML is released under the Apache 2.0. Please see the `LICENSE` file for full\ndetails.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAI-Hypercomputer%2FRecML","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FAI-Hypercomputer%2FRecML","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAI-Hypercomputer%2FRecML/lists"}