Polyaxon allows to schedule XGBoost experiments and XGBoost distributed experiments, and supports tracking metrics, outputs, and models natively.
Deploy the XGBoostJob operator
Before you can use the xgboostjob runtime, you need to make sure that XGBoostJob operator and the CRD (custom resource definition) are deployed in your cluster.
Enable the operator
To be able to schedule distributed jobs with the XGBoostJob operator, you need to enable the operator in your deployment config.
You need to enable the operator in Polyaxon CE deployment or Polyaxon Agent deployment:
operators:
xgboostjob: true
Create a component with the xgboostjob runtime
Once you have the XGBoostJob operator running on a Kubernetes namespace managed by Polyaxon, you can check the specification for creating components with the xgboostjob runtime:
version: 1.1
kind: component
run:
kind: xgboostjob
...
For more details about the specification for creating xgboostjob runtime, please check please check this section.
Run the distributed job
Running components with the xgboostjob runtime is similar to running any other component:
polyaxon run -f manifest.yaml -P ...
View a running operation on the dashboard
After running an operation with this component, you can view it on the Dashboard:
polyaxon ops dashboard
or
polyaxon ops dashboard -p [project-name] -uid [run-uuid] -y
Stop a running operation
To stop a running operation with this component:
polyaxon ops stop
or
polyaxon ops stop -p [project-name] -uid [run-uuid]
Run the job using the Python client
To run this component using Polyaxon Client:
from polyaxon.client import RunClient
client = RunClient(...)
client.create_from_polyaxonfile(polyaxonfile="path/to/file", ...)