Перейти к содержанию

Подготовка и пересоздание релиза SONARA

Для кого: Пользователи, активирующие текущий контракт SONARA в библиотеке схемы v7. Задача: Сохранить комплект, активировать один строгий релиз и пересоздать зависимые результаты. Тип: Сценарий

Этот сценарий начинается с нового комплекта схемы v7. Он не обновляет базу v6: среда отклоняет схемы не v7, а команд migrate-v7 и migrate-schema-v7 больше нет.

1. Проверьте комплект

Для нового пути Core создаются:

text
library.sqlite
library.artifacts.sqlite

Необязательный library.evaluation.sqlite появляется лишь тогда, когда он нужен сценарию оценки. Core и Artifacts обязательны и используют один catalog_uuid.

2. Сначала устраните ошибку среды

SONARA и адаптеры моделей блокируют работу, если загруженные версии отличаются от контракта. Набор ML закрепляет transformers==5.13.0 и huggingface-hub==1.22.0. Синхронизируйте среду до анализа ML. Не обходите предварительную проверку.

Отдельно проверьте SONARA:

powershell
python -c "import sonara; print(sonara.__version__)"

Ожидается версия 0.2.9.

3. Подготовьте релиз

Создайте существующий доступный для записи каталог резервных копий, остановите конкурирующую работу с выбранной базой и выполните:

powershell
dj-sim prepare-sonara-release --db .\data\library.sqlite --backup-dir .\backup --confirm "PREPARE SONARA RELEASE"

Команда сама определяет среду и четыре результата: core, timeline, embedding, fingerprint. Передать свой хеш релиза или подмножество результатов нельзя. Она проверяет пару резервных копий Core и Artifacts и выполняет упорядоченную активацию с квитанцией. Прерванную операцию можно продолжить, а несовпадение каталога, копий, квитанции или среды блокирует работу.

Подготовка удаляет прежние строки SONARA и зависимые оценки классификаторов до активации новых контрактов. Независимые эмбеддинги, метки, обратная связь, отметки и аудиофайлы сохраняются.

4. Выполните ограниченный пилот

Начните со знакомых файлов:

powershell
dj-sim analyze --models sonara --sonara-outputs core,timeline,embedding,fingerprint --limit 100 --db .\data\library.sqlite

Текущий контракт: SONARA 0.2.9, схема результата 4, режим playlist, частота 22050, диапазон BPM 70..180, ревизия проекта 6. Нативная партия по умолчанию равна 8; --sonara-batch-size принимает 1..16.

Успешный пилот — точка остановки для проверки, а не разрешение на запуск всей фонотеки. Проверьте ошибки, характерные результаты поиска и целостность баз до решения о продолжении.

5. Завершите выбранные результаты

После явного разрешения на большой запуск уберите --limit:

powershell
dj-sim analyze --models sonara --sonara-outputs core,timeline,embedding,fingerprint --db .\data\library.sqlite

core включается всегда. Необязательные результаты можно запросить позднее; планировщик проверяет каждый контракт отдельно.

6. Переобучите и опубликуйте классификаторы

Среда принимает манифест версии 2. Текущие опубликованные артефакты в models/classifiers/ используют версию 1, поэтому расчёт заблокирован. После полного покрытия нужных входов переобучите и опубликуйте каждый затронутый профиль, затем выполните:

powershell
dj-sim analyze-classifiers --db .\data\library.sqlite

Задача читает только сохранённые входы и записывает совместимые пары классификатор–трек. Она не декодирует и не изменяет аудио.

7. Используйте актуальную поверхность

Бэкенд и CLI реализуют контракт v7. Перенос React отложен, поэтому поведение текущего интерфейса не доказывает готовность API v7. Проверяйте CLI, ответы API, целевые тесты и целостность SQLite.

Документация локального инструмента анализа музыкальной библиотеки.