Skip to content
Back to skills

Bayesian Optimization

ASecurity

"Route BayesianOptimization package tasks for black-box Bayesian

  • 247 stars
  • 0 votes
  • 0 copies
  • 2 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…