英語 | 中国語
Microsoft の VALL-E X ゼロショット TTS モデルのオープンソース実装。
研究やアプリケーションでの使用のために、トレーニング済みのモデルを一般に公開します。
VALL-E X は、Microsoft が提案した驚くべき多言語音声合成 (TTS) モデルです。 Microsoft は最初に研究論文を発表しましたが、コードや事前トレーニングされたモデルはリリースしませんでした。このテクノロジーの可能性と価値を認識し、私たちのチームは結果を再現し、独自のモデルをトレーニングすることに挑戦しました。トレーニングされた VALL-E X モデルをコミュニティと共有し、誰もが強力な次世代 TTS を体験できることを嬉しく思います。
モデルの詳細については、モデル カードに記載されています。
2023.09.10
2023.08.30
2023.08.23
2023.08.20
2023.08.14
git clone https://github.com/Plachtaa/VALL-E-X.git
cd VALL-E-X
pip install -r requirements.txt
注: プロンプトを表示したい場合は、ffmpeg をインストールし、そのフォルダーを環境変数 PATH に追加する必要があります。
プログラムを初めて実行すると、対応するモデルが自動的にダウンロードされます。
ダウンロードが失敗し、エラーが報告された場合は、以下の手順に従ってモデルを手動でダウンロードしてください。
(フォルダの大文字小文字に注意してください)
インストールディレクトリにcheckpoints
フォルダがあるか確認してください。そうでない場合は、インストール ディレクトリにcheckpoints
フォルダー ( ./checkpoints/
) を手動で作成します。
checkpoints
フォルダーにvallex-checkpoint.pt
ファイルがあるかどうかを確認します。そうでない場合は、ここからvallex-checkpoint.pt
ファイルを手動でダウンロードし、 checkpoints
フォルダーに配置してください。
インストールディレクトリにwhisper
フォルダがあるか確認してください。そうでない場合は、インストール ディレクトリにwhisper
フォルダー ( ./whisper/
) を手動で作成します。
whisper
フォルダーにmedium.pt
ファイルがあるかどうかを確認してください。そうでない場合は、ここからmedium.pt
ファイルを手動でダウンロードし、 whisper
フォルダーに配置してください。
ローカル マシンに環境をセットアップする準備がまだ整っていませんか?問題ない!オンライン デモをご利用いただけます。 Hugging Face または Google Colab で VALL-E X を直接試すことができ、モデルの機能を手間なく体験できます。
VALL-E X には最先端の機能が満載です。
多言語 TTS : 自然で表現力豊かな音声合成により、英語、中国語、日本語の 3 か国語で話します。
ゼロショット音声クローン作成: 見えない話者の 3 ~ 10 秒の短い録音を登録し、VALL-E X がその話者と同じように聞こえる、パーソナライズされた高品質の音声を作成する様子をご覧ください。
さらに多くの例については、デモ ページをご覧ください。
from utils . generation import SAMPLE_RATE , generate_audio , preload_models
from scipy . io . wavfile import write as write_wav
from IPython . display import Audio
# download and load all models
preload_models ()
# generate audio from text
text_prompt = """
Hello, my name is Nose. And uh, and I like hamburger. Hahaha... But I also have other interests such as playing tactic toast.
"""
audio_array = generate_audio ( text_prompt )
# save audio to disk
write_wav ( "vallex_generation.wav" , SAMPLE_RATE , audio_array )
# play text in notebook
Audio ( audio_array , rate = SAMPLE_RATE )
text_prompt = """
チュソクは私のお気に入りの祭りです。 私は数日間休んで、友人や家族との時間を過ごすことができます。
"""
audio_array = generate_audio ( text_prompt )
注: VALL-E X コントロールは、コードスイッチ テキストを合成する場合でも完璧にアクセントを加えます。ただし、それぞれの文の言語を手動で指定する必要があります (g2p ツールはルールベースであるため)。
text_prompt = """
[EN]The Thirty Years' War was a devastating conflict that had a profound impact on Europe.[EN]
[ZH]这是历史的开始。 如果您想听更多,请继续。[ZH]
"""
audio_array = generate_audio ( text_prompt , language = 'mix' )
VALL-E X は、推論に直接使用できる数十のスピーカーボイスを提供します。コード内のすべての音声を参照する
VALL-E X は、指定されたプリセットのトーン、ピッチ、感情、韻律の一致を試みます。このモデルは、音楽や周囲の騒音などを保存することも試みます。
text_prompt = """
I am an innocent boy with a smoky voice. It is a great honor for me to speak at the United Nations today.
"""
audio_array = generate_audio ( text_prompt , prompt = "dingzhen" )
VALL-E X は音声クローン作成をサポートしています!任意の人物、キャラクター、または自分の声で音声プロンプトを作成し、他の音声プリセットと同様に使用できます。
音声プロンプトを作成するには、3 ~ 10 秒間のスピーチとそのスピーチのトランスクリプトを提供する必要があります。トランスクリプトを空白のままにして、Whisper モデルにトランスクリプトを生成させることもできます。
VALL-E X は、指定されたプロンプトのトーン、ピッチ、感情、韻律を一致させようとします。このモデルは、音楽や周囲の騒音などを保存することも試みます。
from utils . prompt_making import make_prompt
### Use given transcript
make_prompt ( name = "paimon" , audio_prompt_path = "paimon_prompt.wav" ,
transcript = "Just, what was that? Paimon thought we were gonna get eaten." )
### Alternatively, use whisper
make_prompt ( name = "paimon" , audio_prompt_path = "paimon_prompt.wav" )
では、作成したプロンプトを試してみましょう。
from utils . generation import SAMPLE_RATE , generate_audio , preload_models
from scipy . io . wavfile import write as write_wav
# download and load all models
preload_models ()
text_prompt = """
Hey, Traveler, Listen to this, This machine has taken my voice, and now it can talk just like me!
"""
audio_array = generate_audio ( text_prompt , prompt = "paimon" )
write_wav ( "paimon_cloned.wav" , SAMPLE_RATE , audio_array )
コードに慣れていないですか?問題ない!また、VALL-E X 用の使いやすいグラフィカル インターフェイスも作成しました。これにより、モデルを簡単に操作できるようになり、音声のクローン作成や多言語音声合成が簡単になります。
次のコマンドで UI を起動できます。
python -X utf8 launch-ui.py
VALL-E X は CPU と GPU ( pytorch 2.0+
、CUDA 11.7 および CUDA 12.0) の両方でうまく動作します。
6GB の GPU VRAM は、オフロードせずに VALL-E X を実行するのに十分です。
VALL-E X は Bark、VALL-E、AudioLM に似ており、EnCodec によって量子化されたオーディオ トークンを予測することで GPT スタイルでオーディオを生成します。
バークとの比較:
言語 | 状態 |
---|---|
英語 (en) | ✅ |
日本語 (ja) | ✅ |
中国語、簡体字 (zh) | ✅ |
wget
使用してモデルをディレクトリ./checkpoints/
にダウンロードします。./checkpoints/
に配置してください。 .bat
スクリプトVALL-E X が面白くて役に立つと思ったら、GitHub でスターを付けてください。 ️ これは、モデルを改善し続け、エキサイティングな機能を追加することを奨励します。
VALL-E X は MIT ライセンスに基づいてライセンスされています。
ご質問がありますか、サポートが必要ですか?気軽に問題を開いたり、Discord に参加したりしてください
音声クローン作成おめでとうございます! ?