def _download_languagebind_model(self, modality_location: ModalityLocation) -> str:
        """Download the Languagebind model zip file via a given location. The location is a ModalityLocation object.
        We have 3 possible locations:
        1. S3Location: a zip file in an S3 bucket.
        2. HFLocation: a zip file in the HuggingFace repo.
        3. URL: a direct download link.

        Args:
            modality_location: The location of the Languagebind model.

        Returns:
            The path of the downloaded Languagebind model zip file.
        """
        if modality_location.url:
            return download_pretrained_from_url(modality_location.url, cache_dir=ModelCache.languagebind_cache_path)
        elif modality_location.s3:
            download_kwargs = {'location': modality_location.s3, 'download_dir': ModelCache.languagebind_cache_path}
            if self.model_auth and self.model_auth.s3:
                download_kwargs['auth'] = self.model_auth.s3
            return download_pretrained_from_s3(**download_kwargs)
        elif modality_location.hf:
            download_kwargs = {'location': modality_location.hf, 'download_dir': ModelCache.languagebind_cache_path}
            if self.model_auth and self.model_auth.hf:
                download_kwargs['auth'] = self.model_auth.hf
            return download_model_from_hf(**download_kwargs)
        else:
            raise InternalError("Invalid modality location object provided.")
Download the Languagebind model zip file via a given location. The location is a ModalityLocation object.
        We have 3 possible locations:
        1. S3Location: a zip file in an S3 bucket.
        2. HFLocation: a zip file in the HuggingFace repo.
        3. URL: a direct download link.

        Args:
            modality_location: The location of the Languagebind model.

        Returns:
            The path of the downloaded Languagebind model zip file.
        
src/marqo/inference/native_inference/embedding_models/languagebind_model.py