Stable Audio 3・ACE-Step 1.5・MusicGenをRTX 3060で比較:生成速度、日本語の歌、メロディ指定を検証

花ロボが指揮棒で五線譜を指し、ヘッドホンをした花イヌがスチールパンの横に座る、音楽生成AI比較記事のヘッダー画像
Information

この記事は、AI が行った検証の記録をもとに AI が執筆し、人間が確認しています。

社内の検証マシン「DQN」(GeForce RTX 3060、VRAM 12 GiB)で、ローカルで動く音楽生成AIを3つ比べました。2026年5月に公開されたStable Audio 3 Medium、歌入りの曲を作れるACE-Step 1.5、メロディを音声で指定できるMusicGen-melodyです。

結果を先にまとめます。速さはStable Audio 3が圧倒的で、3分の曲を約4.8秒で生成しました。日本語の歌詞を歌わせられたのはACE-Step 1.5だけで、2分30秒の曲を約31秒で生成し、歌詞の大半が音声認識で読み取れる程度に歌われていました。メロディを指定してアレンジさせる用途では、MusicGen-melodyだけが「メロディを保ったまま、ベースや打楽器を加える」ことができました。

検証日:Stable Audio 3は2026年10月1日、ACE-Step 1.5とMusicGen-melodyは2026年10月2日(いずれも日本時間)。生成した音声はすべてこの記事で試聴できます。

比較した3つのモデル

項目Stable Audio 3 MediumACE-Step 1.5MusicGen-melody
開発元Stability AIACE Studio・StepFunMeta
1回で生成できる長さ最大380秒10〜600秒30秒
歌声と歌詞非対応対応(50以上の言語)非対応
メロディの指定Audio-to-Audioで間接的にカバー機能などで間接的にメロディ音声で条件付けできる
ライセンスStability AI Community License(同意フォームあり)MITCC-BY-NC 4.0(非商用)

仕様の出典は、各モデルの公式リポジトリ・モデルカードとCLIのヘルプ表示です(末尾の参照資料を参照)。Stable Audio 3 Mediumは、テキストエンコーダーにGoogleのT5Gemmaを使っているため、Gemma Terms of Useへの同意も必要でした。Stability AI Community Licenseは、年商100万ドル未満なら商用利用もできる条件です。MusicGen-melodyの重みは非商用ライセンスなので、業務で使う場合は注意が必要です。

検証環境

項目内容
OS / CPU / メモリUbuntu 24.04 LTS / Intel Core i5-12400 / 32 GiB
GPUNVIDIA GeForce RTX 3060、VRAM 12 GiB、ドライバー 580.173.02
Python3.12(モデルごとに別のvenvを作成)
Stable Audio 3公式リポジトリ 3a82c80、torch 2.7.1+cu126、Flash Attention 2.8.3
ACE-Step 1.5公式リポジトリ ca1e85f、torch 2.10.0+cu128、transformers 4.57.6(uv sync で導入)
MusicGen-melodyHugging Face transformers 5.18.0、torch 2.11.0+cu128、fp16

DQNでは普段、ローカルLLMのサーバーがVRAMを約10 GiB使っています。今回の検証中はこのサービスを止めてGPUを空け、終了後に再起動して正常に応答することを確認しました。

セットアップの要点

Stable Audio 3 Medium

Hugging Faceのモデルページでライセンスに同意してから、公式リポジトリを使います。Mediumの実行にはFlash Attention 2が必要です。RTX 3060とPython 3.12に合うビルド済みのwheelを入れました。モデルのダウンロード量は約10 GBです。

git clone https://github.com/Stability-AI/stable-audio-3
cd stable-audio-3
# venv を作成し、torch 2.7.1・Flash Attention 2・本体を導入
.venv/bin/stable-audio --model medium -p "プロンプト" --duration 120 --seed 10 -o out.wav

ACE-Step 1.5

パッケージ管理ツールuvで依存関係をまとめて導入します。モデルは初回実行時に自動でダウンロードされます。曲の生成本体(DiT)にはturbo版を使いました。曲の構成を考える言語モデル(LM)は、VRAM 12 GiBの場合、公式の推奨どおり0.6B版を使う必要がありました(理由は後述)。

git clone https://github.com/ace-step/ACE-Step-1.5
cd ACE-Step-1.5
uv sync
# Python API: DiT は acestep-v15-turbo、LM は acestep-5Hz-lm-0.6B(vllm バックエンド)

MusicGen-melody

Hugging Face transformersの MusicgenMelodyForConditionalGeneration を使いました。テキストのプロンプトに加えて、メロディの音声を入力として渡せます。モデルは facebook/musicgen-melody(約1.5B)です。

検証1:同じプロンプトでインスト曲を生成

3つのモデルに同じプロンプトを渡して、スチールパンが主役のカリプソを作らせました。シードは10に固定しています。

Upbeat Caribbean calypso, bright steel pan lead melody, steel drums, congas and bongos, shakers, walking bass, 110 BPM, sunny, joyful, tropical beach party, instrumental
項目Stable Audio 3 MediumACE-Step 1.5MusicGen-melody
生成した長さ120秒120秒30秒
生成時間3分の曲で約4.8秒(※)28.7秒29.2秒
ピークVRAM(PyTorch計測)5.1 GiB(※)10.9 GiB(LM 1.7B)4.5 GiB
モデルの読み込み約13秒21.7秒(LM 0.6B、2回目)4.1秒(2回目)
ステップ数など8ステップ8ステップ、LMによる構成の推論あり自己回帰、guidance 3.0

※ Stable Audio 3のこのカリプソ(120秒)単体の生成時間は記録していません。表の値は、前日に同じ環境で3分の曲を1回で生成したときの測定値です。同じテストでは、メインメモリを最大で約18 GB使いました。

Stable Audio 3 Medium(120秒)
ACE-Step 1.5(120秒)
MusicGen-melody(30秒、メロディ指定なし)

ACE-Step 1.5の28.7秒の内訳は、ログによると次のとおりです。LMが曲のメタデータ(BPM、調、拍子など)を決める段階に6.3秒、LMが音の設計図にあたるコードを600個生成する段階に14.6秒、DiTによる拡散生成に2.6秒でした。残りは音声への変換と保存の時間です。時間の大半はLMが使っていて、DiT自体はStable Audio 3と同じくらい速いことがわかります。

プロンプトにない項目は、LMが自動で補います。今回は調が「D major」、拍子が「2」と推論されました。BPMはプロンプトの110がそのまま使われました。

検証2:ACE-Step 1.5で日本語の歌詞を歌わせる

Stable Audio 3とMusicGenには歌詞を入力できません。そこで、ACE-Step 1.5だけで、日本語の歌詞付きの曲を作れるかを試しました。歌詞は今回のためにオリジナルで用意しました。

caption: Bright Japanese city pop, female vocal, funky electric guitar, slap bass,
         warm synth pads, steel pan accents, catchy chorus, uplifting, night drive
vocal_language: ja / bpm: 112 / duration: 150 / seed: 7

[Verse 1]
夜更けのモニター 青く光る
キーを叩けば 夢が動き出す
小さなロボが 隣で笑う
「もう少しだけ」 コーヒーを注ぐ

[Chorus]
コードの海を 泳いでゆこう
バグも涙も 星に変えて
朝が来るまで 止まらない
ぼくらの未来を ビルドしよう

[Verse 2]
赤いエラーに 首をかしげて
ひとつずつ 謎を解いてゆく
画面の向こう 誰かが待つ
届けたい音を ここで鳴らそう

[Chorus](繰り返し)
[Outro]
ぼくらの未来を ビルドしよう
ACE-Step 1.5:日本語歌詞のシティポップ(150秒)

生成時間は31.1秒、ピークVRAMは8.5 GiBでした(LMは0.6B版)。内訳は、メタデータの推論に5.0秒、コード生成に16.7秒、DiTに3.6秒です。

音声認識で歌詞を確認した

歌詞どおりに歌えているかを客観的に確かめるため、日本語の音声認識モデルkotoba-whisper v2.2(faster-whisper版、CPUで実行)で、生成した曲を文字起こししました。伴奏を分離せずに、曲のまま認識させています。

時刻認識結果元の歌詞
0〜15秒夜更なモニター青く光る夜更けのモニター 青く光る
15〜19秒黄色を叩けば夢が動き出すキーを叩けば 夢が動き出す
19〜28秒小さなロボが隣で笑う/もう少しだけコーヒーを注ぐ(同じ)
30〜41秒雨雲も涙も星に変えて/朝が来るまで止まらないバグも涙も 星に変えて/朝が来るまで 止まらない
60〜80秒赤いエラに首をかしげて/一つずつ謎を解いていく/画面の向こう誰かが待つ/届けたい音をここで鳴らそう(ほぼ同じ)
80〜88秒高度の海を泳いで行こう/バーグも涙も星に変えてコードの海を 泳いでゆこう/バグも涙も 星に変えて
95〜114秒リールドしよう/僕らの未来をリルーしようビルドしよう/ぼくらの未来を ビルドしよう

Verse 1とVerse 2は、ほぼ歌詞の順番どおりに認識されました。崩れやすかったのは「コード」「バグ」「ビルド」といったカタカナの外来語です。ただし、認識の誤りなのか、実際に発音が崩れているのかは、この方法では区別できません。1回目のサビは、冒頭の「コードの海を」が「紅葉のロー」と、末尾が「僕らの未来を見る」と、大きく崩れて認識されました。最後の約35秒は、歌のない後奏になっていました。

検証3:メロディを指定してアレンジさせる

どのモデルも、楽譜やMIDIを直接読み込むことはできません。代わりに、メロディを単純な電子音で鳴らした音声を入力として渡しました。メロディは今回用意したオリジナルの8小節(ハ長調、110 BPM)で、2回繰り返した34.9秒の音声です。プロンプトは検証1と同じです。

入力したメロディ(サイン波と倍音による単純な音)
MusicGen-melody:メロディで条件付け(30秒)
Stable Audio 3:Audio-to-Audio、init-noise-level 0.6(30秒)
Stable Audio 3:Audio-to-Audio、init-noise-level 0.8(30秒)

Stable Audio 3の --init-noise-level は、元の音声にどれだけノイズを加えてから作り直すかを決める値です。小さいほど元の音が残り、大きいほど自由に作り直されます。

数値で比べた結果

2つの指標を計算しました。1つ目は、元のメロディとの音の高さの一致度です。各時点で鳴っている音を12の音名(ド、ド#、レ…)ごとの強さに直して、元のメロディとの類似度(コサイン類似度)を最初の30秒で平均しました。0.5秒以内のずれは許容しています。2つ目は、伴奏が加わったかの目安として、4 kHz以上(シェイカーなど打楽器の帯域)と150 Hz未満(ベースの帯域)が全体のエネルギーに占める割合です。

音声メロディ一致度4 kHz以上150 Hz未満
入力メロディ(基準)0.00%0.00%
MusicGen-melody(メロディ指定あり)0.841.78%33.18%
Stable Audio 3(noise 0.6)0.920.03%0.02%
Stable Audio 3(noise 0.8)0.270.97%23.70%
参考:MusicGen(メロディ指定なし)0.341.53%0.32%
参考:Stable Audio 3(検証1の曲)0.30——

MusicGen-melodyは、メロディの一致度を0.84に保ったまま、ベースと高音域の打楽器を加えていました。メロディを指定しなかった場合(0.34)と比べると、入力したメロディに沿っていることがはっきりわかります。

Stable Audio 3は、noise 0.6だと一致度が0.92と最も高くなりました。しかし、ベースと打楽器の帯域がほぼ0%で、入力の電子音がほとんどそのまま残った状態でした。noise 0.8にすると伴奏は加わりますが、一致度はメロディ指定なしと同じ水準まで下がりました。今回の2つの設定では、「メロディを残しながら編曲する」ことはできませんでした。0.6と0.8の間の値は試していません。

つまずいた点

用途別の使い分け

やりたいこと向いているモデル理由
作業用BGMやインスト曲をたくさん作るStable Audio 3 Medium数分の曲を数秒で生成でき、VRAMの使用量も少ない
歌詞のある曲を作るACE-Step 1.5今回の3つで唯一、日本語の歌詞を歌える。ライセンスもMIT
決まったメロディを編曲させるMusicGen-melodyメロディを保ったまま伴奏を加えられた。ただし非商用ライセンスで、1回30秒まで

この結果から評価できる範囲

各条件とも、1つのシードで1回だけ生成した結果です。同じモデルでもシードによって出来は大きく変わるため、この記事の音声がそれぞれのモデルの平均的な品質を表しているとは限りません。音質や曲としての良さについて、複数人による聴き比べの評価は行っていません。

メロディの一致度は、音名ごとの強さを比べる簡易な指標です。和音や伴奏の音が増えると、メロディが残っていても値は下がります。音符単位でメロディが正確に再現されたかを示すものではありません。歌詞の確認に使った音声認識も、伴奏のある歌声では誤認識が起こります。

生成時間は、モデルを読み込んだ後の1曲分の時間です。Stable Audio 3の値だけは前日に別の曲で測ったものです。ピークVRAMはPyTorchが確保した最大量で、GPU全体の使用量とは一致しません。ACE-Step 1.5の10.9 GiBには、LMの推論エンジンが前もって確保したメモリも含まれます。

参照資料

Stable Audio 3 公式リポジトリ / Stable Audio 3 Medium モデルカード / ACE-Step 1.5 公式リポジトリ / ACE-Step 1.5 モデルカード / MusicGen-melody モデルカード / transformers の MusicGen Melody 解説 / kotoba-whisper v2.2(faster-whisper版)。公式情報は2026年10月1〜2日に確認。