{"adoption": {"forks": 96, "observed_at": "2026-08-28T04:04:12.296739+00:00", "stars": 1273}, "canonical_url": "https://ross.abutalabs.com/products/gradient-free-optimizers", "card": {"archived": false, "artifact_type": "library", "description": "Lightweight optimization with local, global, population-based and sequential techniques across mixed search spaces", "domain": ["machine-learning", "data-science", "performance"], "enriched": true, "function": ["machine-learning", "search-engine", "data-science"], "health_score": 98, "homepage": "https://gradient-free-optimizers.readthedocs.io/en/latest/", "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["SimonBlanke/Gradient-Free-Optimizers"], "name": "SimonBlanke/Gradient-Free-Optimizers", "platform": ["python", "cross-platform"], "pushed_at": "2026-08-21T12:14:34+00:00", "repo": "SimonBlanke/Gradient-Free-Optimizers", "stars": 1273, "tags": ["optimization", "hyperparameter-tuning", "bayesian-optimization", "metaheuristics", "black-box-optimization", "gradient-free", "simulated-annealing", "particle-swarm", "evolution-strategies", "hill-climbing", "nelder-mead", "search-space", "algorithms"], "topics": ["optimization", "gradient-free-optimization", "bayesian-optimization", "particle-swarm-optimization", "evolution-strategies", "simulated-annealing", "random-search", "hill-climbing", "meta-heuristic", "machine-learning", "tree-of-parzen-estimator", "hyperparameter-optimization", "blackbox-optimization", "constrained-optimization", "nelder-mead"], "urls": [], "use_cases": ["tune machine learning model hyperparameters without gradients", "optimize a black-box objective function", "run bayesian optimization on a mixed search space", "compare metaheuristic optimizers like particle swarm and simulated annealing", "optimize simulation parameters where gradients are unavailable", "perform feature selection via search algorithms"], "what_it_is": "A Python library for gradient-free optimization of black-box functions, offering 23 algorithms (hill climbing, Bayesian optimization, particle swarm, simulated annealing, etc.) behind one unified API. It supports mixed search spaces combining continuous, discrete, and categorical dimensions, making it well suited to hyperparameter tuning and simulation optimization.", "when_to_avoid": ["your problem has cheap, reliable gradients - use gradient-based optimizers like SciPy or PyTorch instead", "you need massively parallel or distributed optimization at scale", "you need constrained optimization with complex constraint solvers"], "when_to_choose": ["your objective function is non-differentiable, noisy, or expensive to evaluate", "you want to swap optimization algorithms with a one-line change", "your search space mixes continuous ranges, grids, and categorical choices", "you want a lightweight pure-Python optimizer with optional SciPy dependency"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/gradient-free-optimizers", "repo": "SimonBlanke/Gradient-Free-Optimizers", "role": "main", "score": 94}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:12.296739+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T05:03:11.289445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f2fee6fcec43ceb4f390e11569a827223c2f9df20c9877c1a1d60fdf981ab49e", "fetched_at": "2026-08-28T04:04:12.296739+00:00", "kind": "readme", "missing": false, "url": "https://github.com/SimonBlanke/Gradient-Free-Optimizers"}, {"content_hash": "9ade8b5e0dd6065fa6e70792bfe4a49adffa8393ed39b6135180d918141fa07d", "fetched_at": "2026-08-29T12:15:03.003796+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/gradient-free-optimizers/json"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:12.296739+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T05:03:11.289445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f2fee6fcec43ceb4f390e11569a827223c2f9df20c9877c1a1d60fdf981ab49e", "fetched_at": "2026-08-28T04:04:12.296739+00:00", "kind": "readme", "missing": false, "url": "https://github.com/SimonBlanke/Gradient-Free-Optimizers"}, {"content_hash": "9ade8b5e0dd6065fa6e70792bfe4a49adffa8393ed39b6135180d918141fa07d", "fetched_at": "2026-08-29T12:15:03.003796+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/gradient-free-optimizers/json"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T05:03:11.289445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f2fee6fcec43ceb4f390e11569a827223c2f9df20c9877c1a1d60fdf981ab49e", "fetched_at": "2026-08-28T04:04:12.296739+00:00", "kind": "readme", "missing": false, "url": "https://github.com/SimonBlanke/Gradient-Free-Optimizers"}, {"content_hash": "9ade8b5e0dd6065fa6e70792bfe4a49adffa8393ed39b6135180d918141fa07d", "fetched_at": "2026-08-29T12:15:03.003796+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/gradient-free-optimizers/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:04:12.296739+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:12.296739+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:12.296739+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T05:03:11.289445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f2fee6fcec43ceb4f390e11569a827223c2f9df20c9877c1a1d60fdf981ab49e", "fetched_at": "2026-08-28T04:04:12.296739+00:00", "kind": "readme", "missing": false, "url": "https://github.com/SimonBlanke/Gradient-Free-Optimizers"}, {"content_hash": "9ade8b5e0dd6065fa6e70792bfe4a49adffa8393ed39b6135180d918141fa07d", "fetched_at": "2026-08-29T12:15:03.003796+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/gradient-free-optimizers/json"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:12.296739+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:12.296739+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T05:03:11.289445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f2fee6fcec43ceb4f390e11569a827223c2f9df20c9877c1a1d60fdf981ab49e", "fetched_at": "2026-08-28T04:04:12.296739+00:00", "kind": "readme", "missing": false, "url": "https://github.com/SimonBlanke/Gradient-Free-Optimizers"}, {"content_hash": "9ade8b5e0dd6065fa6e70792bfe4a49adffa8393ed39b6135180d918141fa07d", "fetched_at": "2026-08-29T12:15:03.003796+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/gradient-free-optimizers/json"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:12.296739+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:12.296739+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:12.296739+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T05:03:11.289445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f2fee6fcec43ceb4f390e11569a827223c2f9df20c9877c1a1d60fdf981ab49e", "fetched_at": "2026-08-28T04:04:12.296739+00:00", "kind": "readme", "missing": false, "url": "https://github.com/SimonBlanke/Gradient-Free-Optimizers"}, {"content_hash": "9ade8b5e0dd6065fa6e70792bfe4a49adffa8393ed39b6135180d918141fa07d", "fetched_at": "2026-08-29T12:15:03.003796+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/gradient-free-optimizers/json"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:12.296739+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:12.296739+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T05:03:11.289445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f2fee6fcec43ceb4f390e11569a827223c2f9df20c9877c1a1d60fdf981ab49e", "fetched_at": "2026-08-28T04:04:12.296739+00:00", "kind": "readme", "missing": false, "url": "https://github.com/SimonBlanke/Gradient-Free-Optimizers"}, {"content_hash": "9ade8b5e0dd6065fa6e70792bfe4a49adffa8393ed39b6135180d918141fa07d", "fetched_at": "2026-08-29T12:15:03.003796+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/gradient-free-optimizers/json"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T05:03:11.289445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f2fee6fcec43ceb4f390e11569a827223c2f9df20c9877c1a1d60fdf981ab49e", "fetched_at": "2026-08-28T04:04:12.296739+00:00", "kind": "readme", "missing": false, "url": "https://github.com/SimonBlanke/Gradient-Free-Optimizers"}, {"content_hash": "9ade8b5e0dd6065fa6e70792bfe4a49adffa8393ed39b6135180d918141fa07d", "fetched_at": "2026-08-29T12:15:03.003796+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/gradient-free-optimizers/json"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T05:03:11.289445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f2fee6fcec43ceb4f390e11569a827223c2f9df20c9877c1a1d60fdf981ab49e", "fetched_at": "2026-08-28T04:04:12.296739+00:00", "kind": "readme", "missing": false, "url": "https://github.com/SimonBlanke/Gradient-Free-Optimizers"}, {"content_hash": "9ade8b5e0dd6065fa6e70792bfe4a49adffa8393ed39b6135180d918141fa07d", "fetched_at": "2026-08-29T12:15:03.003796+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/gradient-free-optimizers/json"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T05:03:11.289445+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f2fee6fcec43ceb4f390e11569a827223c2f9df20c9877c1a1d60fdf981ab49e", "fetched_at": "2026-08-28T04:04:12.296739+00:00", "kind": "readme", "missing": false, "url": "https://github.com/SimonBlanke/Gradient-Free-Optimizers"}, {"content_hash": "9ade8b5e0dd6065fa6e70792bfe4a49adffa8393ed39b6135180d918141fa07d", "fetched_at": "2026-08-29T12:15:03.003796+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/gradient-free-optimizers/json"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 100, "rhythm": 84}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2342, "days_push": 12, "days_rel": 110, "gap_med": 24.5, "n_releases_24m": 11}, "score": 94, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}