
音楽生成AI(Stable Audio,MusicGen)で遊ぶ
はじめに
おはこんにちばんは、えるです❢
Stability AIより音楽生成AI Stable Audioが出ましたので遊んでみました
音楽とサウンド生成のための「Stable Audio」を発表!
— Stability AI 日本公式 (@StabilityAI_JP) September 13, 2023
Stability AI は、音楽とサウンド生成のための初のAIモデルとなる Stable Audio を発表しました。
詳しくはこちらのブログをご参照ください!
💁 https://t.co/148YZHESe4
ついでに、以前からnoteにまとめようかなあと思いつつ放置していた
MetaのMusicGenにも触れようかと思います
Stable Audio
公式Web
まず公式はこちら
Stable Audio - Generative AI for music & sound fx

「Try it out」をぽちーするとログインな画面に行くので、何かしらでログインします
私はグーグルアカウントにしました
音楽生成は以下の感じ

text promptに生成したい曲のプロンプトを入力後、「→」ボタンをぽちーすると生成できます
30秒くらいで生成できそうでした!
(混んでなければ)
公式のプロンプト例
…といってもプロンプトわかりません!
といった方向け(?)に公式Webにもプロンプト例がありそうです
一番上の以下プロンプトをありがたく拝借します✨
Trance, Ibiza, Beach, Sun, 4 AM, Progressive, Synthesizer, 909, Dramatic Chords, Choir, Euphoric, Nostalgic, Dynamic, Flowing
公式に置かれているものとの聞き比べとかもしたいので、このnoteではプロンプトは統一することにします
価格とライセンス
価格とライセンスも気になるところなので確認しておきます

フリープランは1か月20曲まで、45秒までみたいですね
プロプランは1か月約$12で500曲まで、90秒まで可
Enterpriseは、、まあ気にしなくてよいでしょう

プロプランは商用利用可能! 人によっては嬉しい気がします
お試し結果
ひとまず以下の感じのものが出来ました
…なかなかいい感じかも!
公式のプロンプト例に貼ってある曲と比較すると、少し曲の変化が無いかなあという印象もあるでしょうか
プロンプトは合わせているので、秒数の違いか、選ばれているか、たまたまって感じですかね
MusicGen
公式Web
MusicGenはMetaから公開されている音楽生成AIです
公式は以下でいいのかな?
MusicGen (metademolab.com)
デモページ
以下のデモページでお試し生成が出来ます
MusicGen - a Hugging Face Space by facebook
…でも15秒!! 短いっ!!
ということで、GoogleColabに導入して、長めの生成もできるようにします
GoogleColabでの導入方法
MusicGenは公式のGoogleColabDemo版が出ています
MusicGen Gradio Demo v1.0.0.ipynb - Colaboratory (google.com)

45秒を1曲生成するのにかかる時間はGPUによって若干変わりそうで、
以下の感じでした
T4:4分程度
V100:3分程度
GoogleColabでの導入方法 番外編
公式のGoogleColabが使いやすいとは思うのですが、
私の場合は公式のGoogleColabが出る前から遊んでいたこともあり、別の方法で生成しています
参考として、導入手順は以下の感じです
1)インストール
!pip install -U git+https://github.com/facebookresearch/audiocraft
from audiocraft.models import musicgen
from audiocraft.utils.notebook import display_audio
import torch
2)モデルダウンロードと設定
model = musicgen.MusicGen.get_pretrained('medium', device='cuda')
3)曲の長さを設定
model.set_generation_params(duration=45)
4)プロンプトを指定して生成
res = model.generate([
'Trance, Ibiza, Beach, Sun, 4 AM, Progressive, Synthesizer, 909, Dramatic Chords, Choir, Euphoric, Nostalgic, Dynamic, Flowing'
],
progress=True)
display_audio(res, 32000)
こちらは設定に1~2分、45秒の曲生成に2分ほどかかります(V100)
複数曲生成も可能で、生成時間は大きく増えないので便利ですが、
GPUによるかもしれないです

こっちのほうが生成早いのはなんでだろう。。
よくわかってませんが愛用してます
お試し結果
MusicGenだと以下の感じのものが出来ました!
今回のプロンプトや生成結果だと、Stable Audioの方が好みでしょうか
ただMusigGenさんもプロンプトによっては良い感じになるので、プロンプト次第なところもあるかもです
回数を気にせず生成できるのもMusicGenの強みかなあ