{"adoption": {"forks": 316, "observed_at": "2026-08-28T04:05:01.278990+00:00", "stars": 1543}, "canonical_url": "https://ross.abutalabs.com/products/mleap", "card": {"archived": false, "artifact_type": "library", "description": "MLeap: Deploy ML Pipelines to Production", "domain": ["machine-learning", "big-data", "developer-tools"], "enriched": true, "function": ["serialization", "machine-learning", "etl"], "health_score": 96, "homepage": "https://combust.github.io/mleap-docs/", "language": "Scala", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["combust/mleap"], "name": "combust/mleap", "platform": ["jvm", "python", "cross-platform"], "pushed_at": "2026-07-21T17:38:04+00:00", "repo": "combust/mleap", "stars": 1543, "tags": ["spark", "scikit-learn", "tensorflow", "ml-pipelines", "model-deployment", "bundle-ml", "protobuf", "realtime-scoring", "data-engineering"], "topics": ["scikit-learn", "spark", "data-pipelines", "transformers", "tensorflow", "scala", "python"], "urls": [], "use_cases": ["deploy spark ml pipelines to production without a spark cluster", "serve scikit-learn models from a jvm api service", "export trained ml pipelines to a portable format for realtime scoring", "run ml feature transformers and models without python dependencies", "serialize ml pipelines as  or protobuf bundles", "mix spark and scikit-learn trained components in one deployable pipeline", "score models in batch mode by deserializing bundles back into spark"], "what_it_is": "MLeap is a serialization format (Bundle.ML) and portable execution engine for machine learning pipelines, implemented in Scala with Python support. It lets you train pipelines in Spark, Scikit-learn, or TensorFlow, export them once, and run them on a lightweight JVM runtime without dependencies on Spark, sklearn, numpy, or pandas.", "when_to_avoid": ["your models are deep learning focused with heavy TensorFlow/PyTorch serving needs better served by dedicated serving stacks", "your entire stack is Python and you can serve sklearn models directly", "you rely on custom transformers not supported by MLeap's transformer set", "you need GPU-accelerated inference"], "when_to_choose": ["you train models in Spark or Scikit-learn but serve them from JVM-based services", "you need low-latency realtime scoring without Spark runtime overhead", "you want portable model bundles not locked to a cloud ML platform", "your production stack is JVM-based and cannot depend on Python"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/mleap", "repo": "combust/mleap", "role": "main", "score": 95}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:01.278990+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:30:40.933342+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a910b55a4a3761c570b1e82f81c7df34e1363db1144aa754d8d4dfffb538909", "fetched_at": "2026-08-28T04:05:01.278990+00:00", "kind": "readme", "missing": false, "url": "https://github.com/combust/mleap"}, {"content_hash": "7e990b4194d08fbfd559df2b0cc3d839701ff1dc6fb94c627d89b15a63452d97", "fetched_at": "2026-08-29T11:31:54.354757+00:00", "kind": "homepage", "missing": false, "url": "https://combust.github.io/mleap-docs/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:01.278990+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:30:40.933342+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a910b55a4a3761c570b1e82f81c7df34e1363db1144aa754d8d4dfffb538909", "fetched_at": "2026-08-28T04:05:01.278990+00:00", "kind": "readme", "missing": false, "url": "https://github.com/combust/mleap"}, {"content_hash": "7e990b4194d08fbfd559df2b0cc3d839701ff1dc6fb94c627d89b15a63452d97", "fetched_at": "2026-08-29T11:31:54.354757+00:00", "kind": "homepage", "missing": false, "url": "https://combust.github.io/mleap-docs/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:30:40.933342+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a910b55a4a3761c570b1e82f81c7df34e1363db1144aa754d8d4dfffb538909", "fetched_at": "2026-08-28T04:05:01.278990+00:00", "kind": "readme", "missing": false, "url": "https://github.com/combust/mleap"}, {"content_hash": "7e990b4194d08fbfd559df2b0cc3d839701ff1dc6fb94c627d89b15a63452d97", "fetched_at": "2026-08-29T11:31:54.354757+00:00", "kind": "homepage", "missing": false, "url": "https://combust.github.io/mleap-docs/"}], "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:05:01.278990+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:01.278990+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:01.278990+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:30:40.933342+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a910b55a4a3761c570b1e82f81c7df34e1363db1144aa754d8d4dfffb538909", "fetched_at": "2026-08-28T04:05:01.278990+00:00", "kind": "readme", "missing": false, "url": "https://github.com/combust/mleap"}, {"content_hash": "7e990b4194d08fbfd559df2b0cc3d839701ff1dc6fb94c627d89b15a63452d97", "fetched_at": "2026-08-29T11:31:54.354757+00:00", "kind": "homepage", "missing": false, "url": "https://combust.github.io/mleap-docs/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:01.278990+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:01.278990+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:30:40.933342+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a910b55a4a3761c570b1e82f81c7df34e1363db1144aa754d8d4dfffb538909", "fetched_at": "2026-08-28T04:05:01.278990+00:00", "kind": "readme", "missing": false, "url": "https://github.com/combust/mleap"}, {"content_hash": "7e990b4194d08fbfd559df2b0cc3d839701ff1dc6fb94c627d89b15a63452d97", "fetched_at": "2026-08-29T11:31:54.354757+00:00", "kind": "homepage", "missing": false, "url": "https://combust.github.io/mleap-docs/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:01.278990+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:01.278990+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:01.278990+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:30:40.933342+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a910b55a4a3761c570b1e82f81c7df34e1363db1144aa754d8d4dfffb538909", "fetched_at": "2026-08-28T04:05:01.278990+00:00", "kind": "readme", "missing": false, "url": "https://github.com/combust/mleap"}, {"content_hash": "7e990b4194d08fbfd559df2b0cc3d839701ff1dc6fb94c627d89b15a63452d97", "fetched_at": "2026-08-29T11:31:54.354757+00:00", "kind": "homepage", "missing": false, "url": "https://combust.github.io/mleap-docs/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:01.278990+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:01.278990+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:30:40.933342+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a910b55a4a3761c570b1e82f81c7df34e1363db1144aa754d8d4dfffb538909", "fetched_at": "2026-08-28T04:05:01.278990+00:00", "kind": "readme", "missing": false, "url": "https://github.com/combust/mleap"}, {"content_hash": "7e990b4194d08fbfd559df2b0cc3d839701ff1dc6fb94c627d89b15a63452d97", "fetched_at": "2026-08-29T11:31:54.354757+00:00", "kind": "homepage", "missing": false, "url": "https://combust.github.io/mleap-docs/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:30:40.933342+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a910b55a4a3761c570b1e82f81c7df34e1363db1144aa754d8d4dfffb538909", "fetched_at": "2026-08-28T04:05:01.278990+00:00", "kind": "readme", "missing": false, "url": "https://github.com/combust/mleap"}, {"content_hash": "7e990b4194d08fbfd559df2b0cc3d839701ff1dc6fb94c627d89b15a63452d97", "fetched_at": "2026-08-29T11:31:54.354757+00:00", "kind": "homepage", "missing": false, "url": "https://combust.github.io/mleap-docs/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:30:40.933342+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a910b55a4a3761c570b1e82f81c7df34e1363db1144aa754d8d4dfffb538909", "fetched_at": "2026-08-28T04:05:01.278990+00:00", "kind": "readme", "missing": false, "url": "https://github.com/combust/mleap"}, {"content_hash": "7e990b4194d08fbfd559df2b0cc3d839701ff1dc6fb94c627d89b15a63452d97", "fetched_at": "2026-08-29T11:31:54.354757+00:00", "kind": "homepage", "missing": false, "url": "https://combust.github.io/mleap-docs/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:30:40.933342+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9a910b55a4a3761c570b1e82f81c7df34e1363db1144aa754d8d4dfffb538909", "fetched_at": "2026-08-28T04:05:01.278990+00:00", "kind": "readme", "missing": false, "url": "https://github.com/combust/mleap"}, {"content_hash": "7e990b4194d08fbfd559df2b0cc3d839701ff1dc6fb94c627d89b15a63452d97", "fetched_at": "2026-08-29T11:31:54.354757+00:00", "kind": "homepage", "missing": false, "url": "https://combust.github.io/mleap-docs/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 93, "longevity": 100, "rhythm": 94}, "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": 3662, "days_push": 43, "days_rel": 43, "gap_med": 5.0, "n_releases_24m": 9}, "score": 95, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}