英語 README ヒント プロジェクト | Discord ディスカッション グループ
ChatTTS を使用して Web ページ上でテキストを音声に合成するシンプルなローカル Web インターフェイス。中国語、英語、および帯番号をサポートし、API インターフェイスを提供します。
オリジナルの ChatTTS プロジェクト。バージョン 0.96 以降、ソース コードのデプロイメントでは最初に ffmpeg をインストールする必要があります。以前の音色ファイル csv と pt は使用できなくなりました。音色の値を入力して再生成してください。
[スポンサー]
302.AIは、世界のトップブランドを集めた従量課金制、月額料金ゼロ、各種AIの利用敷居ゼロのAIスーパーマーケットです。
包括的な機能、シンプルで使いやすい、オンデマンド支払いの敷居ゼロ、管理者とユーザーの分離
インターフェースのプレビュー
英数字記号制御文字混合効果
初めての場合は、huggingface.co または github からアセット ディレクトリにモデルをダウンロードします。ネットワークが不安定な場合は、ダウンロードに失敗する可能性があります。失敗した場合は、個別にダウンロードしてください。
ダウンロードして解凍すると、複数の pt ファイルを含むアセット フォルダーが表示されます。すべての pt ファイルをアセット ディレクトリにコピーし、ソフトウェアを再起動します。
GitHub ダウンロード アドレス: https://github.com/jianchang512/ChatTTS-ui/releases/download/v1.0/all-models.7z
Baidu ネットワーク ディスクのダウンロード アドレス: https://pan.baidu.com/s/1yGDZM9YNN7kW9e7SFo8lLw?pwd=ct5x
プロジェクト リポジトリをプルします
任意のパスにプロジェクトのクローンを作成します。次に例を示します。
git clone https://github.com/jianchang512/ChatTTS-ui.git chat-tts-ui
スタートランナー
プロジェクト ディレクトリを入力します。
cd chat-tts-ui
コンテナを起動し、初期化ログを表示します。
gpu版本
docker compose -f docker-compose.gpu.yaml up -d
cpu版本
docker compose -f docker-compose.cpu.yaml up -d
docker compose logs -f --no-log-prefix
ChatTTS WebUI にアクセス
启动:['0.0.0.0', '9966']
、つまり、 IP:9966
アクセスします。例:
http://127.0.0.1:9966
http://192.168.1.100:9966
メイン ブランチから最新のコードを取得します。
git checkout main
git pull origin main
次のステップに進み、最新のイメージに更新します。
docker compose down
gpu版本
docker compose -f docker-compose.gpu.yaml up -d --build
cpu版本
docker compose -f docker-compose.cpu.yaml up -d --build
docker compose logs -f --no-log-prefix
python3.9-3.11の環境を構築し、ffmpegをインストールします。 yum install ffmpeg
またはapt-get install ffmpeg
など。
空のディレクトリ/data/chattts
を作成し、コマンドcd /data/chattts && git clone https://github.com/jianchang512/chatTTS-ui .
仮想環境の作成python3 -m venv venv
仮想環境source ./venv/bin/activate
依存関係をインストールしますpip3 install -r requirements.txt
CUDA アクセラレーションが必要ない場合は、次を実行します。
pip3 install torch==2.2.0 torchaudio==2.2.0
CUDA アクセラレーションが必要な場合は、次を実行します。
pip install torch==2.2.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/cu118
pip install nvidia-cublas-cu11 nvidia-cudnn-cu11
CUDA11.8+ ToolKitもインストールする必要があります。インストール方法は自分で検索するか、https://juejin.cn/post/7318704408727519270を参照してください。
CUDA に加えて、AMD GPU も高速化に使用できます。これには、ROCm および PyTorch_ROCm バージョンのインストールが必要です。 AMG GPU は、コードを追加変更することなく、PyTorch でそのまま ROCm を使用します。
pip3 install torch==2.2.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/rocm6.0
インストールが完了したら、rocm-smi コマンドを使用してシステム内の AMD GPU を表示できます。次のトーチ コード (query_gpu.py) を使用して、現在の AMD GPU デバイスをクエリすることもできます。
import torch
print(torch.__version__)
if torch.cuda.is_available():
device = torch.device("cuda") # a CUDA device object
print('Using GPU:', torch.cuda.get_device_name(0))
else:
device = torch.device("cpu")
print('Using CPU')
torch.cuda.get_device_properties(0)
上記のコードを使用し、AMD Radeon Pro W7900 を例として、次のようにデバイスにクエリを実行します。
$ python ~/query_gpu.py
2.4.0.dev20240401+rocm6.0
Using GPU: AMD Radeon PRO W7900
python3 app.py
実行して開始すると、ブラウザ ウィンドウがデフォルトのアドレスhttp://127.0.0.1:9966
で自動的に開きます (注: モデルはデフォルトでモデルスコープの魔法の塔からダウンロードされ、プロキシ ダウンロードは使用できません。プロキシをオフにしてください)
python3.9-3.11 環境を構成し、git をインストールし、コマンドbrew install libsndfile git [email protected]
実行して実行を続行します。
brew install ffmpeg
export PATH="/usr/local/opt/[email protected]/bin:$PATH"
source ~/.bash_profile
source ~/.zshrc
空のディレクトリ/data/chattts
を作成し、コマンドcd /data/chattts && git clone https://github.com/jianchang512/chatTTS-ui .
仮想環境の作成python3 -m venv venv
仮想環境source ./venv/bin/activate
依存関係をインストールしますpip3 install -r requirements.txt
torch のインストールpip3 install torch==2.2.0 torchaudio==2.2.0
python3 app.py
実行して開始すると、ブラウザ ウィンドウがデフォルトのアドレスhttp://127.0.0.1:9966
で自動的に開きます (注: モデルはデフォルトでモデルスコープの魔法の塔からダウンロードされ、プロキシ ダウンロードは使用できません。プロキシをオフにしてください)
python3.9-3.11 をダウンロードします。インストール時に必ずAdd Python to environment variables
を選択してください。
ffmpeg.exe をダウンロードし、ソフトウェア ディレクトリの ffmpeg フォルダーに配置します。
git をダウンロードしてインストールします (https://github.com/git-for-windows/git/releases/download/v2.45.1.windows.1/Git-2.45.1-64-bit.exe)
空のフォルダーD:/chattts
を作成し、アドレス バーにcmd
と入力して Enter キーを押し、ポップアップ cmd ウィンドウでコマンドgit clone https://github.com/jianchang512/chatTTS-ui .
仮想環境を作成し、コマンドpython -m venv venv
を実行します。
仮想環境をアクティブにするには、 .venvscriptsactivate
実行します。
依存関係をインストールするには、 pip install -r requirements.txt
を実行します。
CUDA アクセラレーションが必要ない場合は、
pip install torch==2.2.0 torchaudio==2.2.0
を実行します。
CUDA アクセラレーションが必要な場合は、次を実行します。
pip install torch==2.2.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/cu118
CUDA11.8+ ToolKitもインストールする必要があります。インストール方法は自分で検索するか、https://juejin.cn/post/7318704408727519270を参照してください。
python app.py
実行して開始すると、ブラウザ ウィンドウがデフォルトのアドレスhttp://127.0.0.1:9966
で自動的に開きます (注: モデルはデフォルトでモデルスコープの魔法の塔からダウンロードされ、プロキシ ダウンロードは使用できません。プロキシをオフにしてください)
GPU メモリが 4G 未満の場合、CPU が強制的に使用されます。
Windows または Linux では、ビデオ メモリが 4G を超え、NVIDIA グラフィック カードであるにもかかわらず、ソース コードの展開後も CPU が引き続き使用されている場合は、最初に torch をアンインストールしてから、 pip uninstall -y torch torchaudio
を再インストールしてみてください。 pip uninstall -y torch torchaudio
、cuda バージョンの torch を再インストールします。 pip install torch==2.2.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/cu118
。 CUDA11.8+がインストールされている必要があります
デフォルトでは、modelscope に接続できるかどうかを検出し、接続できる場合は、modelscope からモデルをダウンロードし、そうでない場合は、huggingface.co からモデルをダウンロードします。
バージョン 0.96 以降、ChatTTS カーネルのアップグレードにより、このサイト (https://modelscope.cn/studios/ttwwaaa/ChatTTS_Speaker) からダウンロードした pt ファイルを直接使用することはできなくなりました。
したがって、変換スクリプト cover-pt.py を追加すると、Win 統合パッケージは cover-pt.exe ファイルを直接ダウンロードして app.exe と同じディレクトリに配置し、ダブルクリックして実行できます。
python cover-pt.py
を実行すると、 speaker
ディレクトリにあるseed_
で始まり_emb.pt
で終わるファイル、つまりダウンロード後のデフォルトのファイル名 pt が利用可能なエンコード形式に変換されます。 _emb-covert.pt
で終わるという名前に変更されました。
例:
このファイルがspeaker/seed_2155_restored_emb.pt
に存在する場合、 speaker/seed_2155_restored_emb-cover.pt
に変換され、元の pt ファイルは削除され、変換されたファイルのみが残ります。
デフォルトのアドレスはhttp://127.0.0.1:9966
です。これを変更する場合は、ディレクトリ内の.env
ファイルを開き、 WEB_ADDRESS=127.0.0.1:9966
をWEB_ADDRESS=192.168.0.10:9966
などの適切な IP およびポートに変更します。 WEB_ADDRESS=192.168.0.10:9966
なので、LAN からアクセスできるようになります。
リクエストメソッド: POST
リクエストアドレス: http://127.0.0.1:9966/tts
リクエストパラメータ:
text: str| 必須、音声に合成されるテキスト
voice: オプション、デフォルトは 2222、2222 | 7869 | 6653 | 5099 のいずれか 1 つを選択するか、任意の音声が使用されます。
プロンプト: str| オプション、デフォルトは空、笑いと一時停止を設定します (例: [oral_2][Laugh_0][break_6])
温度: float| オプション、デフォルトは 0.3
top_p: float はオプション、デフォルトは 0.7
top_k: int| オプション、デフォルトは 20
Skip_refine: int| オプション、デフォルトは 0、1=絞り込みテキストをスキップ、0=スキップしない
Custom_voice: int| オプション、デフォルトは 0、音色値を取得するときのカスタム シード値は 0 より大きい整数が必要です、設定されている場合、これが優先され、 voice
無視されます
戻り値: json データ
正常に返されました: {code:0,msg:ok,audio_files:[dict1,dict2]}
其中 audio_files 是字典数组,每个元素dict为 {filename:wav文件绝对路径,url:可下载的wav网址}
失敗時の返品:
{code:1,msg:错误原因}
# API调用代码
import requests
res = requests.post('http://127.0.0.1:9966/tts', data={
"text": "若不懂无需填写",
"prompt": "",
"voice": "3333",
"temperature": 0.3,
"top_p": 0.7,
"top_k": 20,
"skip_refine": 0,
"custom_voice": 0
})
print(res.json())
#ok
{code:0, msg:'ok', audio_files:[{filename: E:/python/chattts/static/wavs/20240601-22_12_12-c7456293f7b5e4dfd3ff83bbd884a23e.wav, url: http://127.0.0.1:9966/static/wavs/20240601-22_12_12-c7456293f7b5e4dfd3ff83bbd884a23e.wav}]}
#error
{code:1, msg:"error"}
pyVideoTrans を 1.82 以降にアップグレード https://github.com/jianchang512/pyvideotrans
ChatTTS
選択します。