triton-inference-server / fil_backend

FIL backend for the Triton Inference Server
Apache License 2.0
68 stars 35 forks source link

Issue during load xgboost model from xgboost.json #378

Closed gawsoftpl closed 5 months ago

gawsoftpl commented 8 months ago

I received error when I want to parse xgboost.json model

docker version: nvidia/tritonserver:23.12-py3

UNAVAILABLE: Unknown: [22:10:17] /rapids_triton/bui | | | | ld/_deps/treelite-src/src/frontend/xgboost_json.cc: | | | | 674: Provided JSON could not be parsed as XGBoost m | | | | odel. Parsing error at offset 737352: Terminate par | | | | sing due to Handler error. | | | | num_class":"0","num_feature":"37","num_target":"4"},"objective":{"name":"binary:logistic","regloss

dbz10 commented 7 months ago

Are you using a compatible version of xgboost? https://github.com/triton-inference-server/fil_backend/blob/main/docs/model_support.md#version-compatibility In particular, it looks like more recent versions of xgboost may not be supported yet. I vaguely remember encountering a similar error when trying to load a model saved with xgboost >= 2.0, though I don't remember if it was exactly the same.

susnato commented 7 months ago

How did you solve that issue? @dbz10

gawsoftpl commented 7 months ago

I train model with xgboost==1.7.2

dbz10 commented 7 months ago

@gawsoftpl take a look at the page I linked above. As far as it states, for recent versions of triton the supported xgboost versions are <1.7 (at least at the time of writing this comment).

Though I'm not sure if that information is completely up to date, perhaps the most recent triton versions support higher xgboost version, but it could be worth a try. It looks like a currently open PR is updating the information on that page https://github.com/triton-inference-server/fil_backend/pull/383

@susnato for my particular issue, it was solved by downgrading xgboost to 1.6.2. But I can't guarantee my issue was the same one as OP...

hcho3 commented 5 months ago

Closing this issue, as the latest version of the FIL backend supports models from XGBoost 2.0. Feel free to re-open if issues persist.