Get started with Kepler Model Server.
This repository contains source code related to Kepler power model. The modules in this repository connects to core Kepler project and kepler-model-db as below.
For more details, check the component diagram.
apiVersion: kepler.system.sustainable.computing.io/v1alpha1
kind: KeplerInternal
metadata:
name: kepler
spec:
..
modelServer:
enabled: <true|false>
estimator:
node:
components:
sidecar: <true|false>
initUrl: <static model URL>
total:
sidecar: <true|false>
initUrl: <static model URL>
Deploy with estimator sidecar
OPTS="ESTIMATOR" make deploy
Deploy with estimator sidecar and model server
OPTS="ESTIMATOR SERVER" make deploy
-
Build image for testing, run
make build-test
-
Run the test
Test case Command Training pipeline make test-pipeline Model server make test-model-server Estimator make test-estimator Offline Trainer make test-offline-trainer For more test information, check here.
Compatible version: python 3.10
-
Install
hatch
-
Prepare environment
hatch shell
-
Run the test
Test case | Command |
---|---|
Training pipeline | python -u ./tests/pipeline_test.py |
Model server | Terminal 1: export MODEL_PATH=$(pwd)/tests/models;python src/server/model_server.py Terminal 2: python -u tests/estimator_model_request_test.py |
Estimator | Terminal 1: python src/estimate/estimator.py Terminal 2: python -u tests/estimator_power_request_test.py |
Estimator with Model Server | Terminal 1: export MODEL_PATH=$(pwd)/tests/models;python src/server/model_server.py Terminal 2: export MODEL_SERVER_URL=http://localhost:8100;export MODEL_SERVER_ENABLE=true;python -u src/estimate/estimator.py Terminal 3: python -u tests/estimator_power_request_test.py |
Offline Trainer | Terminal 1: python src/train/offline_trainer.py Terminal 2: python -u tests/offline_trainer_test.py |
For more test information, check here.
Please check the roadmap and guidelines to join us here.