初めに
text to audioがいろいろある中で出てきた AudioLDMというCLAPを使って音声を生成するモデルを触ってみます
github.com
開発環境
セットアップ
まずは公式がconda 3.8を指定しているので、uv でpython=3.8の環境を作ります。
uv venv -p 3.8
.venv\Scripts\activate
ライブラリを入れていきます
uv pip install audioldm
そのままだと実行するとエラーになるので、setuptoolsをアップデートします
エラー文
from pkg_resources import resource_filename
ModuleNotFoundError: No module named 'pkg_resources'
uv pip install --upgrade setuptools
gradioが4.x.x以上だと動かないので、gradioを3系でインストールします
4系で実行すると以下のエラーが出ます
Traceback (most recent call last):
File ".\app.py", line 225, in <module>
with gr.Box():
AttributeError: module 'gradio' has no attribute 'Box'
github.com
uv pip install gradio==3.50.2
torchがcpuになっているので、CUDA版をインストールします
uv pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121 --force-reinstall
一部ライブラリでエラーになるので、アップデートします
uv pip install --upgrade typing_extensions
推論
以下でgradioのGUI推論画面を開きます
python .\app.py
初回のsubmitはモデルのダウンロードが走ります
Load AudioLDM: %s audioldm-m-full
Downloading the main structure of audioldm-m-full into C:\Users\user\.cache/audioldm
41% |#############################
以下のように音が生成されます
requirements.txt
requirements.txt
は以下です
aiofiles==23.2.1
altair==5.4.1
annotated-types==0.7.0
anyio==4.5.2
attrs==24.2.0
audioldm==0.1.1
audioread==3.0.1
certifi==2024.8.30
cffi==1.17.1
chardet==5.2.0
charset-normalizer==3.4.0
click==8.1.7
colorama==0.4.6
contourpy==1.1.1
cycler==0.12.1
decorator==5.1.1
einops==0.8.0
exceptiongroup==1.2.2
fastapi==0.115.5
ffmpy==0.4.0
filelock==3.13.1
fonttools==4.55.0
fsspec==2024.2.0
ftfy==6.2.3
gradio==3.50.2
gradio-client==0.6.1
h11==0.14.0
httpcore==1.0.7
httpx==0.27.2
huggingface-hub==0.26.2
idna==3.10
importlib-metadata==8.5.0
importlib-resources==6.4.5
jinja2==3.1.3
joblib==1.4.2
jsonschema==4.23.0
jsonschema-specifications==2023.12.1
kiwisolver==1.4.7
librosa==0.9.2
llvmlite==0.41.1
markdown-it-py==3.0.0
markupsafe==2.1.5
matplotlib==3.7.5
mdurl==0.1.2
mpmath==1.3.0
narwhals==1.14.1
networkx==3.2.1
numba==0.58.1
numpy==1.24.1
orjson==3.10.11
packaging==24.2
pandas==2.0.3
pillow==10.2.0
pkgutil-resolve-name==1.3.10
platformdirs==4.3.6
pooch==1.8.2
progressbar==2.5
pycparser==2.22
pydantic==2.10.1
pydantic-core==2.27.1
pydub==0.25.1
pygments==2.18.0
pyparsing==3.1.4
python-dateutil==2.9.0.post0
python-multipart==0.0.17
pytz==2024.2
pyyaml==6.0.2
referencing==0.35.1
regex==2024.11.6
requests==2.32.3
resampy==0.4.3
rich==13.9.4
rpds-py==0.20.1
ruff==0.8.0
safetensors==0.4.5
scikit-learn==1.3.2
scipy==1.10.1
semantic-version==2.10.0
setuptools==75.3.0
shellingham==1.5.4
six==1.16.0
sniffio==1.3.1
soundfile==0.12.1
starlette==0.41.3
sympy==1.13.1
threadpoolctl==3.5.0
tokenizers==0.20.3
tomlkit==0.12.0
torch==2.4.1+cu121
torchaudio==2.4.1+cu121
torchlibrosa==0.0.9
torchvision==0.19.1+cu121
tqdm==4.67.0
transformers==4.46.3
typer==0.13.1
typing-extensions==4.12.2
tzdata==2024.2
urllib3==2.2.3
uvicorn==0.32.1
wcwidth==0.2.13
websockets==11.0.3
zipp==3.20.2
以下でリポジトリにもアップロードしています
github.com