开源上新 | 通义音乐生成技术InspireMusic

简介: 开源上新 | 通义音乐生成技术InspireMusic

文章来源:阿里语音AI

InspireMusic是由通义实验室开源的音乐生成技术,旨在打造一款集音乐生成、歌曲生成、音频生成能力为一体的开源AIGC工具包。


为研究者和开发者提供音乐/歌曲/音频生成模型的训练和调优工具及模型,方便优化生成效果;同时为音乐爱好者提供一个易于使用的文本生成音乐/歌曲/音频创作工具,可通过文字描述或音频提示来控制生成内容。


目前,InspireMusic已开源了音乐生成的训练和推理代码,支持通过简单的文字描述或音频提示,快速生成多种风格的音乐作品。


InspireMusic的文生音乐创作模式涵盖了多种曲风、情感表达和复杂的音乐结构控制,提供了极大的创作自由度和灵活性。未来计划进一步开放歌唱生成和音频生成的基础模型,欢迎研究者、开发者及用户积极参与体验和研发。该开源工具包为社区开发者提供了丰富的技术资源,支持从学术研究到产品开发的广泛应用。


🎶 主要特点


  • 统一的音频生成框架:基于音频大模型技术,InspireMusic支持音乐、歌曲及音频的生成,为用户提供多样化选择;
  • 灵活可控生成:基于文本提示和音乐特征描述,用户可精准控制生成音乐的风格和结构;
  • 简单易用:简便的模型微调和推理工具,为用户提供高效的训练与调优工具。


🌟代码仓库



核心模型


*InspireMusic模型框架

InspireMusic由音频tokenizer、自回归Transformer模型、基于常微分方程的扩散模型即Conditional Flow Matching (CFM)模型、Vocoder所组成,可支持文本生成音乐、音乐续写等任务。


通过具有高压缩比的单码本WavTokenizer将输入的连续音频特征转换成离散音频token,然后利用基于Qwen模型初始化的自回归Transformer模型预测音频token,再由CFM扩散模型重建音频的潜层特征,最终通过Vocoder输出高质量的音频波形。


两种推理模式的设计:fast模型和高音质模型,为不同需求的用户提供了灵活的选择。


Demo show


🎧 输入简单的文本描述生成音乐


样例 1:


输入文本:Experience soothing and sensual instrumental jazz with a touch of Bossa Nova, perfect for a relaxing restaurant or spa ambiance.


生成音乐:


样例 2:


输入文本:The instrumental piece exudes a playful and whimsical atmosphere, likely featuring lively and rhythmic elements. The music seems to be inspired by nature and animals, creating an engaging and light-hearted experience.


生成音乐:


🎧 通过不同的音乐类型、曲式结构标签来控制生成音乐


样例 3:


曲式结构:<|Verse|>


音乐类型电子乐输入文本:The track exudes an energetic and futuristic vibe, blending electronic and tech house elements with a dynamic, extended mix structure.


生成音乐


样例 4:


曲式结构:<|Chorus|>


音乐类型:R&B


输入文本:A soothing blend of instrumental and R&B rhythms, featuring serene and calming melodies.


生成音乐:


样例 5:


曲式结构<|Intro|>


音乐类型:R&B


输入文本:A delightful collection of classical keyboard music, purely instrumental, exuding a timeless and elegant charm.


生成音乐


样例 6:


曲式结构:<|Outro|>


音乐类型:Rock


输入文本:The instrumental rock piece features dynamic oscillations and wave-like progressions, creating an immersive and energetic atmosphere. The music is purely instrumental, with no vocals, and it blends elements of rock and post-rock for a powerful and evocative experience.


生成音乐

更多样例见https://iris2c.github.io/InspireMusic


工具包安装使用指南


第一步:下载代码库


git clone --recursive https://github.com/FunAudioLLM/InspireMusic.git
# If you failed to clone submodule due to network failures, please run the following command until success
cd InspireMusic
git submodule update --init --recursive


第二步:安装代码库


conda create -n inspiremusic python=3.8
conda activate inspiremusic
cd InspireMusic
# pynini is required by WeTextProcessing, use conda to install it as it can be executed on all platforms.
conda install -y -c conda-forge pynini==2.1.5
pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ --trusted-host=mirrors.aliyun.com
# install flash attention to speedup training
pip install flash-attn --no-build-isolation


第三步:下载模型


InspireMusic-Base模型(https://www.modelscope.cn/iic/InspireMusic)
# git模型下载,请确保已安装git lfs
mkdir -p pretrained_modelsgit clone https://www.modelscope.cn/iic/InspireMusic.
git pretrained_models/InspireMusic-Base


第四步:基本用法说明快速开始


cd InspireMusic/examples/music_generation/
bash run.sh


训练LLM和flow matching模型样例脚本。


for model in llm flow
do
torchrun --nnodes=1 --nproc_per_node=8 \  
--rdzv_id=1024 --rdzv_backend="c10d" --rdzv_endpoint="localhost:0" \ 
inspiremusic/bin/train.py \ 
--train_engine "torch_ddp" \  
--config conf/inspiremusic.yaml \  
--train_data data/train.data.list \ 
--cv_data data/dev.data.list \  
--model $model \  
--model_dir `pwd`/exp/music_generation/llm/ \  
--tensorboard_dir `pwd`/tensorboard/music_generation/llm/ \  
--ddp.dist_backend "nccl" \  
--num_workers 8 \  
--prefetch 100 \  
--pin_memory \   
--deepspeed_config ./conf/ds_stage2.json \ 
--deepspeed.save_states model+optimizer \   
--fp16
done


推理脚本


cd InspireMusic/examples/music_generation/
bash infer.sh


带有CFM的推理模式


pretrained_model_dir = "./pretrained_models/InspireMusic/"
for task in 'text-to-music' 'continuation'; do 
python inspiremusic/bin/inference.py --task $task \   
--gpu 0 \  
--config conf/inspiremusic.yaml \   
--prompt_data data/test/parquet/data.list \     
--flow_model $pretrained_model_dir/flow.pt \
--llm_model $pretrained_model_dir/llm.pt \ 
--music_tokenizer $pretrained_model_dir/music_tokenizer \  
--wavtokenizer $pretrained_model_dir/wavtokenizer \  
--result_dir `pwd`/exp/inspiremusic/${task}_test \ 
--chorus verse \    
--min_generate_audio_seconds 8 \   
--max_generate_audio_seconds 30 
done


不带CFM的fast推理模式


pretrained_model_dir = "./pretrained_models/InspireMusic/"
for task in 'text-to-music' 'continuation'; do 
python inspiremusic/bin/inference.py --task $task \   
--gpu 0 \    
--config conf/inspiremusic.yaml \    
--prompt_data data/test/parquet/data.list \  
--flow_model $pretrained_model_dir/flow.pt \  
--llm_model $pretrained_model_dir/llm.pt \   
--music_tokenizer $pretrained_model_dir/music_tokenizer \   
--wavtokenizer $pretrained_model_dir/wavtokenizer \    
--result_dir `pwd`/exp/inspiremusic/${task}_test \   
--chorus verse \   
--fast True \  
--min_generate_audio_seconds 8 \   
--max_generate_audio_seconds 30
done

相关文章
|
2月前
|
负载均衡 测试技术 调度
大模型分布式推理:张量并行与流水线并行技术
本文深入探讨大语言模型分布式推理的核心技术——张量并行与流水线并行。通过分析单GPU内存限制下的模型部署挑战,详细解析张量并行的矩阵分片策略、流水线并行的阶段划分机制,以及二者的混合并行架构。文章包含完整的分布式推理框架实现、通信优化策略和性能调优指南,为千亿参数大模型的分布式部署提供全面解决方案。
598 4
|
2月前
|
机器学习/深度学习 缓存 监控
大模型推理优化技术:KV缓存机制详解
本文深入探讨了大语言模型推理过程中的关键技术——KV缓存(Key-Value Cache)机制。通过对Transformer自注意力机制的分析,阐述了KV缓存的工作原理、实现方式及其对推理性能的显著优化效果。文章包含具体的代码实现和性能对比数据,为开发者理解和应用这一关键技术提供实践指导。
1066 8
|
2月前
|
存储 机器学习/深度学习 人工智能
大模型微调技术:LoRA原理与实践
本文深入解析大语言模型微调中的关键技术——低秩自适应(LoRA)。通过分析全参数微调的计算瓶颈,详细阐述LoRA的数学原理、实现机制和优势特点。文章包含完整的PyTorch实现代码、性能对比实验以及实际应用场景,为开发者提供高效微调大模型的实践指南。
1978 2
|
2月前
|
人工智能 机器人 人机交互
当AI学会“看、听、懂”:多模态技术的现在与未来
当AI学会“看、听、懂”:多模态技术的现在与未来
307 117
|
2月前
|
人工智能 自然语言处理 安全
AI助教系统:基于大模型与智能体架构的新一代教育技术引擎
AI助教系统融合大语言模型、教育知识图谱、多模态交互与智能体架构,实现精准学情诊断、个性化辅导与主动教学。支持图文语音输入,本地化部署保障隐私,重构“教、学、评、辅”全链路,推动因材施教落地,助力教育数字化转型。(238字)
|
2月前
|
机器学习/深度学习 存储 并行计算
大模型推理加速技术:FlashAttention原理与实现
本文深入解析大语言模型推理加速的核心技术——FlashAttention。通过分析传统注意力机制的计算瓶颈,详细阐述FlashAttention的IO感知算法设计、前向反向传播实现,以及其在GPU内存层次结构中的优化策略。文章包含完整的CUDA实现示例、性能基准测试和实际部署指南,为开发者提供高效注意力计算的全套解决方案。
392 10
|
2月前
|
人工智能 文字识别 自然语言处理
从“看见”到“预见”:合合信息“多模态文本智能技术”如何引爆AI下一场革命。
近期,在第八届中国模式识别与计算机视觉学术会议(PRCV 2025)上,合合信息作为承办方举办了“多模态文本智能大模型前沿技术与应用”论坛,汇聚了学术界的顶尖智慧,更抛出了一颗重磅“炸弹”——“多模态文本智能技术”概念。
176 1
|
2月前
|
存储 人工智能 算法
大模型4-bit量化技术详解
本文系统阐述大语言模型的4-bit量化技术,深入解析GPTQ、AWQ等主流量化方法的原理与实现。通过详细的数学推导、代码实现和实验对比,展示4-bit量化如何将模型内存占用降低75%以上同时保持模型性能。文章涵盖量化感知训练、后训练量化、混合精度量化等关键技术,为开发者提供完整的模型压缩解决方案。
583 7
|
2月前
|
监控 算法 测试技术
大模型推理服务优化:动态批处理与连续批处理技术
本文系统阐述大语言模型推理服务中的关键技术——动态批处理与连续批处理。通过分析传统静态批处理的局限性,深入解析动态批处理的请求调度算法、内存管理策略,以及连续批处理的中断恢复机制。文章包含完整的服务架构设计、核心算法实现和性能基准测试,为构建高性能大模型推理服务提供全面解决方案。
373 3

热门文章

最新文章