I am trying to deploy a model to a Managed Online Endpoint using:
blue_deployment = ManagedOnlineDeployment(name='blue',
endpoint_name='diabetes-online-endpoint',
model=loaded_model,
)
ml_client.online_deployments.begin_create_or_update(blue_deployment, local=True)
To which I am getting below error:
MlException: ['Non-string passed to RegistryStr for model', 'Non-string passed to ArmStr for model', "'XGBClassifier' object has no attribute '_intellectual_property'"]
I've loaded an already registered model in the workspace using:
loaded_model = mlflow.xgboost.load_model('models:/diabetes-prediction/1')
The reason I've loaded using xgboost
flavour is because it's an XGBoost classifier model and the MLmodel
too says so:
artifact_path: model
flavors:
python_function:
data: model.xgb
env:
conda: conda.yaml
virtualenv: python_env.yaml
loader_module: mlflow.xgboost
python_version: 3.8.20
xgboost:
code: null
data: model.xgb
model_class: xgboost.sklearn.XGBClassifier
model_format: xgb
xgb_version: 2.1.4
mlflow_version: 2.17.2
model_size_bytes: 425440
model_uuid: 0863a662a4c9434093c017bc86325
run_id: tough_floor_l2290mxbms_1
signature:
inputs: '[{"type": "tensor", "tensor-spec": {"dtype": "float64", "shape": [-1, 8]}}]'
outputs: '[{"type": "tensor", "tensor-spec": {"dtype": "int64", "shape": [-1]}}]'
params: null
utc_time_created: '2025-03-13 04:38:29.342371'
Can someone please let me know where I am going wrong.