{"adoption": {"forks": 866, "observed_at": "2026-08-28T04:09:13.542640+00:00", "stars": 5240}, "canonical_url": "https://ross.abutalabs.com/products/synapseml", "card": {"archived": false, "artifact_type": "library", "description": "Simple and Distributed Machine Learning Python Library porting ML algorithms for Spark", "domain": ["machine-learning", "big-data", "data-science", "deep-learning", "artificial-intelligence"], "enriched": true, "function": ["machine-learning", "deep-learning", "nlp", "computer-vision", "etl", "data-science"], "health_score": 98, "homepage": "http://aka.ms/spark", "language": "Scala", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["microsoft/SynapseML"], "name": "microsoft/SynapseML", "platform": ["jvm", "python", "cloud"], "pushed_at": "2026-08-26T08:23:45+00:00", "repo": "microsoft/SynapseML", "stars": 5240, "tags": ["apache-spark", "pyspark", "distributed-ml", "lightgbm", "onnx", "databricks", "azure", "mmlspark", "spark"], "topics": ["spark", "pyspark", "azure", "scala", "microsoft", "ml", "machine-learning", "databricks", "cognitive-services", "lightgbm", "http", "model-deployment", "deep-learning", "ai", "apache-spark", "data-science", "synapse", "big-data", "onnx", "opencv"], "urls": [], "use_cases": ["train machine learning models on large distributed Spark clusters", "run distributed LightGBM training on Spark DataFrames", "integrate Azure Cognitive Services into Spark pipelines", "build scalable text analytics and NLP pipelines", "perform distributed deep learning and ONNX model inference", "detect anomalies at scale in big data workflows", "deploy and evaluate ML models on multi-node clusters"], "what_it_is": "SynapseML (formerly MMLSpark) is an open-source machine learning library built on Apache Spark that provides simple, composable, distributed APIs for tasks like text analytics, vision, and anomaly detection. It shares the SparkML/MLlib API so models integrate seamlessly into existing Spark workflows across Python, R, Scala, Java, and .NET.", "when_to_avoid": ["you work on a single machine with small datasets where scikit-learn suffices", "you need a lightweight library without JVM/Spark dependencies", "your project does not use Spark or a distributed computing framework"], "when_to_choose": ["you already use Apache Spark and want ML pipelines with the same API", "you need distributed training of algorithms like LightGBM on big data", "you want to combine cloud AI services with Spark workflows", "you need multi-language access (Python, R, Scala, Java, .NET) to ML tools"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/synapseml", "repo": "microsoft/SynapseML", "role": "main", "score": 88}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.542640+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:59:37.593474+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5afd4b83cfff5cfd8235cb526793a82cc8befb921dfdbd990cba7316cc57d879", "fetched_at": "2026-08-28T04:09:13.542640+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/SynapseML"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.542640+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:59:37.593474+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5afd4b83cfff5cfd8235cb526793a82cc8befb921dfdbd990cba7316cc57d879", "fetched_at": "2026-08-28T04:09:13.542640+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/SynapseML"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:59:37.593474+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5afd4b83cfff5cfd8235cb526793a82cc8befb921dfdbd990cba7316cc57d879", "fetched_at": "2026-08-28T04:09:13.542640+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/SynapseML"}], "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:09:13.542640+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.542640+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.542640+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:59:37.593474+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5afd4b83cfff5cfd8235cb526793a82cc8befb921dfdbd990cba7316cc57d879", "fetched_at": "2026-08-28T04:09:13.542640+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/SynapseML"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.542640+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.542640+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:59:37.593474+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5afd4b83cfff5cfd8235cb526793a82cc8befb921dfdbd990cba7316cc57d879", "fetched_at": "2026-08-28T04:09:13.542640+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/SynapseML"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.542640+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.542640+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.542640+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:59:37.593474+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5afd4b83cfff5cfd8235cb526793a82cc8befb921dfdbd990cba7316cc57d879", "fetched_at": "2026-08-28T04:09:13.542640+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/SynapseML"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.542640+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:13.542640+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:59:37.593474+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5afd4b83cfff5cfd8235cb526793a82cc8befb921dfdbd990cba7316cc57d879", "fetched_at": "2026-08-28T04:09:13.542640+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/SynapseML"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:59:37.593474+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5afd4b83cfff5cfd8235cb526793a82cc8befb921dfdbd990cba7316cc57d879", "fetched_at": "2026-08-28T04:09:13.542640+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/SynapseML"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:59:37.593474+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5afd4b83cfff5cfd8235cb526793a82cc8befb921dfdbd990cba7316cc57d879", "fetched_at": "2026-08-28T04:09:13.542640+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/SynapseML"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:59:37.593474+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "5afd4b83cfff5cfd8235cb526793a82cc8befb921dfdbd990cba7316cc57d879", "fetched_at": "2026-08-28T04:09:13.542640+00:00", "kind": "readme", "missing": false, "url": "https://github.com/microsoft/SynapseML"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 66}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3376, "days_push": 7, "days_rel": 148, "gap_med": 64, "n_releases_24m": 8}, "score": 88, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}