Выполните первый анализ
Для кого: Для тех, кто уже просканировал треки и хочет искать по результатам моделей. Задача: Безопасно выбрать семейства анализа и понять, какие возможности они открывают. Тип: Учебная инструкция
Сканирование сообщает приложению, какие файлы у вас есть. Анализ даёт несколько ограниченных способов сравнивать их звучание. Полезный результат — не новый аудиофайл, а локальные данные, с помощью которых можно строить короткие списки, применять фильтры и создавать упорядоченные черновики.
Задачи анализа читают аудио или уже сохранённые значения и записывают результаты в SQLite. Исходные аудиофайлы они не переписывают.
Выбирайте анализ по желаемому результату
| Что вы хотите сделать | Что запустить | Что получите |
|---|---|---|
| Начать с трека и найти широкое звуковое окружение | MERT | Ранжированных кандидатов по референсному треку (seed) |
| Управлять поиском через ритм, фактуру, динамику, гармонию или темп | SONARA | Поиск по понятным признакам и данные о переходах |
| Описать желаемое звучание словами | CLAP | Кандидатов из текстового поиска |
| Создать SET или сравнить несколько взглядов моделей | SONARA, MAEST, MERT, CLAP | Кандидатов с полным набором данных для SET и Hybrid |
| Сравнить соседей ещё одной модели в LAB | MuQ | Отдельную колонку MuQ в Reference Compare |
| Повторно использовать собственный размеченный признак | CLASSIFIERS | Сохранённые оценки для фильтров CLASS и необязательного влияния на SET или Hybrid |
Для первого эксперимента проанализируйте 25 знакомых треков. Попробуйте поиск и только после этого решайте, какие семейства стоит запускать для всей фонотеки.
Что хранит и открывает каждое семейство
| Семейство | Что записывает | Что включает |
|---|---|---|
| SONARA | подписанные результаты core, timeline, embedding и fingerprint | поиск по признакам, оценку темпа с учётом уверенности, определение Camelot, порядок SET, диагностику переходов и входы классификаторов |
| MAEST | жанры и синкопированность в Core, эмбеддинг в Artifacts | показ жанров, запись жанрового тега, источник MAEST для SET и Hybrid |
| MERT | эмбеддинг в Artifacts | поиск по референсному треку, SET, Hybrid и данные для Audio Dedup |
| MuQ | эмбеддинг в Artifacts | данные LAB Reference Compare; без интеграции с поиском MERT/SONARA, SET и Hybrid |
| CLAP | аудиоэмбеддинг в Artifacts | текстовый поиск, SET, Hybrid и данные для Audio Dedup |
| CLASSIFIERS | строки Core classifier_scores | фильтры CLASS, влияние на SET и диагностику Hybrid |
Расчёт классификаторов — отдельный этап. Каждый опубликованный манифест задаёт собственные требования к SONARA и MAEST/MERT/CLAP. Треки без полного набора входных данных считаются неготовыми, а не ошибочными.
Анализ из CLI
Сначала установите дополнительные зависимости. В новом комплекте v7 до первой задачи SONARA нужно активировать загруженный релиз. Создайте доступный для записи каталог резервных копий, подготовьте неизменяемый релиз с четырьмя результатами, а затем выполните:
mkdir .\backups
dj-sim prepare-sonara-release --db .\data\library.sqlite --backup-dir .\backups --confirm "PREPARE SONARA RELEASE"
dj-sim analyze --models sonara --sonara-outputs core,timeline,embedding,fingerprint --limit 25 --db .\data\library.sqlite
dj-sim analyze --models maest,mert,muq,clap --limit 25 --db .\data\library.sqlite
dj-sim analyze-classifiers --db .\data\library.sqlite
dj-sim analyze-pipeline --stages sonara,ml,classifiers --sonara-outputs core,timeline,embedding,fingerprint --db .\data\library.sqliteПодготовка выводит и активирует точные контракты core, timeline, embedding и fingerprint. Она проверяет резервные копии Core и Artifacts и записывает квитанцию для продолжения после прерывания, прежде чем анализ сможет записывать данные этого релиза.
Полезные варианты:
dj-sim analyze --models sonara --sonara-outputs core,timeline,embedding,fingerprint --db .\data\library.sqlite
dj-sim analyze --models maest,mert,muq,clap --device auto --top-k 3 --track-batch-size 8 --inference-batch-size 16 --db .\data\library.sqlite--modelsпринимает через запятуюsonara,maest,mert,muqиclap.--deviceпринимаетauto,cpuилиcuda.--top-kсохраняет1..10жанровых меток MAEST для трека.--track-batch-sizeзадаёт1..64декодированных треков в партии задачи. По умолчанию —8.--inference-batch-sizeзадаёт1..128примеров за проход модели MAEST, MERT, MuQ и CLAP. По умолчанию —16.--sonara-batch-sizeзадаёт1..16путей в нативной партии SONARA. По умолчанию —8.--diagnosticsдобавляет в файловый журнал сведения о резервном декодировании и времени партий.
MuQ входит в необязательный набор ml и загружает официальные веса OpenMuQ/MuQ-large-msd-iter. Приложение передаёт MuQ только аудио float32 с частотой 24 кГц. Поддерживаются CPU и CUDA; для полной фонотеки рекомендуется CUDA. Эмбеддинги MuQ используются в LAB Reference Compare, но не поступают в SET или Hybrid.
Чтобы проанализировать всю фонотеку из CLI, не указывайте --limit.
Состояние интерфейса
Бэкенд Python и CLI реализуют контракт анализа v7. Клиент React ещё не перенесён на новые структуры базы, идентичности трека, сброса и результатов. Не считайте текущие элементы или существующий frontend/dist совместимыми с этим сценарием.
Используйте CLI или API v7. SONARA получает пути нативными партиями и декодирует их через Symphonia внутри sonara.analyze_batch(). Загрузчик FFmpeg проекта, analyze_signal и резервный путь по одному файлу не используются. ML-модели продолжают использовать общий декодер FFmpeg.
Размер партии SONARA определяет число одновременных нативных чтений полных файлов, а не размер ML-инференса. Для фонотеки на одном HDD оставьте значение по умолчанию, если измеренный пилотный запуск не подтвердил пользу большего числа.
Уже проанализированные треки
Задачи выбирают только отсутствующие результаты отмеченных семейств. SONARA независимо материализует core, timeline, embedding и fingerprint из одного неизменяемого релиза с четырьмя контрактами, поэтому добавление другого активного результата позже не заменяет core. Завершённые результаты других семейств пропускаются.
Неподготовленный релиз SONARA блокируется. Описанная выше подготовка обязательна даже перед первым анализом SONARA в новом комплекте v7. Полная последовательность резервного копирования, активации, повторного анализа и пересчёта классификаторов приведена в подготовке и пересоздании релиза SONARA.
Границы сброса
- Сброс SONARA удаляет активные результаты Core и Artifacts и зависимые оценки классификаторов. Метки и обратная связь сохраняются.
- Сброс MAEST удаляет метаданные и эмбеддинги MAEST.
- Сброс MERT, MuQ или CLAP удаляет эмбеддинги соответствующего ключа.
- Сброс CLASSIFIERS удаляет только оценки выбранных классификаторов.
Все операции сброса изменяют только SQLite.