{"adoption": {"forks": 192, "observed_at": "2026-08-28T04:03:32.021659+00:00", "stars": 1085}, "canonical_url": "https://ross.abutalabs.com/products/deeprobust", "card": {"archived": false, "artifact_type": "library", "description": "A pytorch adversarial library for attack and defense methods on images and graphs", "domain": ["machine-learning", "deep-learning", "security", "computer-vision"], "enriched": true, "function": ["machine-learning", "deep-learning", "security", "benchmarking"], "health_score": 37, "homepage": null, "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["DSE-MSU/DeepRobust"], "name": "DSE-MSU/DeepRobust", "platform": ["python"], "pushed_at": "2025-06-26T02:36:41+00:00", "repo": "DSE-MSU/DeepRobust", "stars": 1085, "tags": ["adversarial-attacks", "adversarial-defense", "adversarial-robustness", "graph-neural-networks", "pytorch", "adversarial-examples"], "topics": ["adversarial-attacks", "adversarial-examples", "deep-neural-networks", "defense", "graph-neural-networks", "machine-learning", "deep-learning", "graph-convolutional-networks", "graph-mining"], "urls": [], "use_cases": ["generate adversarial examples against image classifiers", "evaluate robustness of deep neural networks", "run adversarial attacks on graph neural networks", "test graph poisoning and evasion defenses", "benchmark attack and defense algorithms in PyTorch", "research adversarial machine learning on images and graphs"], "what_it_is": "DeepRobust is a PyTorch library for adversarial robustness research, providing implementations of attack and defense methods for both image classifiers and graph neural networks. It is aimed at researchers benchmarking adversarial examples and defenses in machine learning.", "when_to_avoid": ["you need production-grade model security rather than research tooling", "you work in TensorFlow or another framework instead of PyTorch", "you only need general deep learning utilities without adversarial focus"], "when_to_choose": ["you need ready-made adversarial attack and defense implementations in PyTorch", "you study robustness of both image models and graph neural networks", "you want a benchmarking baseline library for adversarial ML research"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/deeprobust", "repo": "DSE-MSU/DeepRobust", "role": "main", "score": 45}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.021659+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:49:40.708029+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1609b69111082c82759f541ab745908a52075f7a8f39ba1ecec802527ae02642", "fetched_at": "2026-08-28T04:03:32.021659+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DSE-MSU/DeepRobust"}, {"content_hash": "601e37189ec88b36b7dd5a64daf30ce368d85702bbf0c43feaa166c1e63ad303", "fetched_at": "2026-08-29T12:52:36.740622+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/deeprobust/json"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.021659+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:49:40.708029+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1609b69111082c82759f541ab745908a52075f7a8f39ba1ecec802527ae02642", "fetched_at": "2026-08-28T04:03:32.021659+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DSE-MSU/DeepRobust"}, {"content_hash": "601e37189ec88b36b7dd5a64daf30ce368d85702bbf0c43feaa166c1e63ad303", "fetched_at": "2026-08-29T12:52:36.740622+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/deeprobust/json"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:49:40.708029+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1609b69111082c82759f541ab745908a52075f7a8f39ba1ecec802527ae02642", "fetched_at": "2026-08-28T04:03:32.021659+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DSE-MSU/DeepRobust"}, {"content_hash": "601e37189ec88b36b7dd5a64daf30ce368d85702bbf0c43feaa166c1e63ad303", "fetched_at": "2026-08-29T12:52:36.740622+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/deeprobust/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:03:32.021659+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.021659+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.021659+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:49:40.708029+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1609b69111082c82759f541ab745908a52075f7a8f39ba1ecec802527ae02642", "fetched_at": "2026-08-28T04:03:32.021659+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DSE-MSU/DeepRobust"}, {"content_hash": "601e37189ec88b36b7dd5a64daf30ce368d85702bbf0c43feaa166c1e63ad303", "fetched_at": "2026-08-29T12:52:36.740622+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/deeprobust/json"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.021659+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.021659+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:49:40.708029+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1609b69111082c82759f541ab745908a52075f7a8f39ba1ecec802527ae02642", "fetched_at": "2026-08-28T04:03:32.021659+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DSE-MSU/DeepRobust"}, {"content_hash": "601e37189ec88b36b7dd5a64daf30ce368d85702bbf0c43feaa166c1e63ad303", "fetched_at": "2026-08-29T12:52:36.740622+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/deeprobust/json"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.021659+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.021659+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.021659+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:49:40.708029+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1609b69111082c82759f541ab745908a52075f7a8f39ba1ecec802527ae02642", "fetched_at": "2026-08-28T04:03:32.021659+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DSE-MSU/DeepRobust"}, {"content_hash": "601e37189ec88b36b7dd5a64daf30ce368d85702bbf0c43feaa166c1e63ad303", "fetched_at": "2026-08-29T12:52:36.740622+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/deeprobust/json"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.021659+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.021659+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:49:40.708029+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1609b69111082c82759f541ab745908a52075f7a8f39ba1ecec802527ae02642", "fetched_at": "2026-08-28T04:03:32.021659+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DSE-MSU/DeepRobust"}, {"content_hash": "601e37189ec88b36b7dd5a64daf30ce368d85702bbf0c43feaa166c1e63ad303", "fetched_at": "2026-08-29T12:52:36.740622+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/deeprobust/json"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:49:40.708029+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1609b69111082c82759f541ab745908a52075f7a8f39ba1ecec802527ae02642", "fetched_at": "2026-08-28T04:03:32.021659+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DSE-MSU/DeepRobust"}, {"content_hash": "601e37189ec88b36b7dd5a64daf30ce368d85702bbf0c43feaa166c1e63ad303", "fetched_at": "2026-08-29T12:52:36.740622+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/deeprobust/json"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:49:40.708029+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1609b69111082c82759f541ab745908a52075f7a8f39ba1ecec802527ae02642", "fetched_at": "2026-08-28T04:03:32.021659+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DSE-MSU/DeepRobust"}, {"content_hash": "601e37189ec88b36b7dd5a64daf30ce368d85702bbf0c43feaa166c1e63ad303", "fetched_at": "2026-08-29T12:52:36.740622+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/deeprobust/json"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:49:40.708029+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "1609b69111082c82759f541ab745908a52075f7a8f39ba1ecec802527ae02642", "fetched_at": "2026-08-28T04:03:32.021659+00:00", "kind": "readme", "missing": false, "url": "https://github.com/DSE-MSU/DeepRobust"}, {"content_hash": "601e37189ec88b36b7dd5a64daf30ce368d85702bbf0c43feaa166c1e63ad303", "fetched_at": "2026-08-29T12:52:36.740622+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/deeprobust/json"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 28, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:39:23.370411+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2538, "days_push": 434, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 45, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}