Skip to main content

Probabilistic Programming Language for Bayesian Inference

Project description

Bean Machine

Lint Tests PyPI

Overview

Bean Machine is a probabilistic programming language for inference over statistical models written in the Python language using a declarative syntax. Bean Machine is built on top of PyTorch and Bean Machine Graph, a custom C++ backend. Check out our tutorials and Quick Start to get started!

Installation

Bean Machine supports Python 3.7-3.9 and PyTorch 1.10.

Install the Latest Release with Pip

pip install beanmachine

Install from Source

To download the latest Bean Machine source code from GitHub:

git clone https://github.com/facebookresearch/beanmachine.git
cd beanmachine

Then, you can choose from any of the following installation options.

Anaconda

We recommend using conda to manage the virtual environment and install the necessary build dependencies.

conda create -n {env name} python=3.7; conda activate {env name}
conda install boost eigen
pip install .

Docker

docker build -t beanmachine .
docker run -it beanmachine:latest bash

Validate Installation

If you would like to run the builtin unit tests:

# install pytest 7.0 from GitHub
pip install git+https://github.com/pytest-dev/pytest.git@7.0.0.dev0
pytest .

License

Bean Machine is MIT licensed, as found in the LICENSE file.

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

beanmachine-0.1.1.tar.gz (372.2 kB view details)

Uploaded Source

Built Distributions

beanmachine-0.1.1-cp39-cp39-win_amd64.whl (710.6 kB view details)

Uploaded CPython 3.9 Windows x86-64

beanmachine-0.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (963.3 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

beanmachine-0.1.1-cp39-cp39-macosx_10_14_x86_64.whl (840.2 kB view details)

Uploaded CPython 3.9 macOS 10.14+ x86-64

beanmachine-0.1.1-cp38-cp38-win_amd64.whl (714.9 kB view details)

Uploaded CPython 3.8 Windows x86-64

beanmachine-0.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (963.2 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

beanmachine-0.1.1-cp38-cp38-macosx_10_14_x86_64.whl (839.6 kB view details)

Uploaded CPython 3.8 macOS 10.14+ x86-64

beanmachine-0.1.1-cp37-cp37m-win_amd64.whl (714.3 kB view details)

Uploaded CPython 3.7m Windows x86-64

beanmachine-0.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (966.1 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

beanmachine-0.1.1-cp37-cp37m-macosx_10_14_x86_64.whl (832.7 kB view details)

Uploaded CPython 3.7m macOS 10.14+ x86-64

File details

Details for the file beanmachine-0.1.1.tar.gz.

File metadata

  • Download URL: beanmachine-0.1.1.tar.gz
  • Upload date:
  • Size: 372.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

File hashes

Hashes for beanmachine-0.1.1.tar.gz
Algorithm Hash digest
SHA256 36c7d4fafe45cffa195ac7f6eaaa588b05df20d6ababe5900dbc6ae3321980dd
MD5 c826760b190d48ef80e7f38ce74743b4
BLAKE2b-256 a175b0a8392c4234a69e5cfb7937a7cc48d1ec9722aed0ea01768fe025f32139

See more details on using hashes here.

File details

Details for the file beanmachine-0.1.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: beanmachine-0.1.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 710.6 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

File hashes

Hashes for beanmachine-0.1.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 b8c143a5ea343c985ee1d8d087c37b43171557d5a1c8a532ca1e5cdbc4063b28
MD5 4636fce48546433dbed95e3d9af304c2
BLAKE2b-256 c02b29024b7767d9934dfcf8f02ea3f6bcc76c72c07f2466faca5e4afba7b9db

See more details on using hashes here.

File details

Details for the file beanmachine-0.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for beanmachine-0.1.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 387512aaeea20cefaa918d2a49796bfcee910381611c0c12f722c6dcc18285de
MD5 d6c162acf6e7784ba9fb1354e21b5f47
BLAKE2b-256 c7c6c13fc90e0822a997dcdb585137093a55be93ce45fd10354cab30ad267423

See more details on using hashes here.

File details

Details for the file beanmachine-0.1.1-cp39-cp39-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: beanmachine-0.1.1-cp39-cp39-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 840.2 kB
  • Tags: CPython 3.9, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

File hashes

Hashes for beanmachine-0.1.1-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 97846f17d3ba8915e70f7291b6b890d42c29641d7fc93b3de37217acb010760a
MD5 4d8e4457011d698856400b99a9c44436
BLAKE2b-256 82941a705ef350670a522f3b0e3842201dfa319d5b46b096eb477403a668b831

See more details on using hashes here.

File details

Details for the file beanmachine-0.1.1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: beanmachine-0.1.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 714.9 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

File hashes

Hashes for beanmachine-0.1.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 b2a631ff69e30a5b4034205bf67cfee4fa25285bd3db2cc0c5ddced09dc8ca24
MD5 c3e2235174e2ed785c0888f830980bd0
BLAKE2b-256 924e7fb256eac1b5e2d3cb62e3da025a795f4348abe2458828324dd545bcc0df

See more details on using hashes here.

File details

Details for the file beanmachine-0.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for beanmachine-0.1.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1326a0f4f603530cd50792e39b0f09f60b1ed68ee499bab2073683f80bf23e72
MD5 bb0cfa147966d5bafc3e9bed78286132
BLAKE2b-256 dbf9783c99d34b641a1a1eb7e6d3c2f861d29e87373cb126b5f322ed76216a92

See more details on using hashes here.

File details

Details for the file beanmachine-0.1.1-cp38-cp38-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: beanmachine-0.1.1-cp38-cp38-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 839.6 kB
  • Tags: CPython 3.8, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

File hashes

Hashes for beanmachine-0.1.1-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 0a96455864ddd33ed3df0ffb6cf31249199024cefad86238fa74e71a943b0cac
MD5 387d3daebf9069037ea854086ce6f221
BLAKE2b-256 f565fb766724c0c613aaf9598ee15400e3d596175d71c65fbfc1b85e17a67f31

See more details on using hashes here.

File details

Details for the file beanmachine-0.1.1-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: beanmachine-0.1.1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 714.3 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

File hashes

Hashes for beanmachine-0.1.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 20e16d1f03b7f4b4792e35bb96832c2d1adba0495300e1f8e0360f697529cdfd
MD5 fe8fa44e90e956d18d1ad096c4aae52b
BLAKE2b-256 a9954d6db2bb5dcc8955bedfa79d9824ce0be7b4573777c5f34dd0da9b83b474

See more details on using hashes here.

File details

Details for the file beanmachine-0.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for beanmachine-0.1.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 418aca73e91762b3235a12fea5ebd1dddb9d0cc7304fe3d08016de3c4438e4a3
MD5 5e981c03b2f601db0b26c40e36c3c9f4
BLAKE2b-256 50bd1cf16000f2a731b9ec107127bd096e60153cff4163604ee10ebfeff668db

See more details on using hashes here.

File details

Details for the file beanmachine-0.1.1-cp37-cp37m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: beanmachine-0.1.1-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 832.7 kB
  • Tags: CPython 3.7m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.10

File hashes

Hashes for beanmachine-0.1.1-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 3804ade72f7a4231eed4f0b70191b5df32b28860b7a89dd25776c4ff247a1335
MD5 81f4c99a973a01a59979890914bdd210
BLAKE2b-256 ef1a95686c55c5e6cb1edd4e510081f5e96301230db1cc5c89ccd3e713731d29

See more details on using hashes here.

Supported by

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