Skip to content
Back to skills

Bayesian Optimization

ASecurity

"Route BayesianOptimization package tasks for black-box Bayesian

  • 247 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 8, 2026
toolspythongobashapibackend

Works with

  • cli
  • api

Security analysis

A96/100
  • mediumInstalls packages at runtime which could introduce malicious dependencies

Pro scans all 20 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill bayesian-optimization --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Bayesian Optimization?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Bayesian Optimization
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-bayesian-optimization/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-bayesian-optimization)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: bayesian-optimization
description: "Route BayesianOptimization package tasks for black-box Bayesian
  optimization, HPO, acquisition functions, constraints, typed domains, domain
  reduction, and checkout maintenance."
disable-model-invocation: true
metadata:
  disco-role: operating
license: MIT
---

# BayesianOptimization Repo Skill

Use this repo skill when a user asks about the `bayesian-optimization` package,
its `bayes_opt` import, Gaussian-process Bayesian optimization, black-box
function maximization, small hyperparameter optimization, acquisition functions,
constraints, typed/categorical parameters, sequential domain reduction, or
maintaining this package's source checkout.

This skill is self-contained. Do not send future agents to original repository
notebooks or examples for package usage; use the bundled references and scripts
below. Checkout-only test and docs commands are confined to the maintainer
sub-skill.

## Install and import baseline

Package users normally install one of:

```bash
pip install bayesian-optimization
conda install -c conda-forge bayesian-optimization
```

Minimal import check:

```python
from bayes_opt import BayesianOptimization


def objective(x, y):
    return -x**2 - (y - 1.0) ** 2 + 1.0

optimizer = BayesianOptimization(
    f=objective,
    pbounds={"x": (-2.0, 2.0), "y": (-3.0, 3.0)},
    random_state=1,
    verbose=0,
)
optimizer.maximize(init_points=1, n_iter=1)
assert optimizer.max is not None
```

For an environment-level diagnostic, run
[`scripts/check_env.py`](scripts/check_env.py). Add `--run-subskill-smokes` when
you want it to execute the bundled tiny smoke helpers as well.

## Route map

### Core optimizer and HPO workflows

Read [`sub-skills/optimizer-workflows/SKILL.md`](sub-skills/optimizer-workflows/SKILL.md)
when the task involves:

- creating `BayesianOptimization(f=..., pbounds=...)`;
- `maximize`, `max`, `res`, `probe`, `register`, `suggest`, or `random_sample`;
- manual ask-tell loops for external evaluations;
- saving/loading JSON state, changing bounds, tuning GP parameters, or using
  `predict`;
- converting a loss into a maximization target;
- small scikit-learn HPO recipes and validation.

### Acquisition control

Read [`sub-skills/acquisition-control/SKILL.md`](sub-skills/acquisition-control/SKILL.md)
when the task involves:

- UCB, Expected Improvement, Probability of Improvement, Constant Liar, or
  GPHedge;
- choosing exploration/exploitation settings such as `kappa`, `xi`,
  `exploration_decay`, and `exploration_decay_delay`;
- lower-level acquisition `suggest(gp, target_space, n_random, n_smart, ...)`;
- asynchronous/batch-like suggestions, acquisition portfolios, or custom
  `AcquisitionFunction` subclasses;
- acquisition errors such as empty target spaces, invalid `xi`/`kappa`, stale
  `UtilityFunction` snippets, and constraint incompatibility.

### Advanced domain features

Read [`sub-skills/advanced-domain-features/SKILL.md`](sub-skills/advanced-domain-features/SKILL.md)
when the task involves:

- SciPy `NonlinearConstraint` and `ConstraintModel`;
- known constrained observations with `constraint_value`;
- integer bounds `(low, high, int)`, categorical bounds, or custom
  `BayesParameter` subclasses;
- `TargetSpace` array/dict conversion, masks, and typed kernel transforms;
- `SequentialDomainReductionTransformer`, `minimum_window`, and all-float
  domain reduction limitations.

### Repository maintenance

Read [`sub-skills/repo-maintenance/SKILL.md`](sub-skills/repo-maintenance/SKILL.md)
only when the user is editing or validating a `bayesian-optimization` source
checkout. It covers focused pytest selection, Ruff/lint commands, notebook/docs
checks, CI Python/NumPy matrix behavior, dependency markers, build validation,
and release/publish boundaries. Do not use it for ordinary package usage.

## Cross-cutting references

- [`references/troubleshooting.md`](references/troubleshooting.md): install,
  import, dependency marker, no-CLI, old API, and route-selection failures that
  cut across sub-skills.
- [`references/repo-provenance.md`](references/repo-provenance.md): source
  commit, package version, evidence paths, and refresh baseline for this skill.
- [`references/repo-routing-metadata.json`](references/repo-routing-metadata.json):
  structured metadata consumed by DisCo's managed repo-skills router importer.

## Quick decisions

- The package maximizes. If the real metric is a loss, return `-loss`.
- `pbounds` names must match objective and constraint keyword arguments.
- No GPU backend is required for selected package workflows; this is a CPU
  scientific Python package built on NumPy, SciPy, and scikit-learn.
- There is no public package CLI. Use Python APIs and bundled diagnostic
  scripts.
- Avoid old code that calls `optimizer.suggest(UtilityFunction(...))`; current
  v3.3.x optimizer-level `suggest()` takes no acquisition argument. Pass an
  acquisition instance into the optimizer constructor instead.
- Use dict parameters for clarity, especially with typed or categorical
  domains. Raw arrays follow `pbounds` insertion order and expanded internal
  dimensions.

## Handoff checklist

Before answering a user or running a diagnostic, identify:

1. Is this package usage or source-checkout maintenance?
2. Is the objective unconstrained or constrained?
3. Are parameters ordinary floats, typed integers/categories, or custom domain
   objects?
4. Is acquisition selection part of the task, or can the optimizer default be
   used?
5. Does the requested check require only CPU runtime dependencies, or a broader
   development environment for notebooks/docs/lint?

Then load the smallest matching sub-skill and use its bundled references and
scripts.

Files in this skill

  • SKILL.md5.6 KB
  • references/repo-provenance.md2.3 KB
  • references/repo-routing-metadata.json430 B
  • references/troubleshooting.md5.5 KB
  • scripts/check_env.py5.7 KB
  • sub-skills/acquisition-control/SKILL.md3.7 KB
  • sub-skills/acquisition-control/references/api-reference.md9.8 KB
  • sub-skills/acquisition-control/references/troubleshooting.md9 KB
  • sub-skills/acquisition-control/references/workflows.md10 KB
  • sub-skills/acquisition-control/scripts/acquisition_probe.py8.7 KB
  • sub-skills/advanced-domain-features/SKILL.md4.1 KB
  • sub-skills/advanced-domain-features/references/constraints.md7.3 KB
  • sub-skills/advanced-domain-features/references/domain-reduction.md7 KB
  • sub-skills/advanced-domain-features/references/parameter-types.md9.5 KB
  • sub-skills/advanced-domain-features/references/troubleshooting.md8.7 KB
  • sub-skills/advanced-domain-features/scripts/advanced_features_smoke.py11 KB
  • sub-skills/optimizer-workflows/SKILL.md6.5 KB
  • sub-skills/optimizer-workflows/references/api-reference.md11.2 KB
  • sub-skills/optimizer-workflows/references/troubleshooting.md9.1 KB
  • sub-skills/optimizer-workflows/references/workflows.md11 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.