Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/iqiyi/xgboost-serving
A flexible, high-performance serving system for machine learning models
https://github.com/iqiyi/xgboost-serving
Last synced: 4 days ago
JSON representation
A flexible, high-performance serving system for machine learning models
- Host: GitHub
- URL: https://github.com/iqiyi/xgboost-serving
- Owner: iqiyi
- License: apache-2.0
- Created: 2021-06-23T09:51:16.000Z (over 3 years ago)
- Default Branch: xgboost
- Last Pushed: 2021-11-24T03:07:18.000Z (almost 3 years ago)
- Last Synced: 2023-11-07T18:12:34.463Z (about 1 year ago)
- Language: C++
- Homepage:
- Size: 6 MB
- Stars: 138
- Watchers: 10
- Forks: 18
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
[![Build](https://github.com/hzy001/xgboost-serving/actions/workflows/build.yaml/badge.svg)](https://github.com/hzy001/xgboost-serving/actions/workflows/build.yaml)
[![Test](https://github.com/hzy001/xgboost-serving/actions/workflows/test.yaml/badge.svg)](https://github.com/hzy001/xgboost-serving/actions/workflows/test.yaml)# XGBoost Serving
This is a fork of TensorFlow Serving, extended with the support for [XGBoost](https://github.com/dmlc/xgboost), [alphaFM](https://github.com/CastellanZhang/alphaFM) and [alphaFM_softmax](https://github.com/CastellanZhang/alphaFM_softmax) frameworks. For more information about TensorFlow Serving, switch to the `master` branch or visit the [TensorFlow Serving website](https://github.com/tensorflow/serving).
----
XGBoost Serving is a flexible, high-performance serving system for
XGBoost && FM models, designed for production environments. It deals with
the *inference* aspect of XGBoost && FM models, taking models after *training* and
managing their lifetimes, providing clients with versioned access via
a high-performance, reference-counted lookup table.
XGBoost Serving derives from TensorFlow Serving and is used widely inside iQIYI.To note a few features:
- Can serve multiple models, or multiple versions of the same model
simultaneously
- Exposes gRPC inference endpoints
- Allows deployment of new model versions without changing any client code
- Supports canarying new versions and A/B testing experimental models
- Adds minimal latency to inference time due to efficient, low-overhead
implementation
- Supports XGBoost servables, XGBoost && FM servables and XGBoost && alphaFM_Softmax servables
- Supports computation latency distribution statistics## Documentation
### Set up
The easiest and most straight-forward way of building and using XGBoost Serving
is with Docker images. We highly recommend this route unless you have specific
needs that are not addressed by running in a container.* [Build XGBoost Serving from Source](tensorflow_serving/docs/en/building.md)
* [Build XGBoost Serving from Source with Docker](tensorflow_serving/docs/en/building_with_docker.md)*(Recommended)*### Use
#### Export your XGBoost && FM model
In order to serve a XGBoost && FM model, simply export your XGBoot model, leaf
mapping and FM model.Please refer to [Export XGBoost && FM model](tensorflow_serving/docs/en/export_model.md)
for details about the models's specification and how to export XGBoost && FM model.#### Configure and Use XGBoost Serving
* [Follow a tutorial on Serving XGBoost && FM models](tensorflow_serving/docs/en/serving_basic.md)
* [Configure XGBoost Serving to make it fit your serving use case](tensorflow_serving/docs/en/serving_config.md)### Extend
XGBoost Serving derives from TensorFlow Serving and thanks to Tensorflow Serving's highly modular architecture. You can use some parts
individually and/or extend it to serve new use cases.* [Ensure you are familiar with building Tensorflow Serving](tensorflow_serving/g3doc/building_with_docker.md)
* [Learn about Tensorflow Serving's architecture](tensorflow_serving/g3doc/architecture.md)
* [Explore the Tensorflow Serving C++ API reference](https://www.tensorflow.org/tfx/serving/api_docs/cc/)
* [Create a new type of Servable](tensorflow_serving/g3doc/custom_servable.md)
* [Create a custom Source of Servable versions](tensorflow_serving/g3doc/custom_source.md)## Contribute
**If you'd like to contribute to XGBoost Serving, be sure to review the
[contribution guidelines](CONTRIBUTING.md).**## Feedback and Getting involved
* Report bugs, ask questions or give suggestions by [Github
Issues](https://github.com/iqiyi/xgboost-serving/issues)