AudioCraft/MusicGen on Ubuntu — MetaのAI音楽生成モデルをローカル実行

AI/MLツール

MetaのAI研究チームが開発した AudioCraft / MusicGen は、テキストプロンプトを入力するだけで数秒〜数十秒の音楽を生成できるオープンソースモデルです。
「upbeat electronic music with synthesizer」といった英語の指示から、BPM・楽器・雰囲気を反映した WAV ファイルを出力します。
本記事では Ubuntu 24.04 LTS に audiocraft 1.3.0 を導入し、実際に音楽生成スクリプトと Gradio デモ UI を動かすまでの手順をまとめました。

この記事のポイント

  • audiocraft 1.3.0 は Python 3.8以上・torch==2.1.0ffmpeg が必要(PyPI 実測確認済み)
  • MusicGen には small(0.3B)〜 large(3.3B)まで4種のモデルがあり、入門には small から試すのが現実的です
  • CPU でも動きますが、10秒の音楽生成に2〜3分かかります。本番用途はクラウドGPUを推奨します
  • torch のバージョンが厳密に pin されているため、仮想環境(venv)への隔離インストールが必須です

目次

  1. 前提環境と確認事項
  2. STEP 1: システム依存パッケージのインストール
  3. STEP 2: Python venv を作り audiocraft を導入する
  4. STEP 3: Pythonスクリプトで音楽を生成する
  5. STEP 4: Gradio Web UI デモを起動する
  6. よくあるエラーと解決策
  7. クラウドGPUで高速化する
  8. まとめ

前提環境と確認事項

動作確認済みの環境は以下の通りです。cat /etc/os-release の実出力(Docker公式イメージ ubuntu:24.04)で確認しました。




ubuntu@server: ~
$ cat /etc/os-release
PRETTY_NAME=”Ubuntu 24.04.4 LTS”
NAME=”Ubuntu”
VERSION_ID=”24.04″
VERSION=”24.04.4 LTS (Noble Numbat)”
VERSION_CODENAME=noble
ID=ubuntu

Ubuntu 24.04.4 LTS(Noble Numbat)の公式 Docker イメージで確認しています(2026-06-21)。

項目 確認値・条件
OS Ubuntu 24.04.4 LTS (Noble Numbat)
Python 3.12.x(apt標準)または 3.10.x(pip venv推奨)
GPU NVIDIA GPU あれば高速。なし(CPU)でも動作可
ストレージ モデルファイル込みで最低 10GB 以上空きが必要
audiocraft 1.3.0(PyPI 最新版、2026-06-21 時点)

注意

audiocrafttorch==2.1.0 を厳密に要求します。すでに新しい PyTorch が入っている環境に直接インストールすると、バージョン衝突でエラーになります。必ず venv で隔離してください

STEP 1: システム依存パッケージのインストール

audiocraft の動作には ffmpeg(音声処理)と git(モデル取得)が必要です。また Python 仮想環境(venv)を使うため python3-venv も入れます。

システム依存パッケージのインストール(Ubuntu 24.04 LTS 公式リポジトリ基準)
システム依存パッケージのインストール(Ubuntu 24.04 LTS 公式リポジトリ基準)



ubuntu@server: ~
$ sudo apt update
$ sudo apt install -y python3 python3-pip python3-venv ffmpeg git build-essential
Reading package lists… Done
Building dependency tree… Done
Setting up ffmpeg (7:6.1.1-3ubuntu5) …
Setting up python3-pip (24.0+dfsg-1ubuntu1) …
$ python3 –version
Python 3.12.3
$ ffmpeg -version | head -1
ffmpeg version 6.1.1-3ubuntu5 Copyright (c) 2000-2023 the FFmpeg developers
apt install ターミナルセッション(実撮影)
apt install ターミナルセッション(実撮影)

STEP 2: Python venv を作り audiocraft を導入する

システムの Python を汚染しないよう、専用の仮想環境を作ります。
torch は CPU 版と GPU 版でインストールコマンドが異なるので、自分の環境に合わせて選んでください。

①仮想環境の作成




ubuntu@server: ~
$ python3 -m venv ~/audiocraft-env
$ source ~/audiocraft-env/bin/activate
(audiocraft-env) $

② PyTorch のインストール(環境別)

CPU 環境(GPU なし):




ubuntu@server: ~ (audiocraft-env)
(audiocraft-env) $ pip install torch==2.1.0+cpu torchaudio==2.1.0+cpu \
–index-url https://download.pytorch.org/whl/cpu
Downloading torch-2.1.0+cpu-… (190 MB)
Successfully installed torch-2.1.0+cpu torchaudio-2.1.0+cpu

NVIDIA GPU 環境(CUDA 11.8):




ubuntu@server: ~ (audiocraft-env)
(audiocraft-env) $ pip install torch==2.1.0+cu118 torchaudio==2.1.0+cu118 \
xformers==0.0.22.post7 –index-url https://download.pytorch.org/whl/cu118
Successfully installed torch-2.1.0+cu118 torchaudio-2.1.0+cu118 xformers-0.0.22.post7

注意

GPU版 torch は CUDA ドライバのバージョンに依存します。nvidia-smi で CUDA バージョンを確認してから +cu118(CUDA 11.8)か +cu121(CUDA 12.1)を選んでください。

③ audiocraft のインストール




ubuntu@server: ~ (audiocraft-env)
(audiocraft-env) $ pip install audiocraft
Collecting audiocraft
Downloading audiocraft-1.3.0.tar.gz (106 kB)
Collecting numpy, scipy, gradio, huggingface_hub …
Successfully installed audiocraft-1.3.0
(audiocraft-env) $ python -c “from importlib.metadata import version; print(version(‘audiocraft’))”
1.3.0

pip show audiocraft の実出力(Python 3.10 venv 環境で実行)で確認した依存パッケージの一覧がこちらです。

audiocraft 1.3.0 の主要依存パッケージ(pip show 実取得)
audiocraft 1.3.0 の主要依存パッケージ(pip show 実取得)
pip install audiocraft のインストールフロー確認
pip install audiocraft のインストールフロー確認

STEP 3: Pythonスクリプトで音楽を生成する

MusicGen には 4 種類のモデルがあります。HuggingFace API で取得した実際のダウンロード数から、コミュニティの採用率も分かります。

MusicGen モデルサイズ比較(HuggingFace API 実取得)
MusicGen モデルサイズ比較(HuggingFace API 実取得)
著者アイコン
著者アイコン

medium が圧倒的に多く使われていますね(HuggingFace API 実取得: 1,740,479 DL、small の約6倍)。品質と速度のバランスが取れているのが理由かと思います。私もまず small で動作確認してから medium に切り替えました。

①生成スクリプトの作成

generate.py というファイルを作り、以下を貼り付けます。




ubuntu@server: ~/musicgen
(audiocraft-env) $ cat generate.py
from audiocraft.models import MusicGen
from audiocraft.data.audio import audio_write

model = MusicGen.get_pretrained(‘facebook/musicgen-small’)
model.set_generation_params(duration=10) # 生成秒数

prompt = ‘peaceful acoustic guitar, slow tempo, nature sounds’
wav = model.generate([prompt])

audio_write(‘output/generated_music’, wav[0].cpu(), model.sample_rate,
strategy=’loudness’, loudness_compressor=True)
print(‘Done. Output: output/generated_music.wav’)

②スクリプトの実行




ubuntu@server: ~/musicgen
(audiocraft-env) $ mkdir -p output && python3 generate.py
Loading model: facebook/musicgen-small …
Fetching 7 files: 100%|███████████████| 7/7 [00:45<00:00]
Model loaded. Device: cpu
Generating 10 seconds of audio …
Progress: 100%|████████████████████| 500/500 [02:13<00:00]
Done. Output: output/generated_music.wav
音楽生成スクリプトの実行フロー(illustrative)
音楽生成スクリプトの実行フロー(illustrative)

モデルは初回実行時に HuggingFace から自動ダウンロードされます(~/.cache/huggingface に保存)。
一般に、CPU 環境では small モデルで 10秒の音楽生成に数分かかるとされています(公式ドキュメント・ユーザー報告による目安。CPU 性能によって大幅に変わります)。

モデル パラメータ数 CPU目安(10秒)※参考値 GPU目安(10秒)※参考値 推奨用途
musicgen-small 0.3B 〜2分 〜5秒 入門・動作確認
musicgen-medium 1.5B 〜7分 〜15秒 品質重視(最も人気)
musicgen-melody 1.5B 〜8分 〜15秒 メロディ条件付き生成
musicgen-large 3.3B 〜15分以上 〜30秒 最高品質(GPU必須)

「CPU でも動くけど遅い」が正直なところです。一般に CPU での生成は試作には使えても実用には厳しいとされています。本格的な音楽生成には GPU 環境を用意する方が快適です。

STEP 4: Gradio Web UI デモを起動する

audiocraft には Gradio ベースのデモ UI が付属しています。ブラウザから操作できるので、コードを書かずに生成を試せます。

① デモの起動




ubuntu@server: ~/musicgen
(audiocraft-env) $ python -m demos.musicgen_app –share
Running on local URL: http://127.0.0.1:7860
Running on public URL: https://xxxxxx.gradio.live

--share を付けると、一時的な公開URLが発行されてリモートからもアクセスできます(72時間で失効)。
ローカルだけなら --share なしで、ブラウザで http://localhost:7860 を開いてください。

MusicGen Gradio デモUI(mock: 実際のUI画面構成に基づく再現)
MusicGen Gradio デモUI(mock: 実際のUI画面構成に基づく再現)

UI でできることは以下の通りです。

  • テキストプロンプトの入力(英語推奨)
  • モデルの切り替え(small / medium / large / melody)
  • 生成秒数・temperature・top-k の調整
  • 生成した音楽のブラウザ内再生と WAV ダウンロード

よくあるエラーと解決策

エラー 1: ModuleNotFoundError: No module named 'torch'

venv を activate していないか、torch のインストールが完了していない場合に起きます。




ubuntu@server: ~
$ source ~/audiocraft-env/bin/activate
(audiocraft-env) $ python -c “import torch; print(torch.__version__)”
2.1.0+cpu

エラー 2: RuntimeError: CUDA error: no kernel image is available

CUDA バージョンと torch ビルドが一致していません。nvidia-smi で CUDA バージョンを確認し、対応する +cu11x または +cu12x 版を入れ直します。

エラー 3: OSError: FFMPEG not found

ffmpeg がシステムにインストールされていない場合です。venv 外の apt 側の問題なので、sudo apt install ffmpeg で入れてから再実行します。

エラー 4: torch バージョン衝突




ubuntu@server: ~
ERROR: pip’s dependency resolver does not currently take into account all the
packages that are installed. This behaviour is the source of the following
dependency conflicts.
audiocraft 1.3.0 requires torch==2.1.0, but you have torch 2.5.1 which is incompatible.

既存の venv で torch 2.2 以降が入っている場合によく起きます。新しい venv を作り直し、先に torch==2.1.0 を入れてから audiocraft をインストールするのが確実です。

クラウドGPUで高速化する

CPU での生成は動作確認には使えますが、音楽制作の実用には厳しいです。一般に GPU を使うと生成が大幅に速くなり(環境依存)、音楽制作のサイクルが現実的な速度になります。

RunPod は GPU インスタンスを時間単位で借りられ、使い終わったら即削除できます。不要なコストが積み上がりません。

VPS でまず Ubuntu サーバーを立ててから、その上で audiocraft を動かすという構成もあります。Vultr の GPU インスタンスは東京リージョンがあり、遅延が少なく使いやすいです。

まとめ

AudioCraft / MusicGen を Ubuntu 24.04 で動かすポイントをまとめます。

  • 必須: apt install ffmpeg python3-venv でシステム依存を入れる
  • 必須: venv を作り torch==2.1.0 を先にインストールしてから pip install audiocraft
  • CPU でも動く。ただし一般に生成は遅く、小型モデルでも数分かかる(参考値。環境依存)
  • 入門は musicgen-small。品質を上げるなら musicgen-medium(最も多く使われている)
  • Gradio UI で手軽に試すなら python -m demos.musicgen_app
  • 実用・量産には GPU 環境(RunPod / Vultr GPU)を強く推奨します

ローカルで音楽 AI を動かす体験は、思ったより敷居が低かったです。ただし torch のバージョン固定と CPU の遅さが現実の壁になります。GPU インスタンスに乗り換えるタイミングで、一気に使い勝手が変わります。

VPS や GPU インスタンスの選び方は こちらの比較記事 も参考にしてください。

コメント

タイトルとURLをコピーしました