MCPcopy Index your code
hub / github.com/pyro-ppl/pyro

github.com/pyro-ppl/pyro @1.9.1 sqlite

repository ↗ · DeepWiki ↗ · release 1.9.1 ↗
6,273 symbols 32,333 edges 629 files 1,531 documented · 24%
README


Build Status Coverage Status Latest Version Documentation Status CII Best Practices

Getting Started | Documentation | Community | Contributing

Pyro is a flexible, scalable deep probabilistic programming library built on PyTorch. Notably, it was designed with these principles in mind:

  • Universal: Pyro is a universal PPL - it can represent any computable probability distribution.
  • Scalable: Pyro scales to large data sets with little overhead compared to hand-written code.
  • Minimal: Pyro is agile and maintainable. It is implemented with a small core of powerful, composable abstractions.
  • Flexible: Pyro aims for automation when you want it, control when you need it. This is accomplished through high-level abstractions to express generative and inference models, while allowing experts easy-access to customize inference.

Pyro was originally developed at Uber AI and is now actively maintained by community contributors, including a dedicated team at the Broad Institute. In 2019, Pyro became a project of the Linux Foundation, a neutral space for collaboration on open source software, open standards, open data, and open hardware.

For more information about the high level motivation for Pyro, check out our launch blog post. For additional blog posts, check out work on experimental design and time-to-event modeling in Pyro.

Installing

Installing a stable Pyro release

Install using pip:

pip install pyro-ppl

Install from source:

git clone git@github.com:pyro-ppl/pyro.git
cd pyro
git checkout master  # master is pinned to the latest release
pip install .

Install with extra packages:

To install the dependencies required to run the probabilistic models included in the examples/tutorials directories, please use the following command:

pip install pyro-ppl[extras] 

Make sure that the models come from the same release version of the Pyro source code as you have installed.

Installing Pyro dev branch

For recent features you can install Pyro from source.

Install Pyro using pip:

pip install git+https://github.com/pyro-ppl/pyro.git

or, with the extras dependency to run the probabilistic models included in the examples/tutorials directories:

pip install git+https://github.com/pyro-ppl/pyro.git#egg=project[extras]

Install Pyro from source:

git clone https://github.com/pyro-ppl/pyro
cd pyro
pip install .  # pip install .[extras] for running models in examples/tutorials

Running Pyro from a Docker Container

Refer to the instructions here.

Citation

If you use Pyro, please consider citing:

@article{bingham2019pyro,
  author    = {Eli Bingham and
               Jonathan P. Chen and
               Martin Jankowiak and
               Fritz Obermeyer and
               Neeraj Pradhan and
               Theofanis Karaletsos and
               Rohit Singh and
               Paul A. Szerlip and
               Paul Horsfall and
               Noah D. Goodman},
  title     = {Pyro: Deep Universal Probabilistic Programming},
  journal   = {J. Mach. Learn. Res.},
  volume    = {20},
  pages     = {28:1--28:6},
  year      = {2019},
  url       = {http://jmlr.org/papers/v20/18-403.html}
}

Core symbols most depended-on inside this repo

plate
called by 842
pyro/contrib/easyguide/easyguide.py
assert_equal
called by 736
tests/common.py
size
called by 515
pyro/contrib/examples/scanvi_data.py
to_event
called by 429
pyro/distributions/torch_distribution.py
set
called by 426
pyro/settings.py
items
called by 423
pyro/params/param_store.py
trace
called by 392
pyro/poutine/trace_messenger.py
exp
called by 359
pyro/contrib/randomvariable/random_variable.py

Shape

Method 2,796
Function 2,707
Class 739
Route 31

Languages

Python100%

Modules by API surface

tests/infer/test_valid_models.py118 symbols
tests/poutine/test_poutines.py106 symbols
tests/infer/test_enum.py94 symbols
tests/nn/test_module.py83 symbols
pyro/infer/autoguide/guides.py81 symbols
tests/infer/test_autoguide.py78 symbols
tests/infer/test_inference.py77 symbols
pyro/contrib/epidemiology/models.py63 symbols
tests/distributions/test_transforms.py60 symbols
examples/rsa/semantic_parsing.py57 symbols
pyro/contrib/cevae/__init__.py53 symbols
pyro/distributions/hmm.py50 symbols

Dependencies from manifests, versioned

graphviz0.8 · 1×
numpy1.7 · 1×
observations0.1.4 · 1×
opt_einsum2.3.2 · 1×
pyro-api0.1.1 · 1×
sphinx4.2.0 · 1×
sphinx-rtd-theme1.0.0 · 1×
tqdm4.36 · 1×

For agents

$ claude mcp add pyro \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact