見出し画像

Barkというtext-to-audioを使ってみた!

Barkは、suno.aiが作成したテキストオーディオ生成モデルです。多言語音声、音楽、バックグラウンドノイズ、簡単な効果音などをテキストで指定してオーディオを生成できます。GitHubでプロジェクトのコードやドキュメントを見ることができます。



今回は、下記のコードを利用させて頂きました。


今回、Google Colabで利用したコードは以下です。

# install bark as well as pytorch nightly to get blazing fast flash-attention
!pip install git+https://github.com/suno-ai/bark.git && \
  pip uninstall -y torch torchvision torchaudio && \
  pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu118

from bark import SAMPLE_RATE, generate_audio, preload_models
from IPython.display import Audio
preload_models()

text_prompt = """
     Hello, my name is Suno. And, uh — and I like pizza. [laughs] 
     But I also have other interests such as playing tic tac toe.
"""
audio_array = generate_audio(text_prompt)
Audio(audio_array, rate=SAMPLE_RATE)

上記を実行すると、下記が作成されます。ただ、実行時間はGoogle ColabのGPU標準で実施しましたが、約14分ほどかかっています。音声生成に時間がかかっている印象を受けます。


上記の生成された音声を聞いてみると、リズムや笑い声などが人間みたく話をしているので凄いなと印象を受けました。


他にも凄いなと思ったのが、下記のように男性、女性と書いて書くと会話をしているように音声を作成してくれるのが技術の進化を実感しました。

text_prompt = """
    WOMAN: I would like an oatmilk latte please.
    MAN: Wow, that's expensive!
"""
audio_array = generate_audio(text_prompt)


日本語も対応しています。history_prompt="ja_speaker_1"と書いてみましょう。日本語にすると違和感が少し感じるかもしれません。

text_prompt = """
    今日は疲れたから、早く眠りましょう。
"""
audio_array = generate_audio(text_prompt, history_prompt="ja_speaker_1")
Audio(audio_array, rate=SAMPLE_RATE)


他にもいくつか、promptに代入する値で、音楽や笑い声やため息などが用意されています。


今回のGoogle ColabのRAMやディスク状況は以下です。

今回、suno-aiのbarkを試してみて、テキストから音声作成を経験してみました。思ったよりも綺麗に音声が作成されているのが印象的でした。ただ作成に時間がかかるのは難点かもしれませんが、今後の改良が期待されると思います。

この記事が気に入ったらサポートをしてみませんか?