nextrec 0.4.28__tar.gz → 0.4.29__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {nextrec-0.4.28 → nextrec-0.4.29}/PKG-INFO +5 -5
- {nextrec-0.4.28 → nextrec-0.4.29}/README.md +4 -4
- {nextrec-0.4.28 → nextrec-0.4.29}/README_en.md +4 -4
- {nextrec-0.4.28 → nextrec-0.4.29}/docs/rtd/conf.py +1 -1
- nextrec-0.4.29/nextrec/__version__.py +1 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/basic/loggers.py +1 -1
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/NextRec-CLI.md +2 -2
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/NextRec-CLI_zh.md +2 -2
- {nextrec-0.4.28 → nextrec-0.4.29}/pyproject.toml +1 -1
- nextrec-0.4.28/nextrec/__version__.py +0 -1
- {nextrec-0.4.28 → nextrec-0.4.29}/.github/workflows/publish.yml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/.github/workflows/tests.yml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/.gitignore +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/.readthedocs.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/CODE_OF_CONDUCT.md +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/CONTRIBUTING.md +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/LICENSE +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/MANIFEST.in +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/assets/Feature Configuration.png +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/assets/Model Parameters.png +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/assets/Training Configuration.png +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/assets/Training logs.png +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/assets/logo.png +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/assets/mmoe_tutorial.png +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/assets/nextrec_diagram.png +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/assets/test data.png +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/dataset/ctcvr_task.csv +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/dataset/ecommerce_task.csv +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/dataset/match_task.csv +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/dataset/movielens_100k.csv +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/dataset/multitask_task.csv +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/dataset/ranking_task.csv +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/docs/en/Getting started guide.md +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/docs/rtd/Makefile +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/docs/rtd/index.md +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/docs/rtd/make.bat +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/docs/rtd/modules.rst +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/docs/rtd/nextrec.basic.rst +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/docs/rtd/nextrec.data.rst +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/docs/rtd/nextrec.loss.rst +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/docs/rtd/nextrec.rst +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/docs/rtd/nextrec.utils.rst +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/docs/rtd/requirements.txt +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/docs/zh//345/277/253/351/200/237/344/270/212/346/211/213.md" +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/__init__.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/basic/__init__.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/basic/activation.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/basic/asserts.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/basic/callback.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/basic/features.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/basic/heads.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/basic/layers.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/basic/metrics.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/basic/model.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/basic/session.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/basic/summary.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/cli.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/data/__init__.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/data/batch_utils.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/data/data_processing.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/data/data_utils.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/data/dataloader.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/data/preprocessor.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/loss/__init__.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/loss/grad_norm.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/loss/listwise.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/loss/pairwise.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/loss/pointwise.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/generative/__init__.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/generative/tiger.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/[pre]aitm.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/[pre]snr_trans.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/[pre]star.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/__init__.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/apg.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/cross_stitch.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/escm.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/esmm.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/hmoe.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/mmoe.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/pepnet.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/ple.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/poso.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/multi_task/share_bottom.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/__init__.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/afm.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/autoint.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/dcn.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/dcn_v2.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/deepfm.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/dien.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/din.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/eulernet.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/ffm.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/fibinet.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/fm.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/lr.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/masknet.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/pnn.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/widedeep.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/ranking/xdeepfm.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/representation/__init__.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/representation/autorec.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/representation/bpr.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/representation/cl4srec.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/representation/lightgcn.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/representation/mf.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/representation/rqvae.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/representation/s3rec.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/retrieval/__init__.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/retrieval/dssm.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/retrieval/dssm_v2.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/retrieval/mind.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/retrieval/sdm.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/retrieval/youtube_dnn.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/sequential/hstu.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/models/sequential/sasrec.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/utils/__init__.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/utils/config.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/utils/console.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/utils/data.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/utils/embedding.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/utils/feature.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/utils/loss.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/utils/model.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/utils/torch_utils.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec/utils/types.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/feature_config.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/afm.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/apg.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/autoint.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/cross_stitch.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/dcn.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/deepfm.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/din.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/escm.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/esmm.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/fibinet.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/fm.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/hmoe.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/masknet.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/mmoe.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/pepnet.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/ple.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/pnn.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/poso.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/share_bottom.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/widedeep.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/model_configs/xdeepfm.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/predict_config.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/predict_config_template.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/train_config.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/nextrec_cli_preset/train_config_template.yaml +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/pytest.ini +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/requirements.txt +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/scripts/format_code.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/__init__.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/conftest.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/helpers.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/run_tests.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/test_base_model_regularization.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/test_generative_models.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/test_layers.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/test_losses.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/test_match_models.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/test_multitask_models.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/test_preprocessor.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/test_ranking_models.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/test_utils_console.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/test_utils_data.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test/test_utils_embedding.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/test_requirements.txt +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/distributed/example_distributed_training.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/distributed/example_distributed_training_large_dataset.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/example_match.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/example_multitask.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/example_ranking_din.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/movielen_match_dssm.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/movielen_ranking_deepfm.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/notebooks/en/Build semantic ID with RQ-VAE.ipynb +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/notebooks/en/Hands on dataprocessor.ipynb +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/notebooks/en/Hands on nextrec.ipynb +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/notebooks/zh//344/275/277/347/224/250RQ-VAE/346/236/204/345/273/272/350/257/255/344/271/211ID.ipynb" +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/notebooks/zh//345/246/202/344/275/225/344/275/277/347/224/250DataProcessor/350/277/233/350/241/214/351/242/204/345/244/204/347/220/206.ipynb" +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/notebooks/zh//345/277/253/351/200/237/345/205/245/351/227/250nextrec.ipynb" +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/run_all_match_models.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/run_all_multitask_models.py +0 -0
- {nextrec-0.4.28 → nextrec-0.4.29}/tutorials/run_all_ranking_models.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: nextrec
|
|
3
|
-
Version: 0.4.
|
|
3
|
+
Version: 0.4.29
|
|
4
4
|
Summary: A comprehensive recommendation library with match, ranking, and multi-task learning models
|
|
5
5
|
Project-URL: Homepage, https://github.com/zerolovesea/NextRec
|
|
6
6
|
Project-URL: Repository, https://github.com/zerolovesea/NextRec
|
|
@@ -69,7 +69,7 @@ Description-Content-Type: text/markdown
|
|
|
69
69
|

|
|
70
70
|

|
|
71
71
|

|
|
72
|
-

|
|
73
73
|
[](https://deepwiki.com/zerolovesea/NextRec)
|
|
74
74
|
|
|
75
75
|
中文文档 | [English Version](README_en.md)
|
|
@@ -102,7 +102,7 @@ NextRec是一个基于PyTorch的现代推荐系统框架,旨在为研究工程
|
|
|
102
102
|
- **高效训练与评估**:内置多种优化器、学习率调度、早停、模型检查点与详细的日志管理,开箱即用。
|
|
103
103
|
|
|
104
104
|
## NextRec近期进展
|
|
105
|
-
- **01/01/2026** 新年好,在v0.4.
|
|
105
|
+
- **01/01/2026** 新年好,在v0.4.27中加入了多个多目标模型的支持:[APG](nextrec/models/multi_task/apg.py), [ESCM](nextrec/models/multi_task/escm.py), [HMoE](nextrec/models/multi_task/hmoe.py), [Cross Stitch](nextrec/models/multi_task/cross_stitch.py)
|
|
106
106
|
- **28/12/2025** 在v0.4.21中加入了对SwanLab和Wandb的支持,通过model的`fit`方法进行配置:`use_swanlab=True, swanlab_kwargs={"project": "NextRec","name":"tutorial_movielens_deepfm"},`
|
|
107
107
|
- **21/12/2025** 在v0.4.16中加入了对[GradNorm](/nextrec/loss/grad_norm.py)的支持,通过compile的`loss_weight='grad_norm'`进行配置
|
|
108
108
|
- **12/12/2025** 在v0.4.9中加入了[RQ-VAE](/nextrec/models/representation/rqvae.py)模块。配套的[数据集](/dataset/ecommerce_task.csv)和[代码](tutorials/notebooks/zh/使用RQ-VAE构建语义ID.ipynb)已经同步在仓库中
|
|
@@ -254,11 +254,11 @@ nextrec --mode=predict --predict_config=path/to/predict_config.yaml
|
|
|
254
254
|
|
|
255
255
|
预测结果固定保存到 `{checkpoint_path}/predictions/{name}.{save_data_format}`。
|
|
256
256
|
|
|
257
|
-
> 截止当前版本0.4.
|
|
257
|
+
> 截止当前版本0.4.29,NextRec CLI支持单机训练,分布式训练相关功能尚在开发中。
|
|
258
258
|
|
|
259
259
|
## 兼容平台
|
|
260
260
|
|
|
261
|
-
当前最新版本为0.4.
|
|
261
|
+
当前最新版本为0.4.29,所有模型和测试代码均已在以下平台通过验证,如果开发者在使用中遇到兼容问题,请在issue区提出错误报告及系统版本:
|
|
262
262
|
|
|
263
263
|
| 平台 | 配置 |
|
|
264
264
|
|------|------|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|

|
|
9
9
|

|
|
10
10
|

|
|
11
|
-

|
|
12
12
|
[](https://deepwiki.com/zerolovesea/NextRec)
|
|
13
13
|
|
|
14
14
|
中文文档 | [English Version](README_en.md)
|
|
@@ -41,7 +41,7 @@ NextRec是一个基于PyTorch的现代推荐系统框架,旨在为研究工程
|
|
|
41
41
|
- **高效训练与评估**:内置多种优化器、学习率调度、早停、模型检查点与详细的日志管理,开箱即用。
|
|
42
42
|
|
|
43
43
|
## NextRec近期进展
|
|
44
|
-
- **01/01/2026** 新年好,在v0.4.
|
|
44
|
+
- **01/01/2026** 新年好,在v0.4.27中加入了多个多目标模型的支持:[APG](nextrec/models/multi_task/apg.py), [ESCM](nextrec/models/multi_task/escm.py), [HMoE](nextrec/models/multi_task/hmoe.py), [Cross Stitch](nextrec/models/multi_task/cross_stitch.py)
|
|
45
45
|
- **28/12/2025** 在v0.4.21中加入了对SwanLab和Wandb的支持,通过model的`fit`方法进行配置:`use_swanlab=True, swanlab_kwargs={"project": "NextRec","name":"tutorial_movielens_deepfm"},`
|
|
46
46
|
- **21/12/2025** 在v0.4.16中加入了对[GradNorm](/nextrec/loss/grad_norm.py)的支持,通过compile的`loss_weight='grad_norm'`进行配置
|
|
47
47
|
- **12/12/2025** 在v0.4.9中加入了[RQ-VAE](/nextrec/models/representation/rqvae.py)模块。配套的[数据集](/dataset/ecommerce_task.csv)和[代码](tutorials/notebooks/zh/使用RQ-VAE构建语义ID.ipynb)已经同步在仓库中
|
|
@@ -193,11 +193,11 @@ nextrec --mode=predict --predict_config=path/to/predict_config.yaml
|
|
|
193
193
|
|
|
194
194
|
预测结果固定保存到 `{checkpoint_path}/predictions/{name}.{save_data_format}`。
|
|
195
195
|
|
|
196
|
-
> 截止当前版本0.4.
|
|
196
|
+
> 截止当前版本0.4.29,NextRec CLI支持单机训练,分布式训练相关功能尚在开发中。
|
|
197
197
|
|
|
198
198
|
## 兼容平台
|
|
199
199
|
|
|
200
|
-
当前最新版本为0.4.
|
|
200
|
+
当前最新版本为0.4.29,所有模型和测试代码均已在以下平台通过验证,如果开发者在使用中遇到兼容问题,请在issue区提出错误报告及系统版本:
|
|
201
201
|
|
|
202
202
|
| 平台 | 配置 |
|
|
203
203
|
|------|------|
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|

|
|
9
9
|

|
|
10
10
|

|
|
11
|
-

|
|
12
12
|
[](https://deepwiki.com/zerolovesea/NextRec)
|
|
13
13
|
|
|
14
14
|
English | [中文文档](README.md)
|
|
@@ -44,7 +44,7 @@ NextRec is a modern recommendation framework built on PyTorch, delivering a unif
|
|
|
44
44
|
|
|
45
45
|
## NextRec Progress
|
|
46
46
|
|
|
47
|
-
- **01/01/2026** Happy New Year! In v0.4.
|
|
47
|
+
- **01/01/2026** Happy New Year! In v0.4.27, added support for multiple multi-task models: [APG](/nextrec/models/multi_task/apg.py), [ESCM](/nextrec/models/multi_task/escm.py), [HMoE](/nextrec/models/multi_task/hmoe.py), [Cross Stitch](/nextrec/models/multi_task/cross_stitch.py)
|
|
48
48
|
- **28/12/2025** Added support for SwanLab and Weights & Biases in v0.4.21, configurable via the model `fit` method: `use_swanlab=True, swanlab_kwargs={"project": "NextRec","name":"tutorial_movielens_deepfm"},`
|
|
49
49
|
- **21/12/2025** Added support for [GradNorm](/nextrec/loss/grad_norm.py) in v0.4.16, configurable via `loss_weight='grad_norm'` in the compile method
|
|
50
50
|
- **12/12/2025** Added [RQ-VAE](/nextrec/models/representation/rqvae.py), a common module for generative retrieval in v0.4.9. Paired [dataset](/dataset/ecommerce_task.csv) and [notebook code](tutorials/notebooks/en/Build%20semantic%20ID%20with%20RQ-VAE.ipynb) are available.
|
|
@@ -196,11 +196,11 @@ nextrec --mode=predict --predict_config=path/to/predict_config.yaml
|
|
|
196
196
|
|
|
197
197
|
Prediction outputs are saved under `{checkpoint_path}/predictions/{name}.{save_data_format}`.
|
|
198
198
|
|
|
199
|
-
> As of version 0.4.
|
|
199
|
+
> As of version 0.4.29, NextRec CLI supports single-machine training; distributed training features are currently under development.
|
|
200
200
|
|
|
201
201
|
## Platform Compatibility
|
|
202
202
|
|
|
203
|
-
The current version is 0.4.
|
|
203
|
+
The current version is 0.4.29. All models and test code have been validated on the following platforms. If you encounter compatibility issues, please report them in the issue tracker with your system version:
|
|
204
204
|
|
|
205
205
|
| Platform | Configuration |
|
|
206
206
|
|----------|---------------|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.4.29"
|
|
@@ -111,7 +111,7 @@ def setup_logger(session_id: str | os.PathLike | None = None):
|
|
|
111
111
|
session = create_session(str(session_id) if session_id is not None else None)
|
|
112
112
|
log_dir = session.logs_dir
|
|
113
113
|
log_dir.mkdir(parents=True, exist_ok=True)
|
|
114
|
-
log_file = log_dir / "
|
|
114
|
+
log_file = log_dir / "runs_log.txt"
|
|
115
115
|
|
|
116
116
|
console_format = "%(message)s"
|
|
117
117
|
file_format = "%(asctime)s - %(levelname)s - %(message)s"
|
|
@@ -820,7 +820,7 @@ nextrec_logs/
|
|
|
820
820
|
├── features_config.pkl # Feature configuration
|
|
821
821
|
├── model_epoch_1.pt # Model checkpoint
|
|
822
822
|
├── model_epoch_2.pt
|
|
823
|
-
└──
|
|
823
|
+
└── runs_log.txt # Training log
|
|
824
824
|
```
|
|
825
825
|
|
|
826
826
|
### Q3: How to resume training?
|
|
@@ -829,7 +829,7 @@ The current CLI doesn't support resuming training. Please use the Python API.
|
|
|
829
829
|
|
|
830
830
|
### Q4: How to view training logs?
|
|
831
831
|
|
|
832
|
-
Logs are saved in `{artifact_root}/{session_id}/
|
|
832
|
+
Logs are saved in `{artifact_root}/{session_id}/runs_log.txt` and also output to terminal.
|
|
833
833
|
|
|
834
834
|
### Q5: Does it support distributed training?
|
|
835
835
|
|
|
@@ -820,7 +820,7 @@ nextrec_logs/
|
|
|
820
820
|
├── features_config.pkl # 特征配置
|
|
821
821
|
├── model_epoch_1.pt # 模型检查点
|
|
822
822
|
├── model_epoch_2.pt
|
|
823
|
-
└──
|
|
823
|
+
└── runs_log.txt # 训练日志
|
|
824
824
|
```
|
|
825
825
|
|
|
826
826
|
### Q3: 如何恢复训练?
|
|
@@ -829,7 +829,7 @@ nextrec_logs/
|
|
|
829
829
|
|
|
830
830
|
### Q4: 如何查看训练日志?
|
|
831
831
|
|
|
832
|
-
日志保存在 `{artifact_root}/{session_id}/
|
|
832
|
+
日志保存在 `{artifact_root}/{session_id}/runs_log.txt`,也会输出到终端。
|
|
833
833
|
|
|
834
834
|
### Q5: 支持分布式训练吗?
|
|
835
835
|
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.4.28"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{nextrec-0.4.28 → nextrec-0.4.29}/docs/zh//345/277/253/351/200/237/344/270/212/346/211/213.md"
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{nextrec-0.4.28 → nextrec-0.4.29}/tutorials/notebooks/en/Build semantic ID with RQ-VAE.ipynb
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|