Skip to content

Instantly share code, notes, and snippets.

@armandmcqueen
Last active January 13, 2020 18:11
Show Gist options
  • Save armandmcqueen/5da9dd631a36cde051104deb2a9fde08 to your computer and use it in GitHub Desktop.
Save armandmcqueen/5da9dd631a36cde051104deb2a9fde08 to your computer and use it in GitHub Desktop.
Code sample, detectron2 save model output

How to save model artifacts

export QUILT_HASH=3722a498
export DOCKER_HASH=sha256:8a4f4123c92a7fe2e8ca4c404094ab95dc1fb868ad077d2e084ba4082a5a29c1
export GIT_HASH=0a7a9d10

cd /detectron2/output
python

Save output directory as a package

import os
import quilt3


quilt_hash = os.environ["QUILT_HASH"]
docker_hash = os.environ["DOCKER_HASH"]
git_hash = os.environ["GIT_HASH"]

model_pkg = quilt3.Package()
# model_pkg.set("model_final.pth")
# Alternatively, if you want all logs and checkpoints:
model_pkg.set_dir("./")

model_pkg.push(
  "detectron2-trained-models/mask_rcnn_R_50_FPN_1x",
  registry="s3://quilt-ml",
  message=f"detectron2@{git_hash}, trained in container quiltdata/pytorch-detectron2-demo@{docker_hash} on cv/coco2017@{quilt_hash}"
)

Install package and evaluate/run inference demo

quilt3 install detectron2-trained-models/mask_rcnn_R_50_FPN_1x --registry=s3://quilt-ml --dest=/models/mask_rcnn_R_50_FPN_1x/ --top-hash=6e830aa5

cd /detectron2

python tools/train_net.py \
  --config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_1x.yaml \
  --eval-only MODEL.WEIGHTS /models/mask_rcnn_R_50_FPN_1x/model_final.pth

python demo/demo.py --config-file configs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml \
  --input input1.jpg input2.jpg \
  --opts MODEL.WEIGHTS /models/mask_rcnn_R_50_FPN_1x/model_final.pth
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment