I’m not sure for the first question, but have seen use cases which use the proposed loss instead of an SVM.
If you want to use a “real” SVM, you could store all extracted features as numpy arrays (with their target), and train e.g. an SVM from sklearn on it. This would of course not retrain the feature extractor anymore, but might be a valid use case, if you just want to train the SVM.