ClearML demo
opdracht:
- setup HPC clearml agent
- train mnist model and optimize accuracy using agent
- Log metrics in experiment -> run in clearml using agent
- Deploy model so pictures from mnist can be send to API and prediction comes back
- create pipeline that trains and deploys model on set timer (once a week)
Setup ClearML:
- https://clear.ml/docs/latest/docs/deploying_clearml/clearml_server_win/
- pip install clearml
- clearml-init
- Create workspace credentials
- Settings -> Workspace -> Create new credentials (optinal add label)
- copy code in clearml-init prompt in your terminal
Setup ClearML Agent:
- pip install clearml-agent
- clearml-agent init
- Create workspace credentials
- Settings -> Workspace -> Create new credentials
- copy code in clearml-agent init prompt in your terminal
- enter for app, api and file host
- Put in Git credentials
- clearml-agent daemon --services-mode --queue test --create-queue
- if run from same device as server, update clearml.conf with agent
serving
- pip install clearml-serving
- clearml-serving create --name "serving example"
- Write down the Serving Service UID
- git clone https://github.com/allegroai/clearml-serving.git
- cat docker/example.env
- cd docker && docker-compose --env-file example.env -f docker-compose-triton.yml up
- clearml-serving --id <service_id> model add --engine triton --endpoint "test_model_pytorch" --preprocess "preprocess.py" --name "stage_train - serving_model" --project "pipeline" --input-size 1 28 28 --input-name "INPUT__0" --input-type float32 --output-size -1 10 --output-name "OUTPUT__0" --output-type float32
- curl -X POST "http://127.0.0.1:8080/serve/test_model_pytorch" -H "Content-Type: image/png" --data-binary "data/mnist_png/0/3.jpg"