<aside> 💡 Github에 배포 코드(score.py)가 있다고 가정
</aside>
mlops-onboarding-shelley/yolov4-csp-driving/docker/deployment 경로에서 도커 빌드
sudo docker build . --no-cache -t deploy:v1 --build-arg GIT_TOKEN=[여기에 git token]
위에서 빌드한 도커 이미지로 도커 Run
sudo docker run -it --gpus all -p 5001:5001 -v /mnt/data:/app --name test_model deploy:v1 /bin/bash -c 'azmlinfsrv --entry_script score.py --model_dir ./azureml-models --worker_count 1'
[필요시] local에서 수동으로 돌려보기
pip install azureml-inference-server-http
azmlinfsrv --entry_script score.py --model_dir [serving model 경로] --worker_count 1
Serving Model Structure
.
└── yolov4-csp-driving
└── 1
└── serving_model
├── label_map.json
└── saved_model
├── class.names
├── keras_metadata.pb
├── saved_model.pb
├── saved_model.pdtxt
└── variables
├── variables.data-00000-of-00001
└── variables.index
label_map.json
{
"1": "car",
"2": "bus",
"3": "pedestrian",
"4": "cycle",
"5": "truck",
"6": "motorcycle",
"7": "train",
"8": "rider",
"9": "traffic sign",
"10": "traffic signal"
}
curl -X POST [endpoint]/score \
-H "Authorization: Bearer [Azureml 토큰]" \
-H "Content-Type: application/json" \
-d '{
"model_id": "yolov4-csp-driving:1",
"threshold": 0.5,
"image_urls": {
"5aaaa000001": "<https://imagescdn.gettyimagesbank.com/500/201902/jv11341010.jpg>",
"5aaaa000002": "<https://imagescdn.gettyimagesbank.com/500/201902/jv11341012.jpg>",
"5aaaa000003": "<https://imagescdn.gettyimagesbank.com/500/201902/jv11341026.jpg>"
},
"include_classes": ["car", "bus", "pedestrian", "cycle", "truck", "motorcycle", "train", "rider", "traffic sign", "traffic signal"],
"point_density": 1.0
}' --silent | jq