MuScriptor Audio2MIDI Web UI は、音声からマルチトラック MIDI を生成するローカル Gradio アプリケーションです。
small、medium、large の公式 MuScriptor モデルを選び、CPU、Linux CUDA、Windows DirectML で実行できます。
このプロジェクトは独立した非公式コミュニティラッパーです。
MuScriptor、Kyutai、Mirelo、または公式モデル配布者による承認、推薦、保証を意味しません。
モデル重み、入力音声、生成 MIDI はこの source-only 配布物に含まれません。
初期実装は exveria1015、repository stewardship と release coordination は Eonshore が担当します。
詳しくは CONTRIBUTORS.md を確認してください。
使用するモデルは、公式の gated model だけです。
初回取得の前に、使うモデルのページで利用条件を確認し、本人の Hugging Face アカウントで受諾してください。
その後、このプロジェクトの仮想環境で認証します。
uv run hf auth login
uv run hf auth whoami認証できない場合、Web UI は公式モデルページと hf auth login を案内して停止します。
非公式 mirror へのフォールバックは行いません。
モデル参照は公式リポジトリの既定 revision を追います。
再現性が必要な検証では、実際に解決した model revision と weight hash を記録してください。
token は issue、pull request、commit、ログ、音声ファイル名へ貼り付けないでください。
Python 3.12 と uv を使用します。
uv python install 3.12
uv sync --locked --group dev
uv run muscriptor-webuiCUDA 12.4 用の PyTorch 2.4.1 wheel を使用します。
uv python install 3.12
uv sync --locked --extra cuda --group dev
uv run --extra cuda muscriptor-webuiuv python install 3.12
uv sync --locked --extra directml --group dev
uv run --extra directml muscriptor-webui --inbrowsercuda と directml の extra は同時に指定できません。
依存関係は platform ごとに uv.lock へ固定されています。
pip を使う場合は、Linux CUDA 構成を固定した requirements.txt を利用できます。
python3.12 -m venv .venv
source .venv/bin/activate
python -m pip install -r requirements.txt
muscriptor-webui既定の URL は http://127.0.0.1:7860 です。
音声を選び、モデルと backend を選択してから「Audio2MIDI を実行」を押します。
最初の確認には small と短い音声を使用してください。
WAV、FLAC、MP3 などの入力を受け付けます。
モデルの重みは F32 で、small は約 0.4 GB、medium は約 1.2 GB、large は約 5.6 GB が目安です。
推論には KV cache と一時 tensor の追加メモリが必要です。
| Backend | 対象 host | 位置付け | 実モデルの確認 |
|---|---|---|---|
| CPU | Linux、Windows | 最小構成と切り分け | uv run python scripts/probe_small.py --backend cpu |
| CUDA | Linux x86_64、NVIDIA GPU | 推奨 GPU 経路 | uv run --extra cuda python scripts/probe_small.py --backend cuda |
| DirectML | Windows x64 | 実験的 GPU 経路 | uv run --extra directml python scripts/probe_small.py --backend directml |
DirectML では safetensors を PrivateUse1 デバイスへ直接ロードしません。
重みは CPU で読み込み、複素数 STFT を使う mel 前処理を CPU に残し、mel projection と Transformer を DirectML で実行します。
DirectML は Preview 相当で演算子 fallback もあり得るため、実機では CPU 経路と結果を比較してください。
--host 0.0.0.0 と --share は、信頼できない相手へアップロードと API の入口を公開し得ます。
公開ホスティングはこのプロジェクトのサポート範囲外です。
詳細は SECURITY.md を確認してください。
モデル重みを取得しない自動検証は次のとおりです。
uv lock --check
uv sync --locked --group dev
uv run ruff check .
uv run pytest
uv run python scripts/smoke.py --backend cpu
uv build
uv run python scripts/check_release.py --artifacts-dir dist- CPU は、モデル重みを使わない tensor 演算とローカル Gradio の起動・HTTP 応答を Linux で確認しています。
- Linux CUDA は、NVIDIA GeForce GTX 1660 SUPER、PyTorch 2.4.1+cu124、CUDA 12.4 で、モデル重みを使わない tensor 演算とローカル Gradio の起動・HTTP 応答を確認しています。
- 公式 gated model を認証済み環境で取得する one-forward は、公開時点では実行していません。したがって、実モデルによる Audio-to-MIDI 出力の品質や完全な推論成功を検証済みとは扱いません。
- Windows DirectML の実機経路と、DirectML 上の公式モデル one-forward は、公開時点では実行していません。DirectML 対応は実験的な実装と検証手順として提供します。
この未検証範囲を解消する場合は、モデル条件を本人が受諾した host で backend validation の receipt を取得してください。
ここで生成する wheel と source distribution は内容検査用です。
GitHub Releases や PyPI での配布は、依存ライセンス台帳と SBOM を含む別の release review を通してください。
公式モデルの one-forward は別の手動検証であり、上記の自動ゲートには含まれません。
モデルの利用条件を本人が受諾した host で、backend validation の手順を実行してください。
既存の DirectML probe は scripts/probe_small_directml.py として互換性を保っています。
これは汎用 probe に DirectML を既定として渡す entry point です。
ONNX の設計評価は docs/onnx-feasibility.md にあります。
Audio-to-MIDI 全体を単一 ONNX にするのではなく、Transformer の prefill と decode_step を分ける検証方針です。
ラッパーコードは MIT License です。
固定した上流 MuScriptor コードは MIT License です。
公式モデル重みは CC BY-NC 4.0 と各モデルページ固有の条件に従います。
wrapper の MIT License は、モデル重みまたは生成物の商用利用権、非侵害保証、追加の利用許諾を与えません。
権利を持つ音源だけを入力し、生成 MIDI と後続利用について必要な権利を確認してください。
詳しい区分は THIRD_PARTY_NOTICES.md を参照してください。
認証情報、音声、MIDI、cache の取り扱いは SECURITY.md を確認してください。
寄与のライセンスと権利確認は CONTRIBUTING.md を確認してください。
credit と repository stewardship は CONTRIBUTORS.md を確認してください。
公開判断、自動ゲート、既知の未検証項目、GitHub 上の公開状態は docs/release-readiness.md に分けて記録しています。