Evaluation library is the fastest way for inference a model CatBoost. The library provides a C API.
The C API interface can be accessed from any programming language (example Golang + Cgo).
Prebuilt shared library (*.so
| *.dylib
) artifacts are available of the releases page on GitHub CatBoost project.
The shared library:
- Should be in
/usr/local/lib
- Or set path in environment
CATBOOST_LIBRARY_PATH
- Or set path manual in source code
SetSharedLibraryPath
(see example below)
For more information, see https://catboost.ai/en/docs/concepts/c-plus-plus-api_dynamic-c-pluplus-wrapper.
Previous versions | v1.2.2 | v1.2.3 | v1.2.4 | v1.2.5 | v1.2.6 | v1.2.7 |
---|---|---|---|---|---|---|
🚫 (not testing) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Supported functionality (https://catboost.ai/en/docs/concepts/python-quickstart):
- CatBoostRegressor ✅
- CatBoostClassifier ✅
- CatBoostRanker ✅
Supported prediction types (https://github.com/catboost/catboost/blob/master/catboost/libs/model/enums.h):
- RawFormulaVal ✅
- Probability ✅
- Class ✅
- RMSEWithUncertainty ✅
- Exponent ✅
Supported operating system and architectures:
Operating system | CPU architectures | GPU support using CUDA |
---|---|---|
MacOS | ✅ (x86_64) | 🚫 |
Linux | ✅ (x86_64) | ✅ (x86_64) |
Windows 10 and 11 | 🚫 | 🚫 |
If you use GPU - only device 0 is supported for now. More details: catboost/catboost#2774.
Supported Type:
- Numeric ✅
- Categorical ✅ (https://catboost.ai/en/docs/features/categorical-features)
- Text 🚫 (https://catboost.ai/en/docs/features/text-features)
- Embeddings 🚫 (https://catboost.ai/en/docs/features/embeddings-features)
- Install catboost-cgo:
go get github.com/mirecl/catboost-cgo
-
Download CatBoost shared library from release page: https://github.com/catboost/catboost/releases
-
Save CatBoost shared library in
/usr/local/lib
or manual set path:
import (
cb "github.com/mirecl/catboost-cgo/catboost"
)
func main(){
cb.SetSharedLibraryPath(...)
}
- See examples of use