成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何在Colab上使用Meta的MusicGen生成音樂

譯文
人工智能
本文介紹如何在Colab上設置MusicGen。作為一個先進的文本到音樂的模型,MusicGen可以使用人工智能算法生成迷人的音樂作品。

譯者 | 李睿

審校 | 重樓

在人工智能的廣闊領域,深度學習已經徹底改變了許多領域,其中包括自然語言處理、計算機視覺和語音識別。然而,一個吸引研究人員和音樂愛好者的迷人領域是使用人工智能算法生成音樂。MusicGen是一種先進的可控文本到音樂模型之一,可以無縫地將文本提示轉換為迷人的音樂作品。

什么是MusicGen?

MusicGen是為音樂生成設計的卓越模型,它提供了簡單和可控性。與MusicLM等現有方法不同,MusicGen的突出之處在于消除了對自我監督語義表示的需要。該模型采用單級自回歸Transformer架構,并使用32kHz編碼器標記器進行訓練。值得注意的是,MusicGen可以一次生成所有四個碼本,這與傳統方法有所不同。通過在碼本之間引入輕微的延遲,該模型展示了并行預測它們的能力,從而產生每秒僅50步的音頻自動回歸。這種創新的方法優化了音樂生成過程的效率和速度。

MusicGen接受了2萬小時的授權音樂訓練。開發人員還在1萬個高質量音樂曲目的內部數據集以及ShutterStock和Pond5音樂數據上對它進行了訓練。

先決條件

根據MusicGen GitHub官方的回購:

  • Python 3.9
  • Pytorch 2.0.0
  • 具有至少16 GB內存的GPU

可用的MusicGen型號

預訓練模型有4種,分別是:

  • 小型:300M型號,僅限文字轉換音樂
  • 中型:1.5B型號,僅限文字轉換音樂
  • 旋律:1.5B型號,文字轉換音樂和文字+旋律轉換音樂
  • 大型:3.3B型號,僅限文字轉換音樂

實驗

下面是使用MusicGen大型模型生成條件音樂的輸出。

Text Input: Jingle bell tune with violin and piano
Output: (Using MusicGen "large" model)

下面是MusicGen旋律模型的輸出。使用上面的音頻和文本輸入來生成以下音頻。

Text Input: Add heavy drums drums and only drums
Output: (Using MusicGen "melody" model)

如何在Colab上設置MusicGen

確保正在使用GPU進行更快的推理。使用CPU需要9分鐘才能生成10秒的音頻,而使用GPU(T4)只需要35秒。

在開始之前,需要確保在Colab中安裝了Torch和TorchAudio。

從Facebook安裝AudioCraft庫。

python3 -m pip install –U git+https://github.com/facebookresearch/audiocraft#egg=audiocraft

導入必要的庫。

from audiocraft.models import musicgen
from audiocraft.utils.notebook import display_audio
import torchfrom audiocraft.data.audio import audio_write

加載模型。其型號列表如下:

# | model types are => small, medium, melody, large |
# | size of models are => 300M, 1.5B, 1.5B, 3.3B |
model = musicgen.MusicGen.get_pretrained('large', device='cuda')

設置參數(可選)

model.set_generation_params(duratinotallow=60) # this will generate 60 seconds of audio.

條件音樂生成(通過提供文本生成音樂)。

model.set_generation_params(duratinotallow=60)
res = model.generate( [ 'Jingle bell tune with violin and piano' ], progress=True)
# This will show the music controls on the colab

無條件音樂生成:

res = model.generate_unconditional( num_samples=1, progress=True)
# this will show the music controls on the screendisplay_audio(res, 16000)

1.生成音樂延續

要創建音樂延續,需要一個音頻文件。將該文件提供給模型,模型將生成并添加更多的音樂。

from audiocraft.utils.notebook import display_audio
import torchaudio

path_to_audio = "path-to-audio-file.wav"
description = "Jazz jazz and only jazz"

# Load audio from a file. Make sure to trim the file if it is too long!
prompt_waveform, prompt_sr = torchaudio.load( path_to_audio )
prompt_duration = 15
prompt_waveform = prompt_waveform[..., :int(prompt_duration * prompt_sr)]
output = model.generate_continuation(prompt_waveform, prompt_sample_rate=prompt_sr,
descriptinotallow=[ description ], progress=True)
display_audio(output, sample_rate=32000)

生成旋律條件生成:

model = musicgen.MusicGen.get_pretrained('melody', device='cuda')

model.set_generation_params(duratinotallow=20)

melody_waveform, sr = torchaudio.load("path-to-audio-file.wav")
melody_waveform = melody_waveform.unsqueeze(0).repeat(2, 1, 1)
output = model.generate_with_chroma(
descriptinotallow=['Add heavy drums'], melody_wavs=melody_waveform, melody_sample_rate=sr,progress=True)
display_audio(output, sample_rate=32000)

將音頻文件寫入磁盤。

如果想從Colab下載文件,那么需要在磁盤上寫入WAV文件。下面是將WAV文件寫入磁盤的函數。它將模型輸出作為第一個輸入,文件名作為第二個輸入。

def write_wav(output, file_initials):
 try:
 for idx, one_wav in enumerate(output):
 audio_write(f'{file_initials}_{idx}', one_wav.cpu(), model.sample_rate, strategy="loudness", loudness_compressor=True)
 return True
 except Exception as e:
 print("error while writing the file ", e)
 return None
# this will write a file that starts with bollywood
write_wav(res, "audio-file")

2.全面實施(Google Colab文件鏈接)

在Colab文件中給出了Meta公司的MusicGen庫的完整實現。使用它可以自由地探索和創作音樂。

結論

綜上所述,Audiocraft的MusicGen是一個功能強大且可控的音樂生成模型。展望未來,Audiocraft在人工智能生成音樂方面擁有令人興奮的未來發展潛力。無論是音樂家還是人工智能愛好者,Audiocraft的MusicGen都將為他們打開一個充滿創造力的世界。

原文標題:Generate Music Using Meta’s MusicGen On Colab,作者:Mittal Patel

責任編輯:華軒 來源: 51CTO
相關推薦

2023-08-05 13:56:03

數據音樂

2023-10-20 08:00:00

人工智能MusicGen

2023-12-08 08:00:00

人工智能MusicGen音樂模型

2023-06-12 16:04:52

谷歌音樂

2023-08-03 07:24:40

MetaAI 語言模型

2019-01-07 09:50:06

Linuxtarball命令

2021-07-25 10:34:17

FedoraPodmanLinux

2019-11-26 16:58:51

Linuxpkgsrc

2023-01-17 07:40:59

LinuxAppImage應用程序

2020-08-24 12:37:54

Linuxxargs命令

2021-10-02 10:10:47

LinuxBusyBox命令

2018-12-26 09:00:07

VirtualBoxFreeDOSLinux

2016-11-03 20:06:53

UbuntuGrafanaDocker

2022-06-10 10:01:17

MacDockerLinux

2020-06-15 18:20:37

Fedora電子書開源

2023-06-12 14:15:38

AI開源

2021-08-03 14:33:53

cron定時器Linux命令

2018-02-25 09:48:36

LinuxUbuntu文件系統

2015-08-21 09:07:52

LinuxNMAP安全

2019-09-11 14:30:45

UbuntuLinuxR語言
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 三级成人片 | 一区二区三区国产 | 欧美成人专区 | 国产亚洲精品精品国产亚洲综合 | 欧美片网站免费 | 亚洲高清在线观看 | 久久精品超碰 | 国产精品久久亚洲 | 成人影 | 欧美日韩精品一区二区三区蜜桃 | 97视频人人澡人人爽 | 99精品欧美一区二区蜜桃免费 | 午夜免费 | 美女久久久久久久 | 日韩一区二区三区在线视频 | 黄色一级免费 | 在线看免费 | 精品视频久久久久久 | 亚洲精品电影在线观看 | 欧美一区二区三区久久精品 | 日日夜夜精品免费视频 | 国产一二三区免费视频 | 三级在线免费 | 久久精品中文字幕 | 国产精品视频在线观看 | 草草影院ccyy | 国产一区二区三区高清 | 久久久精品 | 久久av网站| 91福利在线观看 | 国产精品久久久久久久 | 午夜影院操| 日本不卡一区 | 亚洲欧美中文日韩在线v日本 | 国产1区在线 | 日日干夜夜操天天操 | 亚洲天堂影院 | 伊大人久久 | 国产美女精品 | 免费久久久久久 | 女同久久另类99精品国产 |