Bahasa Inggris README |. Proyek Tip |. Grup Diskusi Perselisihan
Antarmuka web lokal sederhana yang menggunakan ChatTTS untuk mensintesis teks menjadi ucapan di halaman web, mendukung angka Cina, Inggris, dan campuran, serta menyediakan antarmuka API.
Proyek ChatTTS asli. Mulai versi 0.96, penerapan kode sumber harus menginstal ffmpeg terlebih dahulu. File timbre sebelumnya csv dan pt tidak lagi tersedia. Silakan isi nilai timbre dan buat ulang
[Sponsor]
302.AI adalah supermarket AI yang menyatukan merek-merek ternama dunia, dengan sistem bayar sesuai pemakaian, tanpa biaya bulanan, dan tanpa ambang batas untuk menggunakan berbagai jenis AI.
Fungsi yang komprehensif, sederhana dan mudah digunakan, ambang batas nol untuk pembayaran sesuai permintaan, pemisahan pengelola dan pengguna
Pratinjau antarmuka
Efek campuran karakter kontrol simbol alfanumerik
Unduh paket terkompresi dari Rilis, unzip dan klik dua kali app.exe untuk menggunakannya
Beberapa perangkat lunak keamanan mungkin melaporkan virus, silakan keluar atau gunakan penerapan kode sumber
Jika kartu grafis NVIDIA lebih besar dari memori video 4G dan CUDA11.8+ diinstal, akselerasi GPU akan diaktifkan.
Untuk pertama kalinya, unduh model dari huggingface.co atau github ke direktori aset. Jika jaringan tidak stabil, unduhan mungkin gagal, silakan unduh secara terpisah.
Setelah mengunduh dan membuka ritsleting, Anda akan melihat folder aset, yang berisi beberapa file pt. Salin semua file pt ke direktori aset, lalu mulai ulang perangkat lunak.
Alamat unduhan GitHub: https://github.com/jianchang512/ChatTTS-ui/releases/download/v1.0/all-models.7z
Alamat unduhan disk jaringan Baidu: https://pan.baidu.com/s/1yGDZM9YNN7kW9e7SFo8lLw?pwd=ct5x
Tarik repositori proyek
Kloning proyek di jalur mana pun, misalnya:
git clone https://github.com/jianchang512/ChatTTS-ui.git chat-tts-ui
Mulai Pelari
Masuk ke direktori proyek:
cd chat-tts-ui
Mulai wadah dan lihat log inisialisasi:
versi gpu docker composer -f docker-compose.gpu.yaml up -d versi cpu buruh pelabuhan menulis -f docker-compose.cpu.yaml naik -d buruh pelabuhan menulis log -f --no-log-prefix
Kunjungi WebUI ChatTTS
启动:['0.0.0.0', '9966']
, yaitu mengakses IP:9966
, misalnya:
Mesin ini: http://127.0.0.1:9966
Server: http://192.168.1.100:9966
Dapatkan kode terbaru dari cabang utama:
git checkout utama git pull asal utama
Lanjutkan ke langkah berikutnya dan perbarui ke gambar terbaru:
buruh pelabuhan menulis versi gpu docker composer -f docker-compose.gpu.yaml up -d --build versi cpu buruh pelabuhan menulis -f docker-compose.cpu.yaml naik -d --build buruh pelabuhan menulis log -f --no-log-prefix
Konfigurasikan lingkungan python3.9-3.11 dan instal ffmpeg. yum install ffmpeg
atau apt-get install ffmpeg
dll.
Buat direktori kosong /data/chattts
dan jalankan perintah cd /data/chattts && git clone https://github.com/jianchang512/chatTTS-ui .
Buat lingkungan virtual python3 -m venv venv
Aktifkan source ./venv/bin/activate
Instal dependensi pip3 install -r requirements.txt
Jika akselerasi CUDA tidak diperlukan, jalankan
pip3 install torch==2.2.0 torchaudio==2.2.0
Jika akselerasi CUDA diperlukan, jalankan
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
Anda juga perlu menginstal CUDA11.8+ ToolKit, silakan cari sendiri metode instalasinya atau lihat https://juejin.cn/post/7318704408727519270
Selain CUDA, GPU AMD juga dapat digunakan untuk akselerasi yang memerlukan instalasi versi ROCm dan PyTorch_ROCm. GPU AMG menggunakan ROCm secara langsung di PyTorch tanpa modifikasi kode tambahan.
pip3 install torch==2.2.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/rocm6.0
Setelah instalasi selesai, Anda dapat menggunakan perintah rocm-smi untuk melihat GPU AMD di sistem. Anda juga dapat menggunakan kode Torch berikut (query_gpu.py) untuk menanyakan Perangkat GPU AMD saat ini.
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)
Dengan menggunakan kode di atas, dengan mengambil AMD Radeon Pro W7900 sebagai contoh, kueri perangkat sebagai berikut.
$ python ~/query_gpu.py 2.4.0.dev20240401+rocm6.0 Using GPU: AMD Radeon PRO W7900
Silakan merujuk ke https://rocm.docs.amd.com/projects/install-on-linux/en/latest/tutorial/quick-start.html untuk menginstal Driver GPU AMD dan ROCm.
Kemudian instal versi PyTorch_ROCm melalui https://pytorch.org/.
Jalankan python3 app.py
untuk memulai, dan jendela browser akan otomatis terbuka dengan alamat default http://127.0.0.1:9966
(Catatan: model diunduh dari menara ajaib modelscope secara default, dan pengunduhan proxy tidak dapat digunakan. Harap matikan proxy)
Konfigurasikan lingkungan python3.9-3.11, instal git, dan jalankan perintah brew install libsndfile git [email protected]
untuk melanjutkan eksekusi.
brew install ffmpeg export PATH="/usr/local/opt/[email protected]/bin:$PATH" source ~/.bash_profile source ~/.zshrc
Buat direktori kosong /data/chattts
dan jalankan perintah cd /data/chattts && git clone https://github.com/jianchang512/chatTTS-ui .
Buat lingkungan virtual python3 -m venv venv
Aktifkan source ./venv/bin/activate
Instal dependensi pip3 install -r requirements.txt
Instal obor pip3 install torch==2.2.0 torchaudio==2.2.0
Jalankan python3 app.py
untuk memulai, dan jendela browser akan otomatis terbuka dengan alamat default http://127.0.0.1:9966
(Catatan: model diunduh dari menara ajaib modelscope secara default, dan pengunduhan proxy tidak dapat digunakan. Harap matikan proxy)
Unduh python3.9-3.11, pastikan untuk memilih Add Python to environment variables
saat menginstal.
Unduh ffmpeg.exe dan letakkan di folder ffmpeg di direktori perangkat lunak
Unduh dan instal git, https://github.com/git-for-windows/git/releases/download/v2.45.1.windows.1/Git-2.45.1-64-bit.exe
Buat folder kosong D:/chattts
dan masukkan. Masukkan cmd
di bilah alamat dan tekan Enter. Di jendela cmd pop-up, jalankan perintah git clone https://github.com/jianchang512/chatTTS-ui .
Buat lingkungan virtual dan jalankan perintah python -m venv venv
Untuk mengaktifkan lingkungan virtual, jalankan .venvscriptsactivate
Untuk menginstal dependensi, jalankan pip install -r requirements.txt
Jika akselerasi CUDA tidak diperlukan,
Jalankan pip install torch==2.2.0 torchaudio==2.2.0
Jika akselerasi CUDA diperlukan, jalankan
pip install torch==2.2.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/cu118
Anda juga perlu menginstal CUDA11.8+ ToolKit, silakan cari sendiri metode instalasinya atau lihat https://juejin.cn/post/7318704408727519270
Jalankan python app.py
untuk memulai, dan jendela browser akan otomatis terbuka dengan alamat default http://127.0.0.1:9966
(Catatan: model diunduh dari menara ajaib modelscope secara default, dan pengunduhan proxy tidak dapat digunakan. Harap matikan proxy)
Jika memori GPU kurang dari 4G, maka CPU akan terpaksa digunakan.
Di Windows atau Linux, jika memori video lebih besar dari 4G dan merupakan kartu grafis NVIDIA, tetapi CPU masih digunakan setelah penerapan kode sumber, Anda dapat mencoba menghapus instalasi pip uninstall -y torch torchaudio
terlebih dahulu lalu menginstalnya kembali pip uninstall -y torch torchaudio
dan instal ulang torch versi cuda. pip install torch==2.2.0 torchaudio==2.2.0 --index-url https://download.pytorch.org/whl/cu118
. CUDA11.8+ harus diinstal
Secara default, ini mendeteksi apakah modelscope dapat dihubungkan. Jika bisa, unduh model dari modelscope, jika tidak, unduh model dari huggingface.co.
Setelah versi 0.96, karena peningkatan kernel ChatTTS, tidak mungkin lagi menggunakan file pt yang diunduh dari situs ini secara langsung (https://modelscope.cn/studios/ttwwaaa/ChatTTS_Speaker)
Oleh karena itu, dengan menambahkan skrip konversi cover-pt.py, paket integrasi Win dapat langsung mengunduh file cover-pt.exe dan menempatkannya di direktori yang sama dengan app.exe dan klik dua kali untuk menjalankannya.
Setelah mengeksekusi python cover-pt.py
, file yang dimulai dengan seed_
dan diakhiri dengan _emb.pt
di direktori speaker
, yaitu nama file default pt setelah diunduh, akan diubah menjadi format pengkodean yang tersedia berganti nama menjadi Berakhir dengan _emb-covert.pt
.
contoh:
Jika file ini ada di speaker/seed_2155_restored_emb.pt
, maka akan dikonversi menjadi speaker/seed_2155_restored_emb-cover.pt
, lalu file pt asli akan dihapus, hanya menyisakan file yang dikonversi.
Alamat defaultnya adalah http://127.0.0.1:9966
. Jika Anda ingin memodifikasinya, Anda dapat membuka file .env
di direktori dan mengubah WEB_ADDRESS=127.0.0.1:9966
ke IP dan port yang sesuai, seperti WEB_ADDRESS=192.168.0.10:9966
sehingga dapat diakses oleh LAN
Metode permintaan: POST
Alamat permintaan: http://127.0.0.1:9966/tts
Parameter permintaan:
teks: str|. Diperlukan, teks yang akan disintesis menjadi ucapan
suara: Opsional, defaultnya adalah 2222, angka yang menentukan suara, 2222 |. 7869 |. 6653 |. 4099 |.
prompt: str|. opsional, default kosong, atur tawa dan jeda, misalnya [oral_2][laugh_0][break_6]
suhu: float|
top_p: float|.opsional, default 0.7
top_k: int|.opsional, default 20
skip_refine: int|. Opsional, default 0, 1=lewati perbaikan teks, 0=jangan lewati
custom_voice: int|. Opsional, default 0, nilai seed khusus saat mendapatkan nilai timbre, memerlukan bilangan bulat lebih besar dari 0, jika disetel, ini akan berlaku, voice
akan diabaikan
Kembali: data json
Pengembalian berhasil: {code:0,msg:ok,audio_files:[dict1,dict2]}
其中 audio_files 是字典数组,每个元素dict为 {filename:wav文件绝对路径,url:可下载的wav网址}
Pengembalian kegagalan:
{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"}
Tingkatkan pyVideoTrans ke 1.82+ https://github.com/jianchang512/pyvideotrans
Klik Menu-Settings-ChatTTS dan isi alamat permintaan. Secara default, http://127.0.0.1:9966 harus diisi.
Setelah tes tidak ada masalah, pilih ChatTTS
di antarmuka utama