{"adoption": {"forks": 24, "observed_at": "2026-08-28T04:03:24.604044+00:00", "stars": 1056}, "canonical_url": "https://ross.abutalabs.com/products/axrl", "card": {"archived": false, "artifact_type": "framework", "description": "AxisRL is an agentic RL post-training framework built on SGLang rollout, Megatron training, and real-world agent workflows.", "domain": ["large-language-models", "machine-learning", "reinforcement-learning", "gpu-computing"], "enriched": true, "function": ["llm-training", "agent-framework", "llm-inference", "machine-learning", "gpu-computing"], "health_score": 77, "homepage": "https://xyz-lab.ai/", "language": "Python", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["XYZ-AI-Lab/axrl"], "name": "XYZ-AI-Lab/axrl", "platform": ["python"], "pushed_at": "2026-08-03T08:58:45+00:00", "repo": "XYZ-AI-Lab/axrl", "stars": 1056, "tags": ["reinforcement-learning", "post-training", "sglang", "megatron", "rlhf", "agentic-rl", "ppo", "grpo", "rollout", "distributed-training", "ai-agents", "gpu", "linux", "docker"], "topics": [], "urls": [], "use_cases": ["post-train an LLM with PPO or GRPO on multi-turn agent trajectories", "run RL training with hundreds-of-turn tool-calling agent workflows", "scale rollout and training across a GPU cluster with SGLang and Megatron", "capture black-box agent environments through an OpenAI-compatible proxy for RL training", "debug rollout-training mismatches with spike replay and routing analysis"], "what_it_is": "AxisRL is an agentic reinforcement learning post-training framework for large language models, built on SGLang for high-throughput rollout and Megatron for large-scale distributed training. It coordinates multi-turn agent environments, tool calls, reward collection, weight synchronization, and reproducible debugging within a single system layer.", "when_to_avoid": ["you only need single-turn supervised fine-tuning without RL", "you lack multi-GPU infrastructure or a serving cluster", "you need a simple plug-and-play RLHF library with minimal setup", "you work outside the Python 3.12+ ecosystem"], "when_to_choose": ["you need agentic multi-turn RL post-training at large parameter scale", "you want SGLang rollout combined with Megatron distributed training in one framework", "you need configurable policy objectives like PPO, GRPO, GSPO, or TOPR", "you require observability and reproducibility for long agent training runs"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/axrl", "repo": "XYZ-AI-Lab/axrl", "role": "main", "score": 55}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.604044+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:58:18.032552+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cf994d42d581ace165862d3d56a6e0810b03ddefb93e3d54571f8321e10b8016", "fetched_at": "2026-08-28T04:03:24.604044+00:00", "kind": "readme", "missing": false, "url": "https://github.com/XYZ-AI-Lab/axrl"}, {"content_hash": "6af22f44049824b4eb1eb8ac671763d3f0cc429d876e58beb5f23720d9d7d05e", "fetched_at": "2026-08-29T13:00:08.758241+00:00", "kind": "homepage", "missing": false, "url": "https://xyz-lab.ai/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.604044+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:58:18.032552+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cf994d42d581ace165862d3d56a6e0810b03ddefb93e3d54571f8321e10b8016", "fetched_at": "2026-08-28T04:03:24.604044+00:00", "kind": "readme", "missing": false, "url": "https://github.com/XYZ-AI-Lab/axrl"}, {"content_hash": "6af22f44049824b4eb1eb8ac671763d3f0cc429d876e58beb5f23720d9d7d05e", "fetched_at": "2026-08-29T13:00:08.758241+00:00", "kind": "homepage", "missing": false, "url": "https://xyz-lab.ai/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:58:18.032552+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cf994d42d581ace165862d3d56a6e0810b03ddefb93e3d54571f8321e10b8016", "fetched_at": "2026-08-28T04:03:24.604044+00:00", "kind": "readme", "missing": false, "url": "https://github.com/XYZ-AI-Lab/axrl"}, {"content_hash": "6af22f44049824b4eb1eb8ac671763d3f0cc429d876e58beb5f23720d9d7d05e", "fetched_at": "2026-08-29T13:00:08.758241+00:00", "kind": "homepage", "missing": false, "url": "https://xyz-lab.ai/"}], "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:24.604044+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.604044+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.604044+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:58:18.032552+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cf994d42d581ace165862d3d56a6e0810b03ddefb93e3d54571f8321e10b8016", "fetched_at": "2026-08-28T04:03:24.604044+00:00", "kind": "readme", "missing": false, "url": "https://github.com/XYZ-AI-Lab/axrl"}, {"content_hash": "6af22f44049824b4eb1eb8ac671763d3f0cc429d876e58beb5f23720d9d7d05e", "fetched_at": "2026-08-29T13:00:08.758241+00:00", "kind": "homepage", "missing": false, "url": "https://xyz-lab.ai/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.604044+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.604044+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:58:18.032552+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cf994d42d581ace165862d3d56a6e0810b03ddefb93e3d54571f8321e10b8016", "fetched_at": "2026-08-28T04:03:24.604044+00:00", "kind": "readme", "missing": false, "url": "https://github.com/XYZ-AI-Lab/axrl"}, {"content_hash": "6af22f44049824b4eb1eb8ac671763d3f0cc429d876e58beb5f23720d9d7d05e", "fetched_at": "2026-08-29T13:00:08.758241+00:00", "kind": "homepage", "missing": false, "url": "https://xyz-lab.ai/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.604044+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.604044+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.604044+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:58:18.032552+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cf994d42d581ace165862d3d56a6e0810b03ddefb93e3d54571f8321e10b8016", "fetched_at": "2026-08-28T04:03:24.604044+00:00", "kind": "readme", "missing": false, "url": "https://github.com/XYZ-AI-Lab/axrl"}, {"content_hash": "6af22f44049824b4eb1eb8ac671763d3f0cc429d876e58beb5f23720d9d7d05e", "fetched_at": "2026-08-29T13:00:08.758241+00:00", "kind": "homepage", "missing": false, "url": "https://xyz-lab.ai/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.604044+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:24.604044+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:58:18.032552+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cf994d42d581ace165862d3d56a6e0810b03ddefb93e3d54571f8321e10b8016", "fetched_at": "2026-08-28T04:03:24.604044+00:00", "kind": "readme", "missing": false, "url": "https://github.com/XYZ-AI-Lab/axrl"}, {"content_hash": "6af22f44049824b4eb1eb8ac671763d3f0cc429d876e58beb5f23720d9d7d05e", "fetched_at": "2026-08-29T13:00:08.758241+00:00", "kind": "homepage", "missing": false, "url": "https://xyz-lab.ai/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:58:18.032552+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cf994d42d581ace165862d3d56a6e0810b03ddefb93e3d54571f8321e10b8016", "fetched_at": "2026-08-28T04:03:24.604044+00:00", "kind": "readme", "missing": false, "url": "https://github.com/XYZ-AI-Lab/axrl"}, {"content_hash": "6af22f44049824b4eb1eb8ac671763d3f0cc429d876e58beb5f23720d9d7d05e", "fetched_at": "2026-08-29T13:00:08.758241+00:00", "kind": "homepage", "missing": false, "url": "https://xyz-lab.ai/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:58:18.032552+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cf994d42d581ace165862d3d56a6e0810b03ddefb93e3d54571f8321e10b8016", "fetched_at": "2026-08-28T04:03:24.604044+00:00", "kind": "readme", "missing": false, "url": "https://github.com/XYZ-AI-Lab/axrl"}, {"content_hash": "6af22f44049824b4eb1eb8ac671763d3f0cc429d876e58beb5f23720d9d7d05e", "fetched_at": "2026-08-29T13:00:08.758241+00:00", "kind": "homepage", "missing": false, "url": "https://xyz-lab.ai/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:58:18.032552+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cf994d42d581ace165862d3d56a6e0810b03ddefb93e3d54571f8321e10b8016", "fetched_at": "2026-08-28T04:03:24.604044+00:00", "kind": "readme", "missing": false, "url": "https://github.com/XYZ-AI-Lab/axrl"}, {"content_hash": "6af22f44049824b4eb1eb8ac671763d3f0cc429d876e58beb5f23720d9d7d05e", "fetched_at": "2026-08-29T13:00:08.758241+00:00", "kind": "homepage", "missing": false, "url": "https://xyz-lab.ai/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 95, "longevity": 2, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "young"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 41, "days_push": 30, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 55, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}