A LLVM-based compiler for LightGBM decision trees.
Ingests model.txt
files from trained LightGBM Models and
converts them into optimized machine code.
- Easy of use: The interface of
lleaves.Model
is a subset ofLightGBM.Booster
. - Speed: 10x performance increase compared to LightGBM.
- Few dependencies:
llvmlite
andnumpy
. No C/C++ compiler necessary.
Some LightGBM features are not yet implemented in LLeaVes:
- Multiclass prediction
- Multithreading
- Linear Models
benchmark script. LLeaVes has no support for MT so far and is running single-threaded mode only.
conda env create
conda activate lleaves
pre-commit install
pytest
- Enable compiler optimization passes
- Figure out why ONNX won't convert the airlines categorical model
- Figure out why categorical prediction is so slow with LLeaVes