Всю актуальную информацию о доступных моделях можно увидеть на отдельной странице:
https://mvsepless-resources.github.io/model_info_page/
(используется информация из репозитория noblebarkrr/mvsepless_resources на Hugging Face)
pytaglib)MVSEPLESS_LANGUAGEУстановите Python с включенными опциями Add Python 3.x to PATH и Disable path length limit: https://www.python.org/ftp/python/3.11.6/python-3.11.6-amd64.exe
Скачайте архив с FFMPEG, распакуйте его и добавьте распакованную папку в переменную PATH: https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-master-latest-win64-gpl.zip
Установите Microsoft Visual C++ 2015-2022 (x64): https://aka.ms/vs/17/release/vc_redist.x64.exe
Установите Microsoft C++ Build Tools и после установки перезапустите компьютер: https://visualstudio.microsoft.com/visual-cpp-build-tools/
Выберите Desktop development with C++
Установите PyTorch: https://pytorch.org/get-started/locally/
Скачайте и распакуйте архив: https://github.com/noblebarkrr/mvsepless/archive/refs/heads/dzeta.zip
Откройте командную строку в распакованной папке
pytaglib (опционально):pip install pytaglib
pytaglib недоступен для вашей среды выполнения:Скачайте и распакуйте архив: https://github.com/supermihi/pytaglib/archive/refs/heads/main.zip
Затем:
- Откройте командную строку встроенных инструментов Visual Studio (Native Tools Command Prompt)
- Установите setuptools версией ниже, чем 61.0.0 pip install "setuptools<61.0.0"
- Перейдите в репозиторий pytaglib (распакованную папку)
- Выполните python build_native_taglib.py, который загрузит и соберет последний официальный релиз TagLib (только на x64)
- Выполните python setup.py install
# Установка базовых зависимостей
apt update -y
apt upgrade -y
apt install -y wget curl git gcc libx11-dev ffmpeg build-essential cmake nano python3-full python3-pip python3-dev libutfcpp-dev
# Клонирование репозитория
git clone https://github.com/noblebarkrr/mvsepless -b dzeta --depth 1
cd mvsepless
# Если пакеты не устанваливаются без виртуального окружения
python3 -m venv env
source env/bin/activate
python3 -m pip install ninja cmake
pytaglib (опционально):# Сборка библиотеки taglib (если нет подходящего бинарного файла для pytaglib)
git clone https://github.com/taglib/taglib
cd taglib
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="-fPIC" -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=ON ..
make
make install
# Выходим из папки taglib/build
cd ../..
pip install pytaglib
pip install uv
# Обычные зависимости
uv pip install --no-cache-dir -r requirements.txt
# Устаревшие зависимости (только Python 3.10)
uv pip install --no-cache-dir -r requirements_old_torch_py310.txt
# Обычные зависимости
pip install -r requirements.txt
# Устаревшие зависимости (только Python 3.10)
pip install -r requirements_old_torch_py310.txt
Для разделения (separate, custom_separate):
NAME — имя входного файла (без расширения)STEM — название стема (например: vocals, instrumental)MODEL — имя модели (например: bs_6stem)Пример: NAME_STEM_MODEL → Song_vocals_bs_6stem
NAME — имя входного файла (без расширения)ITER — номер итерации (iter_N)Пример: NAME_ITER → Song_iter_3
Для авто-ансамбля (auto_ensemble):
NAME — имя входного файла (без расширения)TYPE — тип ансамбля (например: min_fft, avg_fft)COUNT — количество используемых моделей/файловПример: NAME_COUNT_TYPE → Song_7_min_fft
Для ручного ансамбля (manual_ensemble):
NAME — имя входного файла (без расширения)TYPE — тип ансамбля (например: min_fft, avg_fft)Пример: NAME_TYPE → Song_min_fft
NAME — имя входного файла (без расшириения)TYPE — тип инверсии (например: waveform, spectrogram)Пример: NAME_TYPE → Song_waveform
Для коррекции фазы (phase_fixer):
NAME — имя целевого файла (без расширения)
TYPE — тип операции (phase_fix)
Пример: NAME_TYPE → Song_phase_fix
| Тип | Описание |
|---|---|
avg_fft | Среднее, стабильный результат (требуются веса) |
median_fft | Медиана (эффективно от 3+ аудио) |
min_fft | Минимум, более чистый результат |
max_fft | Максимум, более полный, но "грязный" результат |
[
["имя_модели1", "основной_стем1", False, 1],
["имя_модели2", "основной_стем2", False, 2],
...
]
[
[str, str, bool, float],
[str, str, bool, float],
...
]
[
["имя_модели1", "основной_стем1", false, 1],
["имя_модели2", "основной_стем2", false, 2],
...
]
[
[str, str, bool, float],
[str, str, bool, float],
...
]
--flow имя_модели1:основной_стем_1:False:1 имя_модели2:основной_стем_2:False:2 ...
--flow str:str:bool:float str:str:bool:float
[
["имя_модели1", "основной_стем1", False],
["имя_модели2", "основной_стем2", False],
...
]
[
[str, str, bool],
[str, str, bool],
...
]
[
["имя_модели1", "основной_стем1", false],
["имя_модели2", "основной_стем2", false],
...
]
--flow имя_модели1:основной_стем_1:False имя_модели2:основной_стем_2:False ...
--flow str:str:bool str:str:bool
python app.py --share
from app import App
app = App()
app_ui = app.UI(theme, False)
app_ui.launch(
allowed_paths=["/"],
debug=True,
share=True, # Если нужно сделать общий доступ к Web-UI
server_port=7860,
server_name="0.0.0.0"
)
# Список с фильтром
python inference.py info -limit 0 -stem "vocals"
# Полный список
python inference.py info
# Обновление информации о моделях
python inference.py info -update
from inference import Separator
separator = Separator() # Инициализация класса
separator.update_info() # Обновление информации о моделях
separator.show_info(
0, # Лимит количества отображаемых моделей
"vocals", # Название стема (если указан, будут показаны только модели с данным стемом)
False # Только установленные модели (при True)
)
Информация о моделях
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Имя модели ┃ Выходные стемы ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ установлено │ целевой инструмент │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_inst_fno_unwa │ other, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_inst_large2_unwa │ instrument, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_inst_hyperace_unwa │ instrument, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_inst_hyperace2_unwa │ instrument, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_voc_hyperace2_unwa │ instrument, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_karaoke_becruily │ Instrumental, Vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_voctest_gabox │ Instrumental, Vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_karaoke_gabox │ other, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_karaoke_inv_gabox │ other, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_6stem │ bass, drums, guitar, other, │
│ │ piano, vocals │
└──────────────────────────────────────────┴───────────────────────────────────┘
python inference.py separate -i "audio.mp3" -o "output" -of mp3 -mn "bs_6stem" -tm "NAME_STEM"
from inference import Separator
separator = Separator()
model_name = "bs_6stem"
separator.download(model_name) # Скачивание модели без запуска инференса
results = separator.separate(
"audio.mp3", # Входной файл/папка
"output", # Директория вывода
"mp3", # Формат вывода
"NAME_STEM", # Шаблон имени файла
model_name # Имя модели
)
python inference.py custom_separate -i "audio.mp3" -o "output" -of mp3 -ckpt "bs_6stem.ckpt" -conf "bs_6stem_config.yaml" -mt "bs_roformer" -tm "NAME_STEM"
from inference import Separator
separator = Separator()
results = separator.custom_separate(
"audio.mp3", # Входной файл/папка
"output", # Директория вывода
"mp3", # Формат вывода
"NAME_STEM", # Шаблон имени файла
"bs_roformer", # Тип модели
"bs_6stem.ckpt", # Путь к чекпоинту
"bs_6stem_config.yaml" # Путь к конфигу
)
Пример пресета для итеративного ансамбля
# Пресет в виде списка
python inference.py iterative_ensemble -i "audio.mp3" -o "output" -of mp3 -tm "NAME_ITER" -flow "bs_6stem:vocals:False" "mbr_inst1e_unwa:vocals:False" -n 4
# С сохранением промежуточных результатов
python inference.py iterative_ensemble -i "audio.mp3" -o "output" -of mp3 -tm "NAME_ITER" -flow "bs_6stem:vocals:False" "mbr_inst1e_unwa:vocals:False" -n 4 -save_intermediate
# Пресет в виде json-файла
python inference.py iterative_ensemble -i "audio.mp3" -o "output" -of mp3 -tm "NAME_ITER" -json "iterative_flow.json" -n 4
from inference import Separator
separator = Separator()
flow = [
["bs_6stem", "vocals", True], # [модель, осн. стем, инверсия]
["mbr_inst1e_unwa", "vocals", False]
]
result_path, intermediate_files = separator.iterative_ensemble(
"audio.mp3", # Входной файл
"output", # Директория вывода
flow, # Пресет ансамбля
num_iters=4, # Количество итераций
output_format="mp3",# Формат вывода
template="NAME_ITER", # Шаблон имени файла
save_intermediate=True # Сохранять промежуточные результаты
)
print(f"Финальный результат: {result_path}")
print(f"Промежуточные файлы: {intermediate_files}")
Пример пресета для авто-ансамбля
# Пресет в виде списка списков
python inference.py auto_ensemble -i "audio.mp3" -o "output" -of mp3 -type avg_fft -tm "NAME_TYPE" -flow "bs_6stem:vocals:True:1" "mbr_inst1e_unwa:other:False:1"
# Пресет в виде json-файла
python inference.py auto_ensemble -i "audio.mp3" -o "output" -of mp3 -type avg_fft -tm "NAME_TYPE" -json "ensemble_flow.json"
from inference import Separator
separator = Separator()
flow = [
["bs_6stem", "vocals", True, 1], # [модель, осн. стем, инверсия, вес]
["mbr_inst1e_unwa", "other", False, 1]
]
result, invert_result = separator.auto_ensemble(
"audio.mp3", # Входной файл
"output", # Директория вывода
flow, # Пресет ансамбля
"NAME_TYPE", # Шаблон имени файла
"avg_fft", # Тип ансамбля
"mp3" # Формат вывода
)
python inference.py manual_ensemble -i "audio1.mp3" "audio2.mp3" -o "output" -of mp3 -type avg_fft -tm "NAME_TYPE" -w 1 1
from inference import Separator
separator = Separator()
result = separator.manual_ensemble(
["audio1.mp3", "audio2.mp3"], # Входные файлы
"output", # Директория вывода
[1, 1], # Веса
"NAME_TYPE", # Шаблон имени файла
"avg_fft", # Тип ансамбля
"mp3" # Формат вывода
)
python inference.py subtract -i1 "audio1.mp3" -i2 "audio2.mp3" -o "output" -of mp3 -tm "NAME_TYPE"
from inference import Separator
separator = Separator()
result = separator.subtract(
"audio1.mp3", # Оригинал
"audio2.mp3", # Стем
"output", # Директория вывода
"mp3" # Формат вывода
[1, 1], # Веса
False, # Использовать ли спектрограмму при вычитании?
"avg_fft", # Тип ансамбля
)
python inference.py phase_fixer -i1 "target.wav" -i2 "source.wav" -o "output" -of wav -tm "NAME_TYPE" --transfer_phase --freq_blend --low_cutoff 500 --high_cutoff 5000
from inference import Separator
separator = Separator()
result = separator.phase_fixer(
"target.wav", # Целевое аудио (амплитуда сохраняется по умолчанию)
"source.wav", # Опорное аудио (донор фазы)
"output", # Директория вывода
"wav", # Формат вывода
"NAME_TYPE", # Шаблон имени файла
transfer_magnitude=False, # Перенос амплитуды из source
transfer_phase=True, # Перенос фазы из source
freq_blend_phases=True, # Частотное смешение фаз
low_cutoff=500, # Нижняя граница смешения (Гц)
high_cutoff=5000, # Верхняя граница смешения (Гц)
prefer_float=False
)
python inference.py preset -i "audio.mp3" -o "output" -of mp3 -p "my_preset.json" -tm "NAME_STEM"
from inference import Separator
separator = Separator()
results = separator.run_preset(
"audio.mp3", # Входной файл/папка
"output", # Директория вывода
"mp3", # Формат вывода
"NAME_STEM", # Шаблон имени файла
"my_preset.json", # Путь к JSON-пресету или dict
)
Separator.__init__()) | Параметр | Тип | Описание |
|---|---|---|
source | str | None | Источник для скачивания моделей Доступные варианты: - hface, hf, huggingface (Hugging Face, по умолчанию)- github, gh (GitHub Releases, быстрее для больших файлов)- mscope, ms, modelscope (ModelScope, запасной вариант) |
custom_model_info_path | str | Path | Путь к пользовательскому файлу информации о моделях (JSON) Позволяет расширить стандартный список моделей |
custom_models_dir | str | Path | Путь к дополнительной директории, где хранятся локальные модели Используется для поиска чекпоинтов вне стандартной папки кэша |
Separator().show_info()) | Параметр | Тип | Описание |
|---|---|---|
limit | int | Лимит количества отображаемых моделей (0 или None — без лимита) |
stem | str | Название стема — показывать только модели с данным стемом |
only_installed | bool | Показывать только установленные модели |
Separator().download())| Параметр | Тип | Описание |
|---|---|---|
model_name | str | Имя модели для скачивания |
Separator().separate()) | Параметр | Тип | Описание |
|---|---|---|
input_files | str | Path | list | Путь к файлу/папке или список путей |
output_dir | str | Path | Директория для сохранения результатов |
output_format | str | Формат аудио (mp3, wav, flac и др.) |
template | str | Шаблон имени файла (ключи: NAME, STEM, MODEL) (Подробнее) |
model_name | str | Имя модели |
extract_instrumental | bool | Создание инверсии выбранных стемов (стем invert) |
use_spec_invert | bool | Вычитание из спектрограммы вместо противофазы |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
invert_plus | bool | Использует сложение невыбранных стемов при создании инструментала |
selected_stems | list | Список стемов для сохранения (если не указан — все) |
add_params | dict | Дополнительные параметры разделения |
Возвращает:
([
[имя_файла (str), [[стем (str), путь_к_файлу (str)], ...]],
...
], [строка с ошибкой для отображения в интерфейсе (str), ...])
Separator().custom_separate()) | Параметр | Тип | Описание |
|---|---|---|
input_files | str | Path | list | Путь к файлу/папке или список путей |
output_dir | str | Path | Директория для сохранения результатов |
output_format | str | Формат аудио (mp3, wav, flac и др.) |
template | str | Шаблон имени файла (ключи: NAME, STEM, MODEL) (Подробнее) |
model_type | str | Тип модели (например, bs_roformer) |
ckpt | str | Path | Путь к чекпоинту (*.ckpt) |
conf | str | Path | Путь к YAML конфигу (*.yaml) |
extract_instrumental | bool | Создание инверсии выбранных стемов |
use_spec_invert | bool | Вычитание из спектрограммы вместо противофазы |
invert_plus | bool | Использует сложение невыбранных стемов при создании инструментала |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
selected_stems | list | Список стемов для сохранения |
add_params | dict | Дополнительные параметры разделения |
Возвращает: аналогично separate()
Separator().iterative_ensemble()) | Параметр | Тип | Описание |
|---|---|---|
input_file | str | Path | Путь к входному файлу |
output_dir | str | Path | Директория для сохранения результатов |
flow | list | Пресет для ансамбля (Пример) |
num_iters | int | Количество итераций (по умолчанию: 4) |
output_format | str | Формат аудио (mp3, wav, flac и др.) |
template | str | Шаблон имени (ключи: NAME, ITER) (Подробнее) |
save_intermediate | bool | Сохранять промежуточные результаты каждой итерации |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
Возвращает: (путь_к_финальному_ансамблю, список_промежуточных_файлов)
Separator().auto_ensemble()) | Параметр | Тип | Описание |
|---|---|---|
input_file | str | Path | Путь к входному файлу |
output_dir | str | Path | Директория для сохранения результатов |
flow | list | Пресет для ансамбля (Пример) |
template | str | Шаблон имени (ключи: NAME, TYPE, COUNT) (Подробнее) |
etype | str | Тип ансамбля (avg_fft, median_fft, min_fft, max_fft) (Подробнее) |
output_format | str | Формат аудио |
use_spec_invert | bool | Вычитание из спектрограммы вместо противофазы |
save_primary_stems | bool | Сохранять основные стемы в output_dir |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
Возвращает: (путь_к_ансамблю, путь_к_инверсии, список_основных_стемов)
Separator().manual_ensemble()) | Параметр | Тип | Описание |
|---|---|---|
input_files | list | Список путей к аудиофайлам |
output_dir | str | Path | Директория для сохранения результата |
weights | list | Веса файлов (обязательно для avg_fft) |
template | str | Шаблон имени (ключи: NAME, TYPE) (Подробнее) |
etype | str | Тип ансамбля (avg_fft, median_fft, min_fft, max_fft) (Подробнее) |
output_format | str | Формат аудио |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
Возвращает: str — путь к результату ансамбля
Separator().subtract()) | Параметр | Тип | Описание |
|---|---|---|
audio1 | str | Path | Путь к оригинальному файлу |
audio2 | str | Path | Путь к файлу стема |
output_dir | str | Path | Директория для сохранения результата |
output_format | str | Формат аудио |
use_spec_invert | bool | Вычитание из спектрограммы вместо противофазы |
template | str | Шаблон имени (ключи: NAME, TYPE) (Подробнее) |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
Возвращает: str — путь к результату вычитания
Separator().phase_fixer()) | Параметр | Тип | Описание |
|---|---|---|
target | str | Path | Путь к целевому аудиофайлу (амплитуда сохраняется по умолчанию) |
source | str | Path | Путь к исходному аудиофайлу (донор фазы и опционально амплитуды) |
output_dir | str | Path | Директория для сохранения результата |
output_format | str | Формат аудио |
template | str | Шаблон имени (ключи: NAME, TYPE) (Подробнее) |
transfer_magnitude | bool | Переносить амплитуду из source (по умолчанию: False) |
transfer_phase | bool | Переносить фазу из source (по умолчанию: True) |
freq_blend_phases | bool | Плавное частотное смешение фаз между границами (по умолчанию: True) |
low_cutoff | int | Нижняя граница частотного смешения в Гц (по умолчанию: 500) |
high_cutoff | int | Верхняя граница частотного смешения в Гц (по умолчанию: 5000) |
prefer_float | bool | Предпочитать высокую точность вывода (Используемые форматы сэмплов) |
Возвращает: str — путь к результату коррекции фазы
Separator().run_preset()) | Параметр | Тип | Описание |
|---|---|---|
input_files | str | Path | list | Путь к файлу/папке или список путей |
output_dir | str | Path | Директория для сохранения результатов |
output_format | str | Формат аудио |
template | str | Шаблон имени файла (ключи: NAME, STEM, MODEL) (Подробнее) |
preset | str | Path | dict | Путь к JSON-файлу пресета или словарь с графом обработки |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
selected_stems | list | Список стемов для сохранения (фильтрация нод типа output_file) |
add_params | dict | Дополнительные параметры разделения для нод типа separate |
Возвращает: аналогично separate()
первичные аргументы - inference.py info
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-u, -update, --update | update | bool | Обновить кэш информации о моделях из репозитория |
-clear, -clear_cache, -clear-cache, --clear_cache, --clear-cache | clear_cache | bool | Очистить кэш информации о моделях |
-mn, -model, --model_name, --model-name | model_name | str | Имя модели для скачивания (по умолчанию: bs_6stem) |
-dw, -download, --download | download | bool | Скачать указанную модель (требуется -mn) |
-l, -limit, --limit | limit | int | Лимит количества отображаемых моделей (0 или None - без лимита) |
-s, -stem, --stem | stem | str | Показать только модели, которые содержат указанный стем (например: vocals, drums) |
-oi, -installed, --only_installed, --only-installed | only_installed | bool | Показывать только установленные (скачанные) модели |
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
--add_custom_model_info_path, --add-custom-model-info-path, --model_info, --model-info, -minfo | custom_model_info_path | str | Путь к пользовательскому файлу информации о моделях (JSON) Позволяет расширить стандартный список моделей |
--add_custom_models_dir, --add-custom-models-dir, --models_dir, --models-dir, -mdir | custom_models_dir | str | Путь к дополнительной директории, где хранятся локальные модели Используется для поиска чекпоинтов вне стандартной папки кэша |
--model_source, --model-source, -msrc | model_source | str | Источник для скачивания моделей Доступные варианты: - hface, hf, huggingface (Hugging Face, по умолчанию)- github, gh (GitHub Releases, быстрее для больших файлов)- mscope, ms, modelscope (ModelScope, запасной вариант) |
первичные аргументы - inference.py separate
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i, --i, -input, --input, --input_files, --input-files | input | str | Path | list | Путь к входному аудиофайлу, папке с файлами или список путей |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, STEM, MODEL. Пример: NAME_STEM_MODEL (Подробнее) |
-mn, -model, --model_name, --model-name | model_name | str | Имя модели для разделения (по умолчанию: bs_6stem) |
-inst, -ext_inst, -ext-inst, --extract_instrumental, --extract-instrumental | extract_instrumental | bool | Создать инверсию выбранных стемов (инструментал) - стем с именем 'invert' |
-ispec, -spec_invert, -spec-invert, --use_spec_invert, --use-spec-invert | use_spec_invert | bool | Использовать вычитание из спектрограммы вместо противофазы при создании инверсии |
-iplus, -invert_plus, -invert-plus, --invert_plus, --invert-plus | invert_plus | bool | Использует сложение невыбранных стемов при создании инструментала |
-st, --st, -stems, --stems, --selected_stems, --selected-stems | selected_stems | list | Список стемов для сохранения (например: vocals drums). Если не указаны - сохраняются все стемы |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer_float | prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
--preserve_side | preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
--{param_name} | add_params.{param_name} | int/float/str/bool | Дополнительный параметр разделения |
первичные аргументы - inference.py custom_separate
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i, --i, -input, --input, --input_files, --input-files | input | str | Path | list | Путь к входному аудиофайлу, папке с файлами или список путей |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, STEM, MODEL. Пример: NAME_STEM_MODEL (Подробнее) |
-mt, -mtype, --model_type, --model-type | model_type | str | Тип модели (например: bs_roformer, demucs, mdx). По умолчанию: bs_roformer |
-ckpt, --ckpt, -checkpoint, --checkpoint, --checkpoint_path, --checkpoint-path | checkpoint_path | str | Path | Путь к файлу чекпоинта модели (*.ckpt или *.pth) |
-conf, --conf, -config, --config, --config_path, --config-path | config_path | str | Path | Путь к конфигурационному файлу модели (*.yaml) |
-inst, -ext_inst, -ext-inst, --extract_instrumental, --extract-instrumental | extract_instrumental | bool | Создать инверсию выбранных стемов (инструментал) - стем с именем 'invert' |
-ispec, -spec_invert, -spec-invert, --use_spec_invert, --use-spec-invert | use_spec_invert | bool | Использовать вычитание из спектрограммы вместо противофазы при создании инверсии |
-iplus, -invert_plus, -invert-plus, --invert_plus, --invert-plus | invert_plus | bool | Использует сложение невыбранных стемов при создании инструментала |
-st, --st, -stems, --stems, --selected_stems, --selected-stems | selected_stems | list | Список стемов для сохранения (например: vocals drums). Если не указаны - сохраняются все стемы |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer_float | prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
--preserve_side | preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
--{param_name} | add_params.{param_name} | int/float/str/bool | Дополнительный параметр разделения |
первичные аргументы - inference.py iterative_ensemble
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i, --i, -input, --input, --input_file, --input-file | input | str | Path | Путь к входному аудиофайлу |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, ITER. Пример: NAME_ITER (Подробнее) |
-n, -iters, --num_iters, --num-iters | num_iters | int | Количество итераций (по умолчанию: 4). На каждой итерации применяется весь набор моделей к остатку от предыдущей итерации |
-save_intermediate, -save-intermediate, --save_intermediate, --save-intermediate | save_intermediate | bool | Сохранять промежуточные результаты каждой итерации |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer_float | prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
--preserve_side | preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
-flow, --flow | flow | list | Пресет в виде строк: МОДЕЛЬ:ОСНОВНОЙ_СТЕМ:ИНВЕРСИЯ. (Пример) |
-json, -preset, -preset_json, -preset-json, --preset_json, --preset-json | preset | str | Путь к JSON-файлу с пресетом ансамбля (Пример) |
первичные аргументы - inference.py auto_ensemble
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i, --i, -input, --input, --input_file, --input-file | input | str | Path | Путь к входному аудиофайлу |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, TYPE, COUNT. Пример: NAME_COUNT_TYPE (Подробнее) |
-t, -type, -etype, --ensemble_type, --ensemble-type | ensemble_type | str | Тип ансамбля: avg_fft, median_fft, min_fft, max_fft (по умолчанию: avg_fft; Подробнее) |
-ispec, -spec_invert, -spec-invert, --use_spec_invert, --use-spec-invert | use_spec_invert | bool | Использовать вычитание из спектрограммы вместо противофазы при создании инверсии |
-save_stems, -save-stems, -save_primary_stems, --save-primary-stems | save_primary_stems | bool | Сохранять основные стемы в выходную директорию |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer_float | prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
--preserve_side | preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
-flow, --flow | flow | list | Пресет в виде строк: МОДЕЛЬ:ОСНОВНОЙ_СТЕМ:ИНВЕРСИЯ:ВЕС. (Пример) |
-json, -preset, -preset_json, -preset-json, --preset_json, --preset-json | preset | str | Путь к JSON-файлу с пресетом ансамбля (Пример) |
первичные аргументы - inference.py manual_ensemble
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i, --i, -input, --input, --input_files, --input-files | input | list | Список путей к аудиофайлам |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, TYPE. Пример: NAME_TYPE (Подробнее) |
-t, -type, -etype, --ensemble_type, --ensemble-type | ensemble_type | str | Тип ансамбля: avg_fft, median_fft, min_fft, max_fft (по умолчанию: avg_fft; Подробнее) |
-w, -weights, --weights | weights | list | Веса для каждого аудиофайла (обязательно для типа avg_fft). Пример: -w 1.0 0.5 0.2 |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer_float | prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
первичные аргументы - inference.py subtract
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i1, --i1, -input1, --input1, --input_file1, --input-file1 | input_1 | str | Path | Путь к оригинальному аудиофайлу (из которого вычитаем) |
-i2, --i2, -input2, --input2, --input_file2, --input-file2 | input_2 | str | Path | Путь к аудиофайлу стема (который вычитаем) |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, TYPE. Пример: NAME_TYPE (Подробнее) |
-ispec, -spec_invert, -spec-invert, --use_spec_invert, --use-spec-invert | use_spec_invert | bool | Использовать вычитание из спектрограммы вместо противофазы при создании инверсии |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer_float | prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
первичные аргументы - inference.py phase_fixer
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i1, --i1, -target, --target, --target_file, --target-file | target | str | Path | Путь к целевому аудиофайлу. По умолчанию его амплитуда сохраняется, а фаза берётся из source |
-i2, --i2, -source, --source, --source_file, --source-file | source | str | Path | Путь к исходному аудиофайлу. Используется как донор фазы, а при --transfer_magnitude — и амплитуды |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, TYPE. Пример: NAME_TYPE (Подробнее) |
-tmag, --transfer_magnitude, --transfer-magnitude | transfer_magnitude | bool | Переносить амплитуду из исходного файла (по умолчанию выключено) |
-nphase, --transfer_phase, --transfer-phase | transfer_phase | bool | Включить перенос фазы из исходного файла |
-nblend, --freq_blend, --freq-blend | freq_blend | bool | Включить частотное смешение фаз |
-lc, --low_cutoff, --low-cutoff | low_cutoff | int | Нижняя граница частотного смешения фаз в Гц (по умолчанию: 500) |
-hc, --high_cutoff, --high-cutoff | high_cutoff | int | Верхняя граница частотного смешения фаз в Гц (по умолчанию: 5000) |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer-float | prefer_float | bool | Предпочитать высокую точность вывода (Используемые форматы сэмплов) |
первичные аргументы - inference.py preset
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i, --i, -input, --input, --input_files, --input-files | input | str | Path | list | Путь к входному аудиофайлу, папке с файлами или список путей |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, STEM, MODEL. Пример: NAME_STEM_MODEL (Подробнее) |
-p, -preset, --preset, --preset_path, --preset-path | preset | str | Path | Путь к JSON-файлу с пресетом (графом обработки) |
-st, --st, -stems, --stems, --selected_stems, --selected-stems | selected_stems | list | Список стемов для сохранения (например: vocals drums). Если не указаны - сохраняются все стемы из пресета |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer-float | prefer_float | bool | Предпочитать высокую точность вывода (Используемые форматы сэмплов) |
--{param_name} | add_params.{param_name} | int/float/str/bool | Дополнительный параметр разделения (применяется к нодам типа separate внутри пресета) |
первичные аргументы - app.py
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-s, -share, --share, --public, --gradio_share, --gradio-share | share | bool | Создать публичную ссылку через Gradio Share (для доступа из интернета) |
-p, -port, --port, --server_port, --server-port | port | int | Порт для запуска сервера (по умолчанию: 7860) |
Всю актуальную информацию о доступных моделях можно увидеть на отдельной странице:
https://mvsepless-resources.github.io/model_info_page/
(используется информация из репозитория noblebarkrr/mvsepless_resources на Hugging Face)
pytaglib)MVSEPLESS_LANGUAGEУстановите Python с включенными опциями Add Python 3.x to PATH и Disable path length limit: https://www.python.org/ftp/python/3.11.6/python-3.11.6-amd64.exe
Скачайте архив с FFMPEG, распакуйте его и добавьте распакованную папку в переменную PATH: https://github.com/BtbN/FFmpeg-Builds/releases/download/latest/ffmpeg-master-latest-win64-gpl.zip
Установите Microsoft Visual C++ 2015-2022 (x64): https://aka.ms/vs/17/release/vc_redist.x64.exe
Установите Microsoft C++ Build Tools и после установки перезапустите компьютер: https://visualstudio.microsoft.com/visual-cpp-build-tools/
Выберите Desktop development with C++
Установите PyTorch: https://pytorch.org/get-started/locally/
Скачайте и распакуйте архив: https://github.com/noblebarkrr/mvsepless/archive/refs/heads/dzeta.zip
Откройте командную строку в распакованной папке
pytaglib (опционально):pip install pytaglib
pytaglib недоступен для вашей среды выполнения:Скачайте и распакуйте архив: https://github.com/supermihi/pytaglib/archive/refs/heads/main.zip
Затем:
- Откройте командную строку встроенных инструментов Visual Studio (Native Tools Command Prompt)
- Установите setuptools версией ниже, чем 61.0.0 pip install "setuptools<61.0.0"
- Перейдите в репозиторий pytaglib (распакованную папку)
- Выполните python build_native_taglib.py, который загрузит и соберет последний официальный релиз TagLib (только на x64)
- Выполните python setup.py install
# Установка базовых зависимостей
apt update -y
apt upgrade -y
apt install -y wget curl git gcc libx11-dev ffmpeg build-essential cmake nano python3-full python3-pip python3-dev libutfcpp-dev
# Клонирование репозитория
git clone https://github.com/noblebarkrr/mvsepless -b dzeta --depth 1
cd mvsepless
# Если пакеты не устанваливаются без виртуального окружения
python3 -m venv env
source env/bin/activate
python3 -m pip install ninja cmake
pytaglib (опционально):# Сборка библиотеки taglib (если нет подходящего бинарного файла для pytaglib)
git clone https://github.com/taglib/taglib
cd taglib
mkdir build && cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS="-fPIC" -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DBUILD_SHARED_LIBS=ON ..
make
make install
# Выходим из папки taglib/build
cd ../..
pip install pytaglib
pip install uv
# Обычные зависимости
uv pip install --no-cache-dir -r requirements.txt
# Устаревшие зависимости (только Python 3.10)
uv pip install --no-cache-dir -r requirements_old_torch_py310.txt
# Обычные зависимости
pip install -r requirements.txt
# Устаревшие зависимости (только Python 3.10)
pip install -r requirements_old_torch_py310.txt
Для разделения (separate, custom_separate):
NAME — имя входного файла (без расширения)STEM — название стема (например: vocals, instrumental)MODEL — имя модели (например: bs_6stem)Пример: NAME_STEM_MODEL → Song_vocals_bs_6stem
NAME — имя входного файла (без расширения)ITER — номер итерации (iter_N)Пример: NAME_ITER → Song_iter_3
Для авто-ансамбля (auto_ensemble):
NAME — имя входного файла (без расширения)TYPE — тип ансамбля (например: min_fft, avg_fft)COUNT — количество используемых моделей/файловПример: NAME_COUNT_TYPE → Song_7_min_fft
Для ручного ансамбля (manual_ensemble):
NAME — имя входного файла (без расширения)TYPE — тип ансамбля (например: min_fft, avg_fft)Пример: NAME_TYPE → Song_min_fft
NAME — имя входного файла (без расшириения)TYPE — тип инверсии (например: waveform, spectrogram)Пример: NAME_TYPE → Song_waveform
Для коррекции фазы (phase_fixer):
NAME — имя целевого файла (без расширения)
TYPE — тип операции (phase_fix)
Пример: NAME_TYPE → Song_phase_fix
| Тип | Описание |
|---|---|
avg_fft | Среднее, стабильный результат (требуются веса) |
median_fft | Медиана (эффективно от 3+ аудио) |
min_fft | Минимум, более чистый результат |
max_fft | Максимум, более полный, но "грязный" результат |
[
["имя_модели1", "основной_стем1", False, 1],
["имя_модели2", "основной_стем2", False, 2],
...
]
[
[str, str, bool, float],
[str, str, bool, float],
...
]
[
["имя_модели1", "основной_стем1", false, 1],
["имя_модели2", "основной_стем2", false, 2],
...
]
[
[str, str, bool, float],
[str, str, bool, float],
...
]
--flow имя_модели1:основной_стем_1:False:1 имя_модели2:основной_стем_2:False:2 ...
--flow str:str:bool:float str:str:bool:float
[
["имя_модели1", "основной_стем1", False],
["имя_модели2", "основной_стем2", False],
...
]
[
[str, str, bool],
[str, str, bool],
...
]
[
["имя_модели1", "основной_стем1", false],
["имя_модели2", "основной_стем2", false],
...
]
--flow имя_модели1:основной_стем_1:False имя_модели2:основной_стем_2:False ...
--flow str:str:bool str:str:bool
python app.py --share
from app import App
app = App()
app_ui = app.UI(theme, False)
app_ui.launch(
allowed_paths=["/"],
debug=True,
share=True, # Если нужно сделать общий доступ к Web-UI
server_port=7860,
server_name="0.0.0.0"
)
# Список с фильтром
python inference.py info -limit 0 -stem "vocals"
# Полный список
python inference.py info
# Обновление информации о моделях
python inference.py info -update
from inference import Separator
separator = Separator() # Инициализация класса
separator.update_info() # Обновление информации о моделях
separator.show_info(
0, # Лимит количества отображаемых моделей
"vocals", # Название стема (если указан, будут показаны только модели с данным стемом)
False # Только установленные модели (при True)
)
Информация о моделях
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Имя модели ┃ Выходные стемы ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
│ установлено │ целевой инструмент │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_inst_fno_unwa │ other, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_inst_large2_unwa │ instrument, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_inst_hyperace_unwa │ instrument, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_inst_hyperace2_unwa │ instrument, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_voc_hyperace2_unwa │ instrument, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_karaoke_becruily │ Instrumental, Vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_voctest_gabox │ Instrumental, Vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_karaoke_gabox │ other, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_karaoke_inv_gabox │ other, vocals │
├──────────────────────────────────────────┼───────────────────────────────────┤
│ bs_6stem │ bass, drums, guitar, other, │
│ │ piano, vocals │
└──────────────────────────────────────────┴───────────────────────────────────┘
python inference.py separate -i "audio.mp3" -o "output" -of mp3 -mn "bs_6stem" -tm "NAME_STEM"
from inference import Separator
separator = Separator()
model_name = "bs_6stem"
separator.download(model_name) # Скачивание модели без запуска инференса
results = separator.separate(
"audio.mp3", # Входной файл/папка
"output", # Директория вывода
"mp3", # Формат вывода
"NAME_STEM", # Шаблон имени файла
model_name # Имя модели
)
python inference.py custom_separate -i "audio.mp3" -o "output" -of mp3 -ckpt "bs_6stem.ckpt" -conf "bs_6stem_config.yaml" -mt "bs_roformer" -tm "NAME_STEM"
from inference import Separator
separator = Separator()
results = separator.custom_separate(
"audio.mp3", # Входной файл/папка
"output", # Директория вывода
"mp3", # Формат вывода
"NAME_STEM", # Шаблон имени файла
"bs_roformer", # Тип модели
"bs_6stem.ckpt", # Путь к чекпоинту
"bs_6stem_config.yaml" # Путь к конфигу
)
Пример пресета для итеративного ансамбля
# Пресет в виде списка
python inference.py iterative_ensemble -i "audio.mp3" -o "output" -of mp3 -tm "NAME_ITER" -flow "bs_6stem:vocals:False" "mbr_inst1e_unwa:vocals:False" -n 4
# С сохранением промежуточных результатов
python inference.py iterative_ensemble -i "audio.mp3" -o "output" -of mp3 -tm "NAME_ITER" -flow "bs_6stem:vocals:False" "mbr_inst1e_unwa:vocals:False" -n 4 -save_intermediate
# Пресет в виде json-файла
python inference.py iterative_ensemble -i "audio.mp3" -o "output" -of mp3 -tm "NAME_ITER" -json "iterative_flow.json" -n 4
from inference import Separator
separator = Separator()
flow = [
["bs_6stem", "vocals", True], # [модель, осн. стем, инверсия]
["mbr_inst1e_unwa", "vocals", False]
]
result_path, intermediate_files = separator.iterative_ensemble(
"audio.mp3", # Входной файл
"output", # Директория вывода
flow, # Пресет ансамбля
num_iters=4, # Количество итераций
output_format="mp3",# Формат вывода
template="NAME_ITER", # Шаблон имени файла
save_intermediate=True # Сохранять промежуточные результаты
)
print(f"Финальный результат: {result_path}")
print(f"Промежуточные файлы: {intermediate_files}")
Пример пресета для авто-ансамбля
# Пресет в виде списка списков
python inference.py auto_ensemble -i "audio.mp3" -o "output" -of mp3 -type avg_fft -tm "NAME_TYPE" -flow "bs_6stem:vocals:True:1" "mbr_inst1e_unwa:other:False:1"
# Пресет в виде json-файла
python inference.py auto_ensemble -i "audio.mp3" -o "output" -of mp3 -type avg_fft -tm "NAME_TYPE" -json "ensemble_flow.json"
from inference import Separator
separator = Separator()
flow = [
["bs_6stem", "vocals", True, 1], # [модель, осн. стем, инверсия, вес]
["mbr_inst1e_unwa", "other", False, 1]
]
result, invert_result = separator.auto_ensemble(
"audio.mp3", # Входной файл
"output", # Директория вывода
flow, # Пресет ансамбля
"NAME_TYPE", # Шаблон имени файла
"avg_fft", # Тип ансамбля
"mp3" # Формат вывода
)
python inference.py manual_ensemble -i "audio1.mp3" "audio2.mp3" -o "output" -of mp3 -type avg_fft -tm "NAME_TYPE" -w 1 1
from inference import Separator
separator = Separator()
result = separator.manual_ensemble(
["audio1.mp3", "audio2.mp3"], # Входные файлы
"output", # Директория вывода
[1, 1], # Веса
"NAME_TYPE", # Шаблон имени файла
"avg_fft", # Тип ансамбля
"mp3" # Формат вывода
)
python inference.py subtract -i1 "audio1.mp3" -i2 "audio2.mp3" -o "output" -of mp3 -tm "NAME_TYPE"
from inference import Separator
separator = Separator()
result = separator.subtract(
"audio1.mp3", # Оригинал
"audio2.mp3", # Стем
"output", # Директория вывода
"mp3" # Формат вывода
[1, 1], # Веса
False, # Использовать ли спектрограмму при вычитании?
"avg_fft", # Тип ансамбля
)
python inference.py phase_fixer -i1 "target.wav" -i2 "source.wav" -o "output" -of wav -tm "NAME_TYPE" --transfer_phase --freq_blend --low_cutoff 500 --high_cutoff 5000
from inference import Separator
separator = Separator()
result = separator.phase_fixer(
"target.wav", # Целевое аудио (амплитуда сохраняется по умолчанию)
"source.wav", # Опорное аудио (донор фазы)
"output", # Директория вывода
"wav", # Формат вывода
"NAME_TYPE", # Шаблон имени файла
transfer_magnitude=False, # Перенос амплитуды из source
transfer_phase=True, # Перенос фазы из source
freq_blend_phases=True, # Частотное смешение фаз
low_cutoff=500, # Нижняя граница смешения (Гц)
high_cutoff=5000, # Верхняя граница смешения (Гц)
prefer_float=False
)
python inference.py preset -i "audio.mp3" -o "output" -of mp3 -p "my_preset.json" -tm "NAME_STEM"
from inference import Separator
separator = Separator()
results = separator.run_preset(
"audio.mp3", # Входной файл/папка
"output", # Директория вывода
"mp3", # Формат вывода
"NAME_STEM", # Шаблон имени файла
"my_preset.json", # Путь к JSON-пресету или dict
)
Separator.__init__()) | Параметр | Тип | Описание |
|---|---|---|
source | str | None | Источник для скачивания моделей Доступные варианты: - hface, hf, huggingface (Hugging Face, по умолчанию)- github, gh (GitHub Releases, быстрее для больших файлов)- mscope, ms, modelscope (ModelScope, запасной вариант) |
custom_model_info_path | str | Path | Путь к пользовательскому файлу информации о моделях (JSON) Позволяет расширить стандартный список моделей |
custom_models_dir | str | Path | Путь к дополнительной директории, где хранятся локальные модели Используется для поиска чекпоинтов вне стандартной папки кэша |
Separator().show_info()) | Параметр | Тип | Описание |
|---|---|---|
limit | int | Лимит количества отображаемых моделей (0 или None — без лимита) |
stem | str | Название стема — показывать только модели с данным стемом |
only_installed | bool | Показывать только установленные модели |
Separator().download())| Параметр | Тип | Описание |
|---|---|---|
model_name | str | Имя модели для скачивания |
Separator().separate()) | Параметр | Тип | Описание |
|---|---|---|
input_files | str | Path | list | Путь к файлу/папке или список путей |
output_dir | str | Path | Директория для сохранения результатов |
output_format | str | Формат аудио (mp3, wav, flac и др.) |
template | str | Шаблон имени файла (ключи: NAME, STEM, MODEL) (Подробнее) |
model_name | str | Имя модели |
extract_instrumental | bool | Создание инверсии выбранных стемов (стем invert) |
use_spec_invert | bool | Вычитание из спектрограммы вместо противофазы |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
invert_plus | bool | Использует сложение невыбранных стемов при создании инструментала |
selected_stems | list | Список стемов для сохранения (если не указан — все) |
add_params | dict | Дополнительные параметры разделения |
Возвращает:
([
[имя_файла (str), [[стем (str), путь_к_файлу (str)], ...]],
...
], [строка с ошибкой для отображения в интерфейсе (str), ...])
Separator().custom_separate()) | Параметр | Тип | Описание |
|---|---|---|
input_files | str | Path | list | Путь к файлу/папке или список путей |
output_dir | str | Path | Директория для сохранения результатов |
output_format | str | Формат аудио (mp3, wav, flac и др.) |
template | str | Шаблон имени файла (ключи: NAME, STEM, MODEL) (Подробнее) |
model_type | str | Тип модели (например, bs_roformer) |
ckpt | str | Path | Путь к чекпоинту (*.ckpt) |
conf | str | Path | Путь к YAML конфигу (*.yaml) |
extract_instrumental | bool | Создание инверсии выбранных стемов |
use_spec_invert | bool | Вычитание из спектрограммы вместо противофазы |
invert_plus | bool | Использует сложение невыбранных стемов при создании инструментала |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
selected_stems | list | Список стемов для сохранения |
add_params | dict | Дополнительные параметры разделения |
Возвращает: аналогично separate()
Separator().iterative_ensemble()) | Параметр | Тип | Описание |
|---|---|---|
input_file | str | Path | Путь к входному файлу |
output_dir | str | Path | Директория для сохранения результатов |
flow | list | Пресет для ансамбля (Пример) |
num_iters | int | Количество итераций (по умолчанию: 4) |
output_format | str | Формат аудио (mp3, wav, flac и др.) |
template | str | Шаблон имени (ключи: NAME, ITER) (Подробнее) |
save_intermediate | bool | Сохранять промежуточные результаты каждой итерации |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
Возвращает: (путь_к_финальному_ансамблю, список_промежуточных_файлов)
Separator().auto_ensemble()) | Параметр | Тип | Описание |
|---|---|---|
input_file | str | Path | Путь к входному файлу |
output_dir | str | Path | Директория для сохранения результатов |
flow | list | Пресет для ансамбля (Пример) |
template | str | Шаблон имени (ключи: NAME, TYPE, COUNT) (Подробнее) |
etype | str | Тип ансамбля (avg_fft, median_fft, min_fft, max_fft) (Подробнее) |
output_format | str | Формат аудио |
use_spec_invert | bool | Вычитание из спектрограммы вместо противофазы |
save_primary_stems | bool | Сохранять основные стемы в output_dir |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
Возвращает: (путь_к_ансамблю, путь_к_инверсии, список_основных_стемов)
Separator().manual_ensemble()) | Параметр | Тип | Описание |
|---|---|---|
input_files | list | Список путей к аудиофайлам |
output_dir | str | Path | Директория для сохранения результата |
weights | list | Веса файлов (обязательно для avg_fft) |
template | str | Шаблон имени (ключи: NAME, TYPE) (Подробнее) |
etype | str | Тип ансамбля (avg_fft, median_fft, min_fft, max_fft) (Подробнее) |
output_format | str | Формат аудио |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
Возвращает: str — путь к результату ансамбля
Separator().subtract()) | Параметр | Тип | Описание |
|---|---|---|
audio1 | str | Path | Путь к оригинальному файлу |
audio2 | str | Path | Путь к файлу стема |
output_dir | str | Path | Директория для сохранения результата |
output_format | str | Формат аудио |
use_spec_invert | bool | Вычитание из спектрограммы вместо противофазы |
template | str | Шаблон имени (ключи: NAME, TYPE) (Подробнее) |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
Возвращает: str — путь к результату вычитания
Separator().phase_fixer()) | Параметр | Тип | Описание |
|---|---|---|
target | str | Path | Путь к целевому аудиофайлу (амплитуда сохраняется по умолчанию) |
source | str | Path | Путь к исходному аудиофайлу (донор фазы и опционально амплитуды) |
output_dir | str | Path | Директория для сохранения результата |
output_format | str | Формат аудио |
template | str | Шаблон имени (ключи: NAME, TYPE) (Подробнее) |
transfer_magnitude | bool | Переносить амплитуду из source (по умолчанию: False) |
transfer_phase | bool | Переносить фазу из source (по умолчанию: True) |
freq_blend_phases | bool | Плавное частотное смешение фаз между границами (по умолчанию: True) |
low_cutoff | int | Нижняя граница частотного смешения в Гц (по умолчанию: 500) |
high_cutoff | int | Верхняя граница частотного смешения в Гц (по умолчанию: 5000) |
prefer_float | bool | Предпочитать высокую точность вывода (Используемые форматы сэмплов) |
Возвращает: str — путь к результату коррекции фазы
Separator().run_preset()) | Параметр | Тип | Описание |
|---|---|---|
input_files | str | Path | list | Путь к файлу/папке или список путей |
output_dir | str | Path | Директория для сохранения результатов |
output_format | str | Формат аудио |
template | str | Шаблон имени файла (ключи: NAME, STEM, MODEL) (Подробнее) |
preset | str | Path | dict | Путь к JSON-файлу пресета или словарь с графом обработки |
prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
selected_stems | list | Список стемов для сохранения (фильтрация нод типа output_file) |
add_params | dict | Дополнительные параметры разделения для нод типа separate |
Возвращает: аналогично separate()
первичные аргументы - inference.py info
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-u, -update, --update | update | bool | Обновить кэш информации о моделях из репозитория |
-clear, -clear_cache, -clear-cache, --clear_cache, --clear-cache | clear_cache | bool | Очистить кэш информации о моделях |
-mn, -model, --model_name, --model-name | model_name | str | Имя модели для скачивания (по умолчанию: bs_6stem) |
-dw, -download, --download | download | bool | Скачать указанную модель (требуется -mn) |
-l, -limit, --limit | limit | int | Лимит количества отображаемых моделей (0 или None - без лимита) |
-s, -stem, --stem | stem | str | Показать только модели, которые содержат указанный стем (например: vocals, drums) |
-oi, -installed, --only_installed, --only-installed | only_installed | bool | Показывать только установленные (скачанные) модели |
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
--add_custom_model_info_path, --add-custom-model-info-path, --model_info, --model-info, -minfo | custom_model_info_path | str | Путь к пользовательскому файлу информации о моделях (JSON) Позволяет расширить стандартный список моделей |
--add_custom_models_dir, --add-custom-models-dir, --models_dir, --models-dir, -mdir | custom_models_dir | str | Путь к дополнительной директории, где хранятся локальные модели Используется для поиска чекпоинтов вне стандартной папки кэша |
--model_source, --model-source, -msrc | model_source | str | Источник для скачивания моделей Доступные варианты: - hface, hf, huggingface (Hugging Face, по умолчанию)- github, gh (GitHub Releases, быстрее для больших файлов)- mscope, ms, modelscope (ModelScope, запасной вариант) |
первичные аргументы - inference.py separate
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i, --i, -input, --input, --input_files, --input-files | input | str | Path | list | Путь к входному аудиофайлу, папке с файлами или список путей |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, STEM, MODEL. Пример: NAME_STEM_MODEL (Подробнее) |
-mn, -model, --model_name, --model-name | model_name | str | Имя модели для разделения (по умолчанию: bs_6stem) |
-inst, -ext_inst, -ext-inst, --extract_instrumental, --extract-instrumental | extract_instrumental | bool | Создать инверсию выбранных стемов (инструментал) - стем с именем 'invert' |
-ispec, -spec_invert, -spec-invert, --use_spec_invert, --use-spec-invert | use_spec_invert | bool | Использовать вычитание из спектрограммы вместо противофазы при создании инверсии |
-iplus, -invert_plus, -invert-plus, --invert_plus, --invert-plus | invert_plus | bool | Использует сложение невыбранных стемов при создании инструментала |
-st, --st, -stems, --stems, --selected_stems, --selected-stems | selected_stems | list | Список стемов для сохранения (например: vocals drums). Если не указаны - сохраняются все стемы |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer_float | prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
--preserve_side | preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
--{param_name} | add_params.{param_name} | int/float/str/bool | Дополнительный параметр разделения |
первичные аргументы - inference.py custom_separate
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i, --i, -input, --input, --input_files, --input-files | input | str | Path | list | Путь к входному аудиофайлу, папке с файлами или список путей |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, STEM, MODEL. Пример: NAME_STEM_MODEL (Подробнее) |
-mt, -mtype, --model_type, --model-type | model_type | str | Тип модели (например: bs_roformer, demucs, mdx). По умолчанию: bs_roformer |
-ckpt, --ckpt, -checkpoint, --checkpoint, --checkpoint_path, --checkpoint-path | checkpoint_path | str | Path | Путь к файлу чекпоинта модели (*.ckpt или *.pth) |
-conf, --conf, -config, --config, --config_path, --config-path | config_path | str | Path | Путь к конфигурационному файлу модели (*.yaml) |
-inst, -ext_inst, -ext-inst, --extract_instrumental, --extract-instrumental | extract_instrumental | bool | Создать инверсию выбранных стемов (инструментал) - стем с именем 'invert' |
-ispec, -spec_invert, -spec-invert, --use_spec_invert, --use-spec-invert | use_spec_invert | bool | Использовать вычитание из спектрограммы вместо противофазы при создании инверсии |
-iplus, -invert_plus, -invert-plus, --invert_plus, --invert-plus | invert_plus | bool | Использует сложение невыбранных стемов при создании инструментала |
-st, --st, -stems, --stems, --selected_stems, --selected-stems | selected_stems | list | Список стемов для сохранения (например: vocals drums). Если не указаны - сохраняются все стемы |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer_float | prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
--preserve_side | preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
--{param_name} | add_params.{param_name} | int/float/str/bool | Дополнительный параметр разделения |
первичные аргументы - inference.py iterative_ensemble
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i, --i, -input, --input, --input_file, --input-file | input | str | Path | Путь к входному аудиофайлу |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, ITER. Пример: NAME_ITER (Подробнее) |
-n, -iters, --num_iters, --num-iters | num_iters | int | Количество итераций (по умолчанию: 4). На каждой итерации применяется весь набор моделей к остатку от предыдущей итерации |
-save_intermediate, -save-intermediate, --save_intermediate, --save-intermediate | save_intermediate | bool | Сохранять промежуточные результаты каждой итерации |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer_float | prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
--preserve_side | preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
-flow, --flow | flow | list | Пресет в виде строк: МОДЕЛЬ:ОСНОВНОЙ_СТЕМ:ИНВЕРСИЯ. (Пример) |
-json, -preset, -preset_json, -preset-json, --preset_json, --preset-json | preset | str | Путь к JSON-файлу с пресетом ансамбля (Пример) |
первичные аргументы - inference.py auto_ensemble
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i, --i, -input, --input, --input_file, --input-file | input | str | Path | Путь к входному аудиофайлу |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, TYPE, COUNT. Пример: NAME_COUNT_TYPE (Подробнее) |
-t, -type, -etype, --ensemble_type, --ensemble-type | ensemble_type | str | Тип ансамбля: avg_fft, median_fft, min_fft, max_fft (по умолчанию: avg_fft; Подробнее) |
-ispec, -spec_invert, -spec-invert, --use_spec_invert, --use-spec-invert | use_spec_invert | bool | Использовать вычитание из спектрограммы вместо противофазы при создании инверсии |
-save_stems, -save-stems, -save_primary_stems, --save-primary-stems | save_primary_stems | bool | Сохранять основные стемы в выходную директорию |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer_float | prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
--preserve_side | preserve_side | bool | Перевести боковые каналы в моно (Для моделей, работающих только с моно сигналом) |
-flow, --flow | flow | list | Пресет в виде строк: МОДЕЛЬ:ОСНОВНОЙ_СТЕМ:ИНВЕРСИЯ:ВЕС. (Пример) |
-json, -preset, -preset_json, -preset-json, --preset_json, --preset-json | preset | str | Путь к JSON-файлу с пресетом ансамбля (Пример) |
первичные аргументы - inference.py manual_ensemble
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i, --i, -input, --input, --input_files, --input-files | input | list | Список путей к аудиофайлам |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, TYPE. Пример: NAME_TYPE (Подробнее) |
-t, -type, -etype, --ensemble_type, --ensemble-type | ensemble_type | str | Тип ансамбля: avg_fft, median_fft, min_fft, max_fft (по умолчанию: avg_fft; Подробнее) |
-w, -weights, --weights | weights | list | Веса для каждого аудиофайла (обязательно для типа avg_fft). Пример: -w 1.0 0.5 0.2 |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer_float | prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
первичные аргументы - inference.py subtract
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i1, --i1, -input1, --input1, --input_file1, --input-file1 | input_1 | str | Path | Путь к оригинальному аудиофайлу (из которого вычитаем) |
-i2, --i2, -input2, --input2, --input_file2, --input-file2 | input_2 | str | Path | Путь к аудиофайлу стема (который вычитаем) |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, TYPE. Пример: NAME_TYPE (Подробнее) |
-ispec, -spec_invert, -spec-invert, --use_spec_invert, --use-spec-invert | use_spec_invert | bool | Использовать вычитание из спектрограммы вместо противофазы при создании инверсии |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer_float | prefer_float | bool | Предочитает высокую точность вывода (Используемые форматы сэмплов) |
первичные аргументы - inference.py phase_fixer
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i1, --i1, -target, --target, --target_file, --target-file | target | str | Path | Путь к целевому аудиофайлу. По умолчанию его амплитуда сохраняется, а фаза берётся из source |
-i2, --i2, -source, --source, --source_file, --source-file | source | str | Path | Путь к исходному аудиофайлу. Используется как донор фазы, а при --transfer_magnitude — и амплитуды |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, TYPE. Пример: NAME_TYPE (Подробнее) |
-tmag, --transfer_magnitude, --transfer-magnitude | transfer_magnitude | bool | Переносить амплитуду из исходного файла (по умолчанию выключено) |
-nphase, --transfer_phase, --transfer-phase | transfer_phase | bool | Включить перенос фазы из исходного файла |
-nblend, --freq_blend, --freq-blend | freq_blend | bool | Включить частотное смешение фаз |
-lc, --low_cutoff, --low-cutoff | low_cutoff | int | Нижняя граница частотного смешения фаз в Гц (по умолчанию: 500) |
-hc, --high_cutoff, --high-cutoff | high_cutoff | int | Верхняя граница частотного смешения фаз в Гц (по умолчанию: 5000) |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer-float | prefer_float | bool | Предпочитать высокую точность вывода (Используемые форматы сэмплов) |
первичные аргументы - inference.py preset
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-i, --i, -input, --input, --input_files, --input-files | input | str | Path | list | Путь к входному аудиофайлу, папке с файлами или список путей |
-o, -out, -output, --output, --output_dir, --output-dir | output_dir | str | Path | Директория для сохранения результатов (по умолчанию: текущая папка) |
-of, -output_fmt, --output_format, --output-format | output_format | str | Формат выходного аудио. Доступны: mp3, wav, flac и др. (по умолчанию: mp3) |
-tm, -tmplt, --template | template | str | Шаблон имени выходного файла. Доступные ключи: NAME, STEM, MODEL. Пример: NAME_STEM_MODEL (Подробнее) |
-p, -preset, --preset, --preset_path, --preset-path | preset | str | Path | Путь к JSON-файлу с пресетом (графом обработки) |
-st, --st, -stems, --stems, --selected_stems, --selected-stems | selected_stems | list | Список стемов для сохранения (например: vocals drums). Если не указаны - сохраняются все стемы из пресета |
-hi-prec, -hi_prec, -hi-precision, --hi_precision, -pref-flt, -pref_flt, --prefer_float, --prefer-float | prefer_float | bool | Предпочитать высокую точность вывода (Используемые форматы сэмплов) |
--{param_name} | add_params.{param_name} | int/float/str/bool | Дополнительный параметр разделения (применяется к нодам типа separate внутри пресета) |
первичные аргументы - app.py
| Аргументы | Параметр | Тип | Описание |
|---|---|---|---|
-s, -share, --share, --public, --gradio_share, --gradio-share | share | bool | Создать публичную ссылку через Gradio Share (для доступа из интернета) |
-p, -port, --port, --server_port, --server-port | port | int | Порт для запуска сервера (по умолчанию: 7860) |