def _get_onnx_provider(self) -> None:
        """determine where the model should run based on specified device
        """
        self.onnxproviders = onnxruntime.get_available_providers()
        logger.info(f"device:{self.device} and available providers {self.onnxproviders}")
        if self.device == 'cpu':
            self.fast_onnxprovider = 'CPUExecutionProvider'
        else:
            if 'CUDAExecutionProvider' not in self.onnxproviders:
                self.fast_onnxprovider = 'CPUExecutionProvider'
            else:
                self.fast_onnxprovider = 'CUDAExecutionProvider'

        logger.info(f"onnx_provider:{self.fast_onnxprovider}")
determine where the model should run based on specified device
        
src/marqo/s2_inference/sbert_onnx_utils.py