Instructions to use niral-env/youtube_spleeter with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use niral-env/youtube_spleeter with Transformers:
# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("niral-env/youtube_spleeter", device_map="auto") - Notebooks
- Google Colab
- Kaggle
| from transformers import PreTrainedModel, PretrainedConfig, AutoConfig, AutoModel | |
| from spleeter.separator import Separator | |
| class SpleeterConfig(PretrainedConfig): | |
| model_type = "spleeter" | |
| def __init__(self, stems=2, **kwargs): | |
| super().__init__(**kwargs) | |
| self.stems = stems | |
| class SpleeterModel(PreTrainedModel): | |
| config_class = SpleeterConfig | |
| def __init__(self, config): | |
| super().__init__(config) | |
| self.separator = Separator(f"spleeter:{config.stems}stems") | |
| def forward(self, audio_path: str): | |
| """ | |
| Separates the stems in the given audio file. | |
| Args: | |
| audio_path (str): Path to the input audio file. | |
| Returns: | |
| path: Separated stems. | |
| """ | |
| return self.separator.separate_to_file(audio_path, "separated_audio") | |
| AutoConfig.register("spleeter", SpleeterConfig) | |
| AutoModel.register(SpleeterConfig, SpleeterModel) | |
| SpleeterConfig.register_for_auto_class() | |
| SpleeterModel.register_for_auto_class("AutoModel") |