Skip to content
@ReactiveBayes

ReactiveBayes

Open source software for reactive, efficient and scalable Bayesian inference

Reactive Bayes

Open source software for reactive, efficient and scalable Bayesian inference.

Welcome to the Reactive Bayes organization! We develop and maintain a suite of Julia packages for probabilistic programming and Bayesian inference with a focus on reactive and message-passing based inference algorithms.

graph TD
    %% Node definitions
    RxInfer["RxInfer.jl"]
    RxInferExamples["RxInferExamples.jl"]
    GraphPPL["GraphPPL.jl"]
    ReactiveMP["ReactiveMP.jl"]
    Rocket["Rocket.jl"]
    RxEnvironments["RxEnvironments.jl"]
    ExponentialFamily["ExponentialFamily.jl"]
    ExponentialFamilyProjection["ExponentialFamilyProjection.jl"]
    ExponentialFamilyManifolds["ExponentialFamilyManifolds.jl"]
    BayesBase["BayesBase.jl"]
    RxInferServer["RxInferServer.jl"]
    RxInferClient["RxInferClient.py"]

    %% Connections
    RxInfer --> GraphPPL
    RxInfer --> ReactiveMP
    RxInfer --> Rocket

    RxInferServer --> RxInfer
    RxInferClient --> RxInferServer
    RxEnvironments --> Rocket

    RxInferExamples --> RxInfer
    
    ReactiveMP --> ExponentialFamily
    ReactiveMP --> ExponentialFamilyProjection
    ReactiveMP --> Rocket
    
    ExponentialFamilyProjection --> ExponentialFamilyManifolds
    ExponentialFamilyProjection --> ExponentialFamily
    ExponentialFamilyManifolds --> ExponentialFamily
    
    ReactiveMP --> ExponentialFamily
    
    ExponentialFamily --> BayesBase
    ExponentialFamilyManifolds --> BayesBase
    ExponentialFamilyProjection --> BayesBase

    %% Node styling
    classDef default fill:#f0f4f8,stroke:#a0aec0,stroke-width:2px,rx:5px,text-decoration:none,color:#000;
    classDef rxi fill:#e6f0ff,stroke:#4a90e2,stroke-width:2px,rx:5px,text-decoration:none,color:#000;
    classDef core fill:#e3f2fd,stroke:#2196f3,stroke-width:2px,rx:5px,text-decoration:none,color:#000;
    
    %% Apply core styling to main packages
    class ReactiveMP,GraphPPL,Rocket,ExponentialFamily core;
    class RxInfer rxi;
Loading

Key Packages

  • RxInfer The central high-level probabilistic programming framework that enables reactive Bayesian inference on factor graphs through reactive message passing. It integrates tools including probabilistic graphical model definition and reactive message-based Bayesian inference.
  • ReactiveMP An efficient message passing-based Bayesian inference engine that implements the core algorithms and rules for performing high-performance, reactive message passing on factor graphs.
  • GraphPPL A probabilistic programming language for specifying probabilistic graphical models as factor graphs. It provides a high-level domain-specific language for model creation and works seamlessly with RxInfer for inference.
  • ExponentialFamily Extends Distributions.jl with comprehensive implementations of a collection of exponential family distributions.
  • Rocket A reactive programming framework providing core primitives for event handling and streaming for Julia, inspired by RxJS. It forms the backbone for reactive computations in the ecosystem.

Supporting Packages

  • ExponentialFamilyManifolds Provides manifold representations of exponential family distributions, enabling advanced optimization workflows with Manopt.jl. It facilitates efficient parameter tuning in natural parameter spaces.

  • ExponentialFamilyProjection Enables projection of (un-normalized) log probability density functions onto exponential family distributions. It uses optimization techniques from Manopt.jl and leverages ExponentialFamilyManifolds.jl.

  • BayesBase Defines and re-exports core methods and utilities for Bayesian computation. It provides a shared foundation for the Reactive Bayes ecosystem.

Application specific packages

Deployment and Integration

  • RxInferServer.jl A RESTful HTTP server that enables deploying RxInfer models as web services. It provides endpoints for model management, inference, and learning operations. The server is available at server.rxinfer.com.

  • RxInferClient.py A Python client library for interacting with RxInferServer. It provides a simple and intuitive interface to work with RxInfer models from Python, including model management, inference, and result processing. Documentation is available at lazydynamics.github.io/RxInferClient.py.

Our packages are designed to work together seamlessly to provide:

  • Reactive Inference: Real-time updates as new data arrives
  • Message Passing: Efficient inference through local computations
  • Scalability: Handle large models and datasets
  • Flexibility: Mix and match components for your specific needs
  • Deployment: Easy deployment of models as web services
  • Integration: Seamless integration with other programming languages

We welcome contributions from the community! Check out our individual package repositories for more details on how to get involved.

Popular repositories Loading

  1. RxInfer.jl RxInfer.jl Public

    Julia package for automated Bayesian inference on a factor graph with reactive message passing

    Jupyter Notebook 382 34

  2. Rocket.jl Rocket.jl Public

    Functional reactive programming extensions library for Julia

    Julia 218 22

  3. ReactiveMP.jl ReactiveMP.jl Public

    High-performance reactive message-passing based Bayesian inference engine

    Julia 116 15

  4. GraphPPL.jl GraphPPL.jl Public

    DSL for probabilistic models specification and probabilistic programming.

    Julia 44 5

  5. RxInferExamples.jl RxInferExamples.jl Public

    This repository contains examples for RxInfer.jl

    Makefile 24 11

  6. RxEnvironments.jl RxEnvironments.jl Public

    Reactive environments for self-learning agents

    Julia 22

Repositories

Showing 10 of 19 repositories
  • ExponentialFamily.jl Public

    ExponentialFamily.jl is a Julia package that extends the functionality of Distributions.jl by providing a collection of exponential family distributions and customized implementations.

    ReactiveBayes/ExponentialFamily.jl’s past year of commit activity
    Julia 14 MIT 4 4 (2 issues need help) 7 Updated Jan 13, 2026
  • RxInfer.jl Public

    Julia package for automated Bayesian inference on a factor graph with reactive message passing

    ReactiveBayes/RxInfer.jl’s past year of commit activity
    Jupyter Notebook 382 MIT 34 14 (2 issues need help) 6 Updated Jan 13, 2026
  • BayesBase.jl Public

    BayesBase is a package that serves as an umbrella, defining, exporting, and re-exporting methods essential for Bayesian statistics

    ReactiveBayes/BayesBase.jl’s past year of commit activity
    Julia 3 MIT 1 5 (2 issues need help) 0 Updated Jan 13, 2026
  • RxInferExamples.jl Public

    This repository contains examples for RxInfer.jl

    ReactiveBayes/RxInferExamples.jl’s past year of commit activity
    Makefile 24 MIT 11 2 5 Updated Jan 12, 2026
  • ReactiveMP.jl Public

    High-performance reactive message-passing based Bayesian inference engine

    ReactiveBayes/ReactiveMP.jl’s past year of commit activity
    Julia 116 MIT 15 14 (2 issues need help) 7 Updated Jan 10, 2026
  • ExponentialFamilyProjection.jl Public

    A library to project an arbitrary function to an exponential family member distribution with the manifold optimization

    ReactiveBayes/ExponentialFamilyProjection.jl’s past year of commit activity
    Julia 10 MIT 0 6 (2 issues need help) 4 Updated Dec 27, 2025
  • rxinfer-website Public

    Repository with content of RxInfer website for Hugo static site generator.

    ReactiveBayes/rxinfer-website’s past year of commit activity
    TypeScript 2 0 0 0 Updated Dec 18, 2025
  • GraphPPL.jl Public

    DSL for probabilistic models specification and probabilistic programming.

    ReactiveBayes/GraphPPL.jl’s past year of commit activity
    Julia 44 MIT 5 5 (1 issue needs help) 3 Updated Dec 16, 2025
  • Rocket.jl Public

    Functional reactive programming extensions library for Julia

    ReactiveBayes/Rocket.jl’s past year of commit activity
    Julia 218 MIT 22 1 0 Updated Dec 16, 2025
  • MessagePassingRulesBase.jl Public

    A base package that defines methods for message passing rules and factor nodes within ReactiveMP.jl

    ReactiveBayes/MessagePassingRulesBase.jl’s past year of commit activity
    Julia 0 MIT 0 0 6 Updated Dec 15, 2025

Most used topics

Loading…