モデル / データセット
NeptuneHub/AudioMuse-AI avatar
NeptuneHub/AudioMuse-AI

AudioMuse-AI を採用すべきか: 音響解析でプレイリストを作る自己ホスト型ツールの実像

AudioMuse-AI uses sonic analysis to rediscover forgotten songs, uncover hidden connections in your music library, and generate intelligent playlists for Navidrome, Jellyfin, LMS, Lyrion, Emby and Plex: no metadata or external services required.

スター 2,594フォーク 146PythonAGPL-3.0

ひと目でわかる

これは何?
AudioMuse-AI はメタデータや外部APIに頼らず、音声そのものの解析からクラスタリング、類似曲探索、テキスト検索、歌詞検索までを行う自己ホスト型アプリケーションである。Flask と Worker の2コンテナ構成、PostgreSQL キュー、AGPL-3.0 という条件が、導入判断のどこに効いてくるかを整理する。
誰に向いている?
すでに Navidrome、Jellyfin、LMS、Lyrion、Emby、Plex のいずれかを自己ホストし、Docker か Kubernetes を運用でき、ライブラリの音響解析を一度走らせる時間とCPU/GPUを確保できる人には向いている。逆に、メタデータだけで足りている人、解析パイプラインのメンテナンスを引き受けたくない人、AGPL-3.0 の条件が自社の配布形態と噛み合わない人には向かない。
商用利用できる?
厳しい条件付きでできます。AGPL-3.0 はネットワーク型コピーレフトのライセンスで、改変版をホスティングサービスなどとしてネットワーク越しに利用させる場合、その利用者にソースコードを同じライセンスで提供する必要があります。
今もメンテナンスされている?
されています。直近 1 日以内に新しいコミットがあります。
何の言語で書かれている?
主に Python です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月15日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

メタデータではなく音で曲を探すという問題設定

多くの音楽サーバーはタグに依存している。アーティスト名、アルバム名、ジャンル、年。タグが欠けていれば検索から漏れ、ジャンル表記が揺れていればプレイリストは崩れる。AudioMuse-AI が解こうとしているのはこの部分で、README は「メタデータや外部APIに頼らず」音響解析で忘れられた曲を再発見し、プレイリストを生成すると説明している。対象読者は、自分のライブラリを大量に抱え、タグ付けが不完全で、外部サービスに音源を送りたくない自己ホスト派である。クラスタリング、Music Map、Song Paths、Sonic Fingerprint、Song Alchemy、Text Search、Lyrics Search といった機能は、いずれもこの前提の上に載っている。つまり検索キーがタグから音響特徴量と歌詞に置き換わる。

Flask と Worker、そして PostgreSQL キューという構成

README によれば、コアアプリケーションは Flask コンテナと Worker コンテナを動かして各機能を実行する。解析は重い処理なので、リクエストを直接処理せずキューに積む設計だ。v3.2.0 で PostgreSQL 上のキューが実装され、Redis は不要になったと NEWS に書かれている。これは運用対象が1つ減るという意味で実務的な変更で、docker-compose の例も新しいものを参照するよう案内されている。v3.0.0 では単一デプロイに複数のメディアサーバーを接続でき、サーバー間の重複検出によって同じ曲は一度だけ解析され、結果を全サーバーで共有すると説明されている。ライブラリを複数のサーバーに分散させている構成では、この重複排除が解析時間に直接効く。アーキテクチャの詳細は docs/ARCHITECTURE.md と docs/ALGORITHM.md に分離されており、README 自体は機能一覧と導線に徹している。

Docker Compose と Kubernetes、ネイティブアプリの選択肢

起動経路は複数用意されている。Docker Compose または Podman によるローカル実行、Kubernetes クラスタへの大規模配備、macOS・Windows・Linux 向けのネイティブアプリケーション。Kubernetes を使う場合は別リポジトリの AudioMuse-AI Helm Chart が案内されている。イメージは AMD64 と ARM64 に対応し、v3.3.0 で GB10 GPU 向けの -nvidia-arm イメージが追加されたが、NEWS はこれを experimental と明記している。GPU を使う場合の手順は docs/GPU.md、パラメータは docs/PARAMETERS.md、認証は docs/AUTH.md に分かれている。設定キーの実名や Compose ファイルの中身は README には載っておらず、各ドキュメントを開かないと確定できない。ここは導入前に必ず一次資料を確認すべき箇所である。

プラグインの永続ボリュームという落とし穴

v2.6.0 でサードパーティプラグインが追加された。開発方法は docs/PLUGIN.md、配布場所は公式のサードパーティカタログとして案内されている。ここで README がわざわざ注意書きを入れている点が重要で、プラグインシステムは Flask と Worker の両コンテナに永続ボリュームをマウントする必要があり、そうしないとコンテナ再起動のたびにインストール済みプラグインが失われると書かれている。解析結果だけでなくプラグインの状態もボリューム設計に依存するということで、Kubernetes で ephemeral な Pod を前提に組んでいる場合、この一文は構成を見直す理由になる。プラグインを使わないなら関係は薄いが、使う予定があるならストレージ設計を先に決めておく必要がある。

歌詞検索が72言語に限定される理由と影響

Lyrics Search はライブラリをテーマや物語、意味で検索する機能で、「love songs」のように音ではなく内容から探せる。ただし README は対応言語を72言語に限定し、その一覧を明示している。日本語、中国語、韓国語、ヒンディー語、アラビア語などが含まれる一方、一覧にない言語の歌詞は検索対象にならない。これは実装上の制約であり、多言語ライブラリを抱える人にとっては機能の一部が使えないことを意味する。Text Search の側はムード、楽器、ジャンルを含むテキストで検索する機能として説明されており、歌詞検索とは別物である。この2つを混同すると、対応言語の制約を誤って Text Search にも適用してしまうので注意したい。

AGPL-3.0 であることの実務的な意味

ライセンスは AGPL-3.0。ネットワーク越しに利用させる形で改変版を提供する場合、ソースの開示が求められる点が GPL 系との違いである。自分や家族のために自宅サーバーで動かす分には通常の利用として扱えるが、改変したものを第三者にサービスとして提供する場合は条件が変わる。ここで注意したいのは、Elestio がマネージドクラウドサービスとして AudioMuse-AI を提供していると README が案内していることだ。同じソフトウェアでも、自分でホストする場合と誰かにホストしてもらう場合では、ライセンス上の立場が異なる。法的判断は個別事情によるので、配布や再提供を伴う使い方をするなら専門家に確認するべきで、この記事は法的助言ではない。

Navidrome プラグインとの違い、そして向かないケース

代替として最も比較しやすいのは Navidrome の標準機能と、その周辺のプラグインである。Navidrome 本体はタグベースの検索とスマートプレイリストを提供し、AudioMuse-AI も Navidrome プラグインを別リポジトリで用意している。アプローチの差は明確で、Navidrome 標準はタグとルールに依存し、AudioMuse-AI は音響特徴量の解析結果に依存する。タグが整備された小規模ライブラリなら標準機能で十分で、解析パイプラインを別途運用する理由は薄い。逆にタグが崩壊している大規模ライブラリでは、音響ベースのほうが拾える曲が多い。向かないのは、解析を一度も走らせずに使い始めたい人、Worker のリソースを見積もりたくない人、歌詞検索を一覧にない言語で使いたい人である。

メンテナンスコストとアップグレードの見取り図

リリースの刻みは速い。v3.5.2 が 2026-09-04、v3.5.1 が 2026-08-30、v3.5.0 が 2026-08-27 と、月内に複数回出ている。v3.5.1 は DCLAP Text Search Concept Weights、v3.5.0 は Hyperbolic Path と、機能追加が継続している。追従する側から見ると、マイナーバージョンごとに解析パラメータや挙動が動く可能性を想定しておく必要がある。docs/PARAMETERS.md を基準に現在の設定を記録し、アップグレード時に差分を確認する運用が現実的だ。解析をやり直す必要が生じる変更なのか、UI だけの変更なのかはリリースノートを読まないと判断できない。コンテナのタグを固定して、検証してから上げる形が安全である。

編集部の結論

すでに Navidrome、Jellyfin、LMS、Lyrion、Emby、Plex のいずれかを自己ホストし、Docker か Kubernetes を運用でき、ライブラリの音響解析を一度走らせる時間とCPU/GPUを確保できる人には向いている。逆に、メタデータだけで足りている人、解析パイプラインのメンテナンスを引き受けたくない人、AGPL-3.0 の条件が自社の配布形態と噛み合わない人には向かない。導入前に確認すべきは、docs/PARAMETERS.md の解析パラメータ、docs/GPU.md のGPU要件、そして複数サーバー構成にするなら docs/MULTI_SERVER.md の重複検出の挙動である。

公式情報源

  1. License: AGPL-3.0
  2. NeptuneHub/AudioMuse-AI on GitHub
  3. Project website
  4. README
  5. Releases
コミュニティノート

コミュニティノート