|Original author(s)||PyMC3 Development Team|
|Initial release||May 4, 2013|
3.11.4 / August 20, 2021
|Operating system||Unix-like, Mac OS X, Microsoft Windows|
|Platform||Intel x86 – 32-bit, x64|
|License||Apache License, Version 2.0|
PyMC3 is a Python package for Bayesian statistical modeling and probabilistic machine learning which focuses on advanced Markov chain Monte Carlo and variational fitting algorithms. It is a rewrite from scratch of the previous version of the PyMC software. Unlike PyMC2, which had used Fortran extensions for performing computations, PyMC3 relies on Theano for automatic differentiation and also for computation optimization and dynamic C compilation. From version 3.8 PyMC3 relies on ArviZ to handle plotting, diagnostics, and statistical checks. PyMC3 and Stan are the two most popular probabilistic programming tools. PyMC3 is an open source project, developed by the community and fiscally sponsored by NumFocus.
PyMC3 has been used to solve inference problems in several scientific domains, including astronomy, epidemiology, molecular biology, crystallography,  chemistry, ecology and psychology. Previous versions of PyMC were also used widely, for example in climate science, public health, neuroscience, and parasitology. 
After Theano announced plans to discontinue development in 2017, the PyMC3 team evaluated TensorFlow Probability as a computational backend, but decided in 2020 to take over the development of Theano. As of January 2021, large parts of the Theano-PyMC codebase were refactored and compilation through JAX was added. The PyMC team plans to release the revised computational backend under a new name and continue the development of PyMC3.
PyMC3 implements non-gradient-based and gradient-based Markov chain Monte Carlo (MCMC) algorithms for Bayesian inference and stochastic, gradient-based variational Bayesian methods for approximate Bayesian inference.