{"adoption": {"forks": 361, "observed_at": "2026-08-28T04:07:47.729364+00:00", "stars": 3178}, "canonical_url": "https://ross.abutalabs.com/products/alpa", "card": {"archived": true, "artifact_type": "library", "description": "Training and serving large-scale neural networks with auto parallelization.", "domain": ["deep-learning", "machine-learning", "large-language-models", "microservices"], "enriched": true, "function": ["machine-learning", "llm-training", "llm-inference", "compiler"], "health_score": 10, "homepage": "https://alpa.ai", "language": "Python", "license": "Apache-2.0", "license_family": "permissive", "maturity": "abandoned", "member_repos": ["alpa-projects/alpa"], "name": "alpa-projects/alpa", "platform": ["python", "cloud"], "pushed_at": "2023-12-09T16:26:31+00:00", "repo": "alpa-projects/alpa", "stars": 3178, "tags": ["auto-parallelization", "jax", "distributed-training", "model-parallelism", "pipeline-parallelism", "research-artifact", "linux", "gpu"], "topics": ["deep-learning", "machine-learning", "compiler", "distributed-training", "high-performance-computing", "alpa", "jax", "distributed-computing", "llm", "auto-parallelization"], "urls": [], "use_cases": ["train multi-billion parameter models on a distributed cluster", "automatically parallelize single-device JAX training code", "serve large language models like OPT-175B across multiple devices", "run pipeline and operator parallelism without manual sharding", "scale deep learning training linearly on clusters"], "what_it_is": "Alpa is a Python system for training and serving large-scale neural networks by automatically parallelizing single-device code across distributed clusters using data, operator, and pipeline parallelism. It is built on JAX, XLA, and Ray, and is now unmaintained as a research artifact with its core algorithm merged into XLA.", "when_to_avoid": ["you need actively maintained software with bug fixes and support", "you use PyTorch or non-JAX frameworks", "you want production distributed training - use the auto-sharding code merged into XLA instead"], "when_to_choose": ["you need automatic parallelization for JAX-based large model training and can work with a research artifact", "you want to study or extend auto-sharding and auto-parallelization algorithms", "you need to serve very large transformer models with a Hugging Face-style interface"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/alpa", "repo": "alpa-projects/alpa", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:47.729364+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:25:07.416313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6838f79e3d9a5ff43b994dddae88913d81a64e762052e8217c7237a3c8886bb5", "fetched_at": "2026-08-28T04:07:47.729364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alpa-projects/alpa"}, {"content_hash": "1c8061bc897be302f1209e86b059cac1eca95063a7943f530cbe0011c0b51d07", "fetched_at": "2026-08-29T09:39:50.575476+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/alpa/json"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:47.729364+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:25:07.416313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6838f79e3d9a5ff43b994dddae88913d81a64e762052e8217c7237a3c8886bb5", "fetched_at": "2026-08-28T04:07:47.729364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alpa-projects/alpa"}, {"content_hash": "1c8061bc897be302f1209e86b059cac1eca95063a7943f530cbe0011c0b51d07", "fetched_at": "2026-08-29T09:39:50.575476+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/alpa/json"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:25:07.416313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6838f79e3d9a5ff43b994dddae88913d81a64e762052e8217c7237a3c8886bb5", "fetched_at": "2026-08-28T04:07:47.729364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alpa-projects/alpa"}, {"content_hash": "1c8061bc897be302f1209e86b059cac1eca95063a7943f530cbe0011c0b51d07", "fetched_at": "2026-08-29T09:39:50.575476+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/alpa/json"}], "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:07:47.729364+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:47.729364+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:47.729364+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:25:07.416313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6838f79e3d9a5ff43b994dddae88913d81a64e762052e8217c7237a3c8886bb5", "fetched_at": "2026-08-28T04:07:47.729364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alpa-projects/alpa"}, {"content_hash": "1c8061bc897be302f1209e86b059cac1eca95063a7943f530cbe0011c0b51d07", "fetched_at": "2026-08-29T09:39:50.575476+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/alpa/json"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:47.729364+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:47.729364+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:25:07.416313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6838f79e3d9a5ff43b994dddae88913d81a64e762052e8217c7237a3c8886bb5", "fetched_at": "2026-08-28T04:07:47.729364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alpa-projects/alpa"}, {"content_hash": "1c8061bc897be302f1209e86b059cac1eca95063a7943f530cbe0011c0b51d07", "fetched_at": "2026-08-29T09:39:50.575476+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/alpa/json"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:47.729364+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:47.729364+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:47.729364+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:25:07.416313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6838f79e3d9a5ff43b994dddae88913d81a64e762052e8217c7237a3c8886bb5", "fetched_at": "2026-08-28T04:07:47.729364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alpa-projects/alpa"}, {"content_hash": "1c8061bc897be302f1209e86b059cac1eca95063a7943f530cbe0011c0b51d07", "fetched_at": "2026-08-29T09:39:50.575476+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/alpa/json"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:47.729364+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:47.729364+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:25:07.416313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6838f79e3d9a5ff43b994dddae88913d81a64e762052e8217c7237a3c8886bb5", "fetched_at": "2026-08-28T04:07:47.729364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alpa-projects/alpa"}, {"content_hash": "1c8061bc897be302f1209e86b059cac1eca95063a7943f530cbe0011c0b51d07", "fetched_at": "2026-08-29T09:39:50.575476+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/alpa/json"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:25:07.416313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6838f79e3d9a5ff43b994dddae88913d81a64e762052e8217c7237a3c8886bb5", "fetched_at": "2026-08-28T04:07:47.729364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alpa-projects/alpa"}, {"content_hash": "1c8061bc897be302f1209e86b059cac1eca95063a7943f530cbe0011c0b51d07", "fetched_at": "2026-08-29T09:39:50.575476+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/alpa/json"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:25:07.416313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6838f79e3d9a5ff43b994dddae88913d81a64e762052e8217c7237a3c8886bb5", "fetched_at": "2026-08-28T04:07:47.729364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alpa-projects/alpa"}, {"content_hash": "1c8061bc897be302f1209e86b059cac1eca95063a7943f530cbe0011c0b51d07", "fetched_at": "2026-08-29T09:39:50.575476+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/alpa/json"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:25:07.416313+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6838f79e3d9a5ff43b994dddae88913d81a64e762052e8217c7237a3c8886bb5", "fetched_at": "2026-08-28T04:07:47.729364+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alpa-projects/alpa"}, {"content_hash": "1c8061bc897be302f1209e86b059cac1eca95063a7943f530cbe0011c0b51d07", "fetched_at": "2026-08-29T09:39:50.575476+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/alpa/json"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2018, "days_push": 998, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}