{"adoption": {"forks": 620, "observed_at": "2026-08-28T04:05:24.142023+00:00", "stars": 1699}, "canonical_url": "https://ross.abutalabs.com/products/addons", "card": {"archived": true, "artifact_type": "library", "description": "Useful extra functionality for TensorFlow 2.x maintained by SIG-addons", "domain": ["machine-learning", "deep-learning"], "enriched": true, "function": ["machine-learning", "deep-learning"], "health_score": 10, "homepage": null, "language": "Python", "license": "Apache-2.0", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["tensorflow/addons"], "name": "tensorflow/addons", "platform": ["python"], "pushed_at": "2025-09-04T15:43:46+00:00", "repo": "tensorflow/addons", "stars": 1699, "tags": ["tensorflow", "neural-networks", "optimizers", "losses", "layers", "deprecated", "linux", "macos"], "topics": ["machine-learning", "deep-learning", "tensorflow", "neural-network", "tensorflow-addons", "python"], "urls": [], "use_cases": ["use extra optimizers like AdamW or Lookahead with TensorFlow 2.x", "add specialized loss functions not available in core TensorFlow", "apply additional image processing ops in a TensorFlow pipeline", "use extra RNN cell types in a Keras model", "add custom activation functions and layers to TensorFlow models"], "what_it_is": "TensorFlow Addons is a collection of extra layers, optimizers, losses, metrics, activations, callbacks, and image ops that conform to TensorFlow 2.x API patterns but are not part of core TensorFlow. It is maintained by SIG-addons and is now in minimal maintenance mode with a planned end of life, with users directed to Keras, KerasCV, and KerasNLP instead.", "when_to_avoid": ["you are starting a new project - use Keras, KerasCV, or KerasNLP instead", "you need long-term support or new features - the project has ended development and reached end of life"], "when_to_choose": ["you are on an existing TensorFlow 2.x project that already depends on TFA", "you need a specific op, loss, or optimizer that only exists in Addons and cannot migrate yet"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/addons", "repo": "tensorflow/addons", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:24.142023+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:37:48.410089+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd559dea347ac9753e3488bd4914ac563ef01435d2f3bd7aa35338ab1c7dd3f8", "fetched_at": "2026-08-28T04:05:24.142023+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tensorflow/addons"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:24.142023+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:37:48.410089+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd559dea347ac9753e3488bd4914ac563ef01435d2f3bd7aa35338ab1c7dd3f8", "fetched_at": "2026-08-28T04:05:24.142023+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tensorflow/addons"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:37:48.410089+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd559dea347ac9753e3488bd4914ac563ef01435d2f3bd7aa35338ab1c7dd3f8", "fetched_at": "2026-08-28T04:05:24.142023+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tensorflow/addons"}], "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:24.142023+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:24.142023+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:24.142023+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:37:48.410089+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd559dea347ac9753e3488bd4914ac563ef01435d2f3bd7aa35338ab1c7dd3f8", "fetched_at": "2026-08-28T04:05:24.142023+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tensorflow/addons"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:24.142023+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:24.142023+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:37:48.410089+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd559dea347ac9753e3488bd4914ac563ef01435d2f3bd7aa35338ab1c7dd3f8", "fetched_at": "2026-08-28T04:05:24.142023+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tensorflow/addons"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:24.142023+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:24.142023+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:24.142023+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:37:48.410089+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd559dea347ac9753e3488bd4914ac563ef01435d2f3bd7aa35338ab1c7dd3f8", "fetched_at": "2026-08-28T04:05:24.142023+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tensorflow/addons"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:24.142023+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:24.142023+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:37:48.410089+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd559dea347ac9753e3488bd4914ac563ef01435d2f3bd7aa35338ab1c7dd3f8", "fetched_at": "2026-08-28T04:05:24.142023+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tensorflow/addons"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:37:48.410089+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd559dea347ac9753e3488bd4914ac563ef01435d2f3bd7aa35338ab1c7dd3f8", "fetched_at": "2026-08-28T04:05:24.142023+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tensorflow/addons"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:37:48.410089+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd559dea347ac9753e3488bd4914ac563ef01435d2f3bd7aa35338ab1c7dd3f8", "fetched_at": "2026-08-28T04:05:24.142023+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tensorflow/addons"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:37:48.410089+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd559dea347ac9753e3488bd4914ac563ef01435d2f3bd7aa35338ab1c7dd3f8", "fetched_at": "2026-08-28T04:05:24.142023+00:00", "kind": "readme", "missing": false, "url": "https://github.com/tensorflow/addons"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 40, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2837, "days_push": 363, "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}}