extropic-ai/thrml

Thermodynamic Hypergraphical Model Library in JAX

What it solves

THRML is designed to make the creation and sampling of probabilistic graphical models (PGMs) more efficient. It specifically addresses the difficulty of implementing high-performance sampling on sparse, heterogeneous graphs, providing a bridge for researchers to prototype models that can eventually run on specialized energy-efficient hardware.

How it works

Built as a JAX library, THRML compiles factor-based interactions into a compact global state representation. This approach minimizes Python loops and leverages JAX's array-level parallelism to accelerate block Gibbs sampling and energy-based models (EBMs) on GPUs.

Who it’s for

It is intended for researchers and developers working with probabilistic graphical models, energy-based models, and those experimenting with hardware-accelerated sampling.

Highlights

  • Blocked Gibbs sampling: Optimized for probabilistic graphical models.
  • JAX-powered: Uses GPU acceleration and array-level parallelism.
  • Flexible node states: Supports arbitrary PyTree node states and heterogeneous graphical models.
  • Hardware readiness: Provides a software environment to prototype for future energy-efficient sampling hardware from Extropic.

Related

  • Project
  • Project
  • Project
  • Project
  • Project