You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PPX is a cross-platform Probabilistic Programming eXecution protocol and API based on flatbuffers. It is intended as an open interoperability protocol between models and inference engines implemented in different probabilistic programming languages.
Probabilistic programming is about the execution probabilistic models under the control of inference engines, and PPX allows the model and the inference engine to be
implemented in different programming languages and
executed in separate processes and on separate machines across networks.
PPX is inspired by ONNX, the Open Neural Network Exchange project allowing interoperability between major deep learning frameworks.
Supported languages
We provide PPX compiled to all programming languages officially supported by flatbuffers. These are:
C++
C#
Dart
Go
Java
Kotlin
Lobster
Lua
PHP
Python
Rust
Swift
TypeScript
Build
In order to recompile PPX to all supported languages, you can clone this repository and run the flatbuffers compiler in a Docker container as follows.