This message was deleted.
# announcements
s
This message was deleted.
s
Hey Almir, I'm doing the same. I use mlflow to log the model pickle in s3 after training automatically and then change the path of s3 in my code repository. This triggers ci cd pipeline and deploys the new model. Would love to know if there are better ways to do this :)
👍 1
t
@Almir Bolduan, I was talking with the team about this. Honestly I think it's probably better if you restart the container when a new model is published, that way you can do a graceful rolling deployment with pretty standard patterns. Otherwise, you'd have to intermittently poll s3 looking for new versions and then if there's a new one download it, unload the old one and load the new one (difficult depending on how your service is using your model). Or worse, you'd send a signal to your webservice when a new model is loaded to do the above... Happy to know anyone else's thoughts if there might be an easier way
👍 1
a
Thanks for answering @Smiral and @Tim Liu! I'm doing the way @Tim Liu suggested. After training, I export the new model to S3, then send a redeploy signal do AWS ECS. The image restarts, looks for new model on S3, imports and use It. This way, AWS ECS starts new tasks for the redeployed container and finish the old one tasks in a "draining" approach. Waiting for a new release to correct the import from S3 "preserve_time" bug also on docker BentoML docker image: https://github.com/bentoml/BentoML/pull/2361
✅ 1