ChatTTS:テキスト_to_ボイスモデルの初心者向けガイドと詳細なチュートリアル

この記事は約6分で読めます。

こんにちは、みなさん。今日は、対話シーン向けのテキスト_to_ボイスモデル、ChatTTSについて紹介します。このモデルは、LLMアシスタントの対話タスクなどに特化しており、英語と中国語の両言語をサポートしています。最大のモデルでは、10万時間以上の中英データで訓練されています。

プロジェクトバックグラウンド

ChatTTSは、対話型タスクに最適化され、自然で流暢な音声合成を実現し、複数の話者をサポートしています。さらに、笑い声、一時停止、挿入語などの細かいリズム特徴を予測して制御することも可能です。他のオープンソースモデルに比べて、圧倒的な性能を誇ります。

特長

  1. 対話型TTS:ChatTTSは対話型タスクに特化しており、自然で流暢な音声合成を実現しています。
  2. 細かい制御:モデルは細かいリズム特徴を予測して制御することができ、笑い声、一時停止、挿入語などが含まれます。
  3. 優れたリズム:ChatTTSはリズムにおいて多くのオープンソースTTSモデルを凌駕しており、さらなる研究をサポートする事前訓練済みモデルも提供しています。

インストール方法

  1. 公式コードをローカルにクローン
git clone git@github.com:2noise/ChatTTS.git
  1. conda環境をセットアップ
conda create --name chat-tts python=3.11 conda activate chat-tts
  1. 依存関係をインストール
cd 2noise/ChatTTS pip install -r requirements.txt
  1. ChatTTSモデルライブラリをダウンロード
import ChatTTS from IPython.display import Audio
chat = ChatTTS.Chat() chat.load_models()

上記のコードを実行すると、huggingfaceから必要なモデルライブラリがローカルにダウンロードされます。

基本的な使用方法

基本的なサンプルを実行

提供されているexample.ipynbファイルを参考に、Jupyter環境でコードを実行します。

完全なコード

import torch
torch._dynamo.config.cache_size_limit = 64
torch._dynamo.config.suppress_errors = True
torch.set_float32_matmul_precision('high')
import ChatTTS from IPython.display import Audio

chat = ChatTTS.Chat()
chat.load_models()

texts = ["So we found being competitive and collaborative was a huge way of staying motivated towards our goals, so one person to call when you fall off, one person who gets you back on then one person to actually do the activity with.",]*3 + ["我觉得像我们这些写程序的人,多多少少可能会对开源有一种情怀在吧我觉得开源是一个很好的形式。现在其实最先进的技术掌握在一些公司的手里的话,就他们并不会轻易的开放给所有的人用。"]*3
wavs = chat.infer(texts)
Audio(wavs[3], rate=24_000, autoplay=True)

高度な使用方法

1. パラメーターのカスタマイズ

語速や出力のランダム度、細かいリズム特徴(笑い声、一時停止、挿入語など)を設定することができます。

コード

params_infer_code = {'prompt':'[speed_5]', 'temperature':.3}
params_refine_text = {'prompt':'[oral_2][laugh_0][break_6]'}
wav = chat.infer('四川美食可多了,有麻辣火锅、宫保鸡丁、麻婆豆腐、担担面、回锅肉、夫妻肺片等,每样都让人垂涎三尺。', params_refine_text=params_refine_text, params_infer_code=params_infer_code)
Audio(wav[0], rate=24_000, autoplay=True)

2. 固定音色

ランダムに生成された音色を記録し、モデルにパラメーターとして渡して使用します。ここではrand_spkを使用します。

コード

rand_spk = chat.sample_random_speaker()
params_infer_code = {'spk_emb' : rand_spk, }
wav = chat.infer('四川美食确实以辣闻名,但也有不辣的选择。比如甜水面、汤圆、蛋烘糕、叶儿粑等,这些小吃口味温和,甜而不腻,也很受欢迎。', params_refine_text=params_refine_text, params_infer_code=params_infer_code)
Audio(wav[0], rate=24_000, autoplay=True)

総合的な使用

音色、ランダム度などのパラメーターと細かいリズム特徴を合わせて、音声生成を制御します。


会社名:株式会社Dolphin AI

Advanced Speech Interaction Solutions | Dolphin AI
Dolphin AIは音声認識、発音評価、音声合成APIなど20以上の言語をカバーする最先端の音声ソリューションを提供します。今すぐAPIをお試しください。

事業内容:
Dolphin SOE 英語発音評価サービスの開発&販売
Dolphin Voice 音声対話SaaS Platformの開発&販売

ドルフィンAIは自社開発のAI技術を持つ研究開発型のハイテク企業です。
独自技術の音声対話意図理解モデル(Dolphin Large Language Models)に基づき、音声認識、音声生成、意味理解、テキスト生成、機械翻訳、声紋認識、その他音声対話のフルチェーン技術を開発し、日本語、英語、中国語、韓国語、フランス語、スペイン語、ロシア語、ドイツ語、チベット語、タイ語、ベトナム語など20以上の言語に対応しています。
また、SaaSやオンプレミスのサービス形態を通じて、教育、医療、金融、その他の分野のお客様に基礎となるAI技術と業界ソリューションを提供しています。

アクセス情報:〒170-0013
東京都豊島区東池袋1-18-1 Hareza Tower 20F
JR山手線・埼京線 池袋駅東口(30番出口)より徒歩4分
東京メトロ丸の内線・副都心線・有楽町線 池袋駅東口(30番出口)より徒歩4分
西武池袋線 池袋駅東口(30番出口)より徒歩4分
東武東上線 池袋駅東口(30番出口)より徒歩4分

電話番号:(+81) 03-6775-4523
メールアドレス:contact@dolphin-ai.jp

タイトルとURLをコピーしました