YuE项目使用教程
1. 项目的目录结构及介绍
YuE项目是一个用于音乐生成的开源项目,其目录结构如下:
YuE/
├── assets/ # 存放项目相关资源文件
├── inference/ # 存放推理相关的代码和模型
├── prompt_egs/ # 存放示例提示文件
├── .gitattributes # Git属性配置文件
├── .gitignore # Git忽略文件配置
├── LICENSE # Apache-2.0 许可证文件
├── NOTICE # 通知文件
├── README.md # 项目说明文件
├── requirements.txt # 项目依赖文件
├── top_200_tags.json # 项目标签数据文件
assets/
:包含项目的资源文件,如图标等。inference/
:包含用于音乐生成的代码和预训练模型。prompt_egs/
:包含用于音乐生成的示例提示文件。.gitattributes
:配置Git处理文件和目录的属性。.gitignore
:指定Git应该忽略的文件和目录。LICENSE
:项目的许可证文件,本项目采用Apache-2.0许可证。NOTICE
:包含项目通知和版权信息。README.md
:项目的自述文件,包含项目的基本信息和如何使用。requirements.txt
:包含项目所需的Python库和版本。top_200_tags.json
:项目的标签数据文件。
2. 项目的启动文件介绍
在YuE项目中,启动音乐生成的主要是通过inference/
目录下的infer.py
文件。该文件是项目的主执行文件,用于加载模型、处理输入提示和生成音乐。
以下是infer.py
的基本使用方法:
python infer.py \
--cuda_idx 0 \
--stage1_model m-a-p/YuE-s1-7B-anneal-en-cot \
--stage2_model m-a-p/YuE-s2-1B-general \
--genre_txt ../prompt_egs/genre.txt \
--lyrics_txt ../prompt_egs/lyrics.txt \
--run_n_segments 2 \
--stage2_batch_size 4 \
--output_dir ../output \
--max_new_tokens 3000 \
--repetition_penalty 1.1
--cuda_idx
:指定GPU的索引。--stage1_model
和--stage2_model
:指定使用的模型。--genre_txt
和--lyrics_txt
:指定用于生成音乐的样式和歌词的文本文件。--run_n_segments
:指定生成音乐的段落数。--stage2_batch_size
:指定生成阶段的批量大小。--output_dir
:指定生成音乐的输出目录。--max_new_tokens
:指定生成音乐的最大令牌数。--repetition_penalty
:指定重复惩罚系数。
3. 项目的配置文件介绍
在YuE项目中,配置文件主要是指inference/
目录下的genre.txt
和lyrics.txt
文件。
-
genre.txt
:用于指定生成音乐的风格。该文件中可以包含多种样式,每一行代表一种风格。 -
lyrics.txt
:用于指定生成音乐的歌词。该文件中包含歌词文本,用于指导模型生成相应的旋律。
通过编辑这两个文件,用户可以自定义生成音乐的风格和歌词内容,以适应不同的音乐创作需求。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考