{"adoption": {"forks": 229, "observed_at": "2026-08-28T04:03:30.598544+00:00", "stars": 1080}, "canonical_url": "https://ross.abutalabs.com/products/pytorch-fm", "card": {"archived": false, "artifact_type": "library", "description": "Factorization Machine models in PyTorch", "domain": ["machine-learning", "data-science"], "enriched": true, "function": ["machine-learning", "deep-learning"], "health_score": 20, "homepage": null, "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["rixwew/pytorch-fm"], "name": "rixwew/pytorch-fm", "platform": ["python"], "pushed_at": "2024-04-08T15:25:40+00:00", "repo": "rixwew/pytorch-fm", "stars": 1080, "tags": ["factorization-machines", "ctr-prediction", "recommender-systems", "pytorch", "deepfm", "collaborative-filtering", "feature-interaction", "recommendation"], "topics": ["factorization-machines", "pytorch", "deepfm", "xdeepfm", "autoint", "ffm", "fm", "nfm", "fnfm", "dcn", "pnn", "movielens-dataset", "criteo-dataset", "avazu-dataset", "ctr-prediction", "collaborative-filtering", "neural-collaborative-filtering", "hofm"], "urls": [], "use_cases": ["train factorization machine models in pytorch", "run ctr prediction experiments with deepfm or xdeepfm", "benchmark feature interaction models on criteo and avazu datasets", "implement neural collaborative filtering", "compare recommender model auc on movielens", "learn how factorization machines are implemented"], "what_it_is": "A PyTorch library implementing a wide collection of factorization machine models (FM, FFM, DeepFM, xDeepFM, AutoInt, NFM, DCN, and more) for click-through rate prediction and recommendation. It also bundles loaders for common benchmark datasets like MovieLens, Criteo, and Avazu.", "when_to_avoid": ["you need a production recommender system with serving infrastructure", "you work outside PyTorch or need distributed large-scale training", "you need actively developed features beyond the existing model set"], "when_to_choose": ["you need many factorization machine variants in one pytorch package", "you want reproducible baselines on standard CTR datasets", "you are researching or teaching feature interaction models"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/pytorch-fm", "repo": "rixwew/pytorch-fm", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.598544+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:53:00.549432+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0df790eea013833e5b19b8e27b97a8808bb230d2b411d17a7dc8f65b792d1a80", "fetched_at": "2026-08-28T04:03:30.598544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rixwew/pytorch-fm"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.598544+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:53:00.549432+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0df790eea013833e5b19b8e27b97a8808bb230d2b411d17a7dc8f65b792d1a80", "fetched_at": "2026-08-28T04:03:30.598544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rixwew/pytorch-fm"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:53:00.549432+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0df790eea013833e5b19b8e27b97a8808bb230d2b411d17a7dc8f65b792d1a80", "fetched_at": "2026-08-28T04:03:30.598544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rixwew/pytorch-fm"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.598544+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.598544+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.598544+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:53:00.549432+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0df790eea013833e5b19b8e27b97a8808bb230d2b411d17a7dc8f65b792d1a80", "fetched_at": "2026-08-28T04:03:30.598544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rixwew/pytorch-fm"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.598544+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.598544+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:53:00.549432+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0df790eea013833e5b19b8e27b97a8808bb230d2b411d17a7dc8f65b792d1a80", "fetched_at": "2026-08-28T04:03:30.598544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rixwew/pytorch-fm"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.598544+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.598544+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.598544+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:53:00.549432+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0df790eea013833e5b19b8e27b97a8808bb230d2b411d17a7dc8f65b792d1a80", "fetched_at": "2026-08-28T04:03:30.598544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rixwew/pytorch-fm"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.598544+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:30.598544+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:53:00.549432+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0df790eea013833e5b19b8e27b97a8808bb230d2b411d17a7dc8f65b792d1a80", "fetched_at": "2026-08-28T04:03:30.598544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rixwew/pytorch-fm"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:53:00.549432+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0df790eea013833e5b19b8e27b97a8808bb230d2b411d17a7dc8f65b792d1a80", "fetched_at": "2026-08-28T04:03:30.598544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rixwew/pytorch-fm"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:53:00.549432+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0df790eea013833e5b19b8e27b97a8808bb230d2b411d17a7dc8f65b792d1a80", "fetched_at": "2026-08-28T04:03:30.598544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rixwew/pytorch-fm"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:53:00.549432+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0df790eea013833e5b19b8e27b97a8808bb230d2b411d17a7dc8f65b792d1a80", "fetched_at": "2026-08-28T04:03:30.598544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rixwew/pytorch-fm"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2654, "days_push": 877, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}