AudioCraft 是一个用于音频生成深度学习研究的 PyTorch 库。它包含了两个能够生成高质量音频的先进 AI 生成模型:AudioGen 和 MusicGen 的推理与训练代码。
AudioCraft 需要 Python 3.9 和 PyTorch 2.1.0。你可以通过以下命令安装:
# 最好先确保已安装 torch,尤其是在安装 xformers 之前。
# 如果已经安装了 PyTorch,请不要运行此命令。
python -m pip install 'torch==2.1.0'
# 在尝试安装包之前,你可能需要先运行以下命令
python -m pip install setuptools wheel
# 然后选择以下方式之一进行安装
python -m pip install -U audiocraft # 稳定版本
python -m pip install -U git+https://git@github.com/facebookresearch/audiocraft#egg=audiocraft # 最新开发版
python -m pip install -e . # 或者,如果你在本地克隆了仓库(若想进行训练,则必须如此)。
python -m pip install -e '.[wm]' # 如果你想训练水印模型
我们还建议安装 ffmpeg,可以通过系统或 Anaconda 安装:
sudo apt-get install ffmpeg
# 或者,如果你使用 Anaconda 或 Miniconda
conda install "ffmpeg<5" -c conda-forge
目前,AudioCraft 包含以下模型的训练和推理代码:
* MusicGen:一个先进的、可控的文本到音乐模型。
* AudioGen:一个先进的文本到声音模型。
* EnCodec:一个先进的高保真神经音频编解码器。
* Multi Band Diffusion:一个使用扩散模型、与 EnCodec 兼容的解码器。
* MAGNeT:一个先进的、用于文本到音乐和文本到声音的非自回归模型。
* AudioSeal:一个先进的音频水印技术。
* MusicGen Style:一个先进的文本和风格到音乐模型。
* JASCO:一个高质量、可基于和弦、旋律和鼓轨进行条件生成的文本到音乐模型。
AudioCraft 包含用于音频深度学习研究的 PyTorch 组件以及已开发模型的训练流程。关于 AudioCraft 的设计原则介绍以及开发自定义训练流程的说明,请参阅 AudioCraft 训练文档。
若要复现现有工作并使用已开发的训练流程,请参考每个特定模型的说明,其中提供了配置、示例网格以及模型/任务特定信息和常见问题解答的指引。
我们提供了一些 AudioCraft 的 API 文档。
是的!我们提供了 EnCodec、MusicGen、Multi Band Diffusion 和 JASCO 的训练代码。
Hugging Face 将模型存储在特定位置,可以通过设置 AUDIOCRAFT_CACHE_DIR 环境变量来覆盖 AudioCraft 模型的存储位置。要更改其他 Hugging Face 模型的缓存位置,请查阅 Hugging Face Transformers 关于缓存设置的文档。最后,如果你使用依赖 Demucs 的模型(例如 musicgen-melody)并希望更改 Demucs 的下载位置,请参考 Torch Hub 文档。
关于 AudioCraft 的通用框架,请引用以下文献。
@inproceedings{copet2023simple,
title={Simple and Controllable Music Generation},
author={Jade Copet and Felix Kreuk and Itai Gat and Tal Remez and David Kant and Gabriel Synnaeve and Yossi Adi and Alexandre Défossez},
booktitle={Thirty-seventh Conference on Neural Information Processing Systems},
year={2023},
}
当引用特定模型时,请按照该模型特定 README 中的说明进行引用,例如 ./docs/MUSICGEN.md、./docs/AUDIOGEN.md 等。