Skip to main content

Vizier: Distributed service framework for blackbox optimization and research.

Project description

Open Source Vizier: Reliable and Flexible Black-Box Optimization.

PyPI version Continuous Integration (Core) Continuous Integration (Clients) Continuous Integration (Algorithms) Continuous Integration (Benchmarks) Continuous Integration (Docs)

Documentation | Installation | Citing Vizier

What is Open Source (OSS) Vizier?

OSS Vizier is a Python-based service for black-box optimization and research, based on Google Vizier, one of the first hyperparameter tuning services designed to work at scale.


OSS Vizier's distributed client-server system. Animation by Tom Small.

OSS Vizier's interface consists of three main APIs:

  • User API: Allows a user to setup an OSS Vizier Server, which can host black-box optimization algorithms to serve multiple clients simultaneously in a fault-tolerant manner to tune their objective functions.
  • Developer API: Defines abstractions and utilities for implementing new optimization algorithms for research and to be hosted in the service.
  • Benchmarking API: A wide collection of objective functions and methods to benchmark and compare algorithms.

Additionally, it contains advanced API for:

Please see OSS Vizier's ReadTheDocs documentation for detailed information.

Installation

To install the core API, the simplest way is to run:

pip install google-vizier

which will install the necessary dependencies from requirements.txt.

For full installation (to support all algorithms and benchmarks), run:

pip install google-vizier[extra]

which will also install the dependencies:

  • requirements-jax.txt: Jax libraries shared by both algorithms and benchmarks.
  • requirements-tf.txt: Tensorflow libraries shared by both algorithms and benchmarks.
  • requirements-algorithms.txt: Additional repositories (e.g. Emukit) for algorithms.
  • requirements-benchmarks.txt: Additional repositories (e.g. NASBENCH-201) for benchmarks.

Check if all unit tests work by running run_tests.sh. OSS Vizier requires Python 3.10+, while client-only packages require Python 3.7+.

Citing Vizier

If you found this code useful, please consider citing the OSS Vizier paper as well as the Google Vizier paper. Thanks!

@inproceedings{oss_vizier,
  author    = {Xingyou Song and
               Sagi Perel and
               Chansoo Lee and
               Greg Kochanski and
               Daniel Golovin},
  title     = {Open Source Vizier: Distributed Infrastructure and API for Reliable and Flexible Black-box Optimization},
  booktitle = {Automated Machine Learning Conference, Systems Track (AutoML-Conf Systems)},
  year      = {2022},
}
@inproceedings{google_vizier,
  author    = {Daniel Golovin and
               Benjamin Solnik and
               Subhodeep Moitra and
               Greg Kochanski and
               John Karro and
               D. Sculley},
  title     = {Google Vizier: {A} Service for Black-Box Optimization},
  booktitle = {Proceedings of the 23rd {ACM} {SIGKDD} International Conference on
               Knowledge Discovery and Data Mining, Halifax, NS, Canada, August 13
               - 17, 2017},
  pages     = {1487--1495},
  publisher = {{ACM}},
  year      = {2017},
  url       = {https://doi.org/10.1145/3097983.3098043},
  doi       = {10.1145/3097983.3098043},
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

google-vizier-0.0.19.tar.gz (285.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

google_vizier-0.0.19-py3-none-any.whl (440.7 kB view details)

Uploaded Python 3

File details

Details for the file google-vizier-0.0.19.tar.gz.

File metadata

  • Download URL: google-vizier-0.0.19.tar.gz
  • Upload date:
  • Size: 285.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for google-vizier-0.0.19.tar.gz
Algorithm Hash digest
SHA256 1682946ed317f03263a7f0c40957465b86c4cbc599f72e4466dff42a786adb59
MD5 6c164ab5d05e4dfb1a7f2cabedb7d786
BLAKE2b-256 a3bf08d3dd20ee78ad317104d84b7ecd19df030bbd553da109395b3116ecec39

See more details on using hashes here.

File details

Details for the file google_vizier-0.0.19-py3-none-any.whl.

File metadata

  • Download URL: google_vizier-0.0.19-py3-none-any.whl
  • Upload date:
  • Size: 440.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for google_vizier-0.0.19-py3-none-any.whl
Algorithm Hash digest
SHA256 111c6ace8b4be04a23788b3224793853674780c04464eb7d69e95be1df6c024e
MD5 8bc27d618f4fe86e4959d8c56288762a
BLAKE2b-256 3525162ad5bb5a479fb1dd91947f976f337b4a03816320e270cc82b7534b0f10

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page