(Cina Sederhana | Bahasa Inggris)

Paddlespeech adalah alat open-source pada platform Paddlepaddle untuk berbagai tugas penting dalam pidato dan audio, dengan model yang canggih dan berpengaruh.
Paddlespeech memenangkan Penghargaan Demo Terbaik NAACL2022, silakan lihat makalah kami tentang Arxiv.
| Audio Input | Hasil pengakuan |
|---|---|
![]() | Saya mengetuk pintu di sisi kuno bangunan. |
![]() | Saya pikir hal terpenting tentang berlari adalah memberi saya kesehatan yang baik. |
| Audio Input | Hasil terjemahan |
|---|---|
![]() | Saya mengetuk pintu kuno bangunan ini. |
| Teks input | Audio sintetis |
|---|---|
| Hidup itu seperti sekotak cokelat, Anda tidak pernah tahu apa yang akan Anda dapatkan. | ![]() |
| Selamat pagi, hari ini adalah 2020/10/29, dengan suhu minimum -3 ° C. | ![]() |
| Ji Ji Ji, ayam pengumpul, dan ayam adalah ayam berduri. The Thorn Chicken lapar, ji ji dan ji ji membantu ayam. Ketika ayam dicampur, mereka bergabung dengan Ji Ji. Ji Ji sangat cepat menabrak ayam, ayamnya mendesak, dan bajingan itu mendesak, ji ji cemas, dan kemudian dia memukul ayam. Ji Ji dengan cepat menabrak ayam. Ketika ayam itu mati, ji ji bersemangat, dan dia menulis "Ji Ji mengetuk ayam". | ![]() |
| Halo semuanya, saya adalah guru virtual burung beo. Mari Baca Puisi. Saya dan angin musim semi lewat. Anda mengambil air musim gugur untuk mengambil galaksi. | ![]() |
| IKEA tidak perlu untuk Anda bicarakan, tetapi apa yang Anda katakan akan menjadi presentasi dan pengakuan. | ![]() |
| Setiap negara memiliki lagu kebangsaannya sendiri | ![]() |
Untuk audio yang disintesis lebih lanjut, silakan merujuk ke sampel Text-to-Speech Paddlespeech.
| Teks input | Teks keluaran |
|---|---|
| Cuacanya sangat bagus hari ini. Apakah Anda punya waktu di sore hari? Saya ingin meminta Anda untuk makan malam bersama | Cuaca hari ini sangat bagus! Apakah Anda bebas di sore hari? Saya ingin meminta Anda makan bersama. |
Melalui implementasi yang mudah digunakan, efisien, fleksibel, dan dapat diskalakan, visi kami adalah untuk memberdayakan aplikasi industri dan penelitian akademik, termasuk pelatihan, modul inferensi & pengujian, dan proses penyebaran. Untuk lebih spesifik, fitur toolkit ini di:
PaddleSpeech Streaming Server tersedia untuk Streaming ASR dengan Punctuation Restoration dan Token Timestamp dan Text-to-Speech .PaddleSpeech Server tersedia untuk Audio Classification , Automatic Speech Recognition dan Text-to-Speech , Speaker Verification dan Punctuation Restoration .PaddleSpeech CLI tersedia untuk Speaker Verification .PaddleSpeech CLI tersedia untuk Audio Classification , Automatic Speech Recognition , Speech Translation (English to Chinese) dan Text-to-Speech .
Kami sangat menyarankan pengguna kami untuk menginstal Paddlespeech di Linux dengan Python> = 3.8 dan Paddlepaddle <= 2.5.1 . Beberapa versi baru dayung tidak memiliki dukungan untuk adaptasi di dayung, jadi saat ini hanya versi 2.5.1 dan sebelumnya yang dapat didukung.
Paddlespeech tergantung pada daddlepaddle. Untuk instalasi, silakan merujuk ke situs web resmi Paddlepaddle dan memilih sesuai dengan mesin Anda sendiri. Berikut adalah contoh versi CPU.
pip install paddlepaddle -i https://mirror.baidu.com/pypi/simpleAnda juga dapat menentukan versi Paddlepaddle atau menginstal versi Kembangkan.
# install 2.4.1 version. Note, 2.4.1 is just an example, please follow the minimum dependency of paddlepaddle for your selection
pip install paddlepaddle==2.4.1 -i https://mirror.baidu.com/pypi/simple
# install develop version
pip install paddlepaddle==0.0.0 -f https://www.paddlepaddle.org.cn/whl/linux/cpu-mkl/develop.htmlAda dua metode instalasi cepat untuk paddlespeech, satu adalah instalasi PIP, dan yang lainnya adalah kompilasi kode sumber (disarankan).
pip install pytest-runner
pip install paddlespeechgit clone https://github.com/PaddlePaddle/PaddleSpeech.git
cd PaddleSpeech
pip install pytest-runner
pip install .Untuk masalah instalasi lebih lanjut, seperti lingkungan Conda, librosa, masalah GCC, instalasi Kaldi, dll., Anda dapat merujuk ke dokumen instalasi ini. Jika Anda mengalami masalah selama instalasi, Anda dapat meninggalkan pesan di #2150 dan menemukan masalah terkait
Pengembang dapat mencoba model kami dengan baris perintah Paddlespeech atau Python. Ubah --input untuk menguji audio/teks Anda sendiri dan mendukung audio format WAV 16K.
Anda juga dapat dengan cepat mengalaminya di AI Studio? Demo API Paddlespeech
Uji unduhan sampel audio uji
wget -c https://paddlespeech.bj.bcebos.com/PaddleAudio/zh.wav
wget -c https://paddlespeech.bj.bcebos.com/PaddleAudio/en.wavPengalaman baris perintah
paddlespeech asr --lang zh --input zh.wavPengalaman API Python
> >> from paddlespeech . cli . asr . infer import ASRExecutor
> >> asr = ASRExecutor ()
> >> result = asr ( audio_file = "zh.wav" )
> >> print ( result )
我认为跑步最重要的就是给我带来了身体健康Output 24K laju sampel wav format audio
Pengalaman baris perintah
paddlespeech tts --input "你好,欢迎使用百度飞桨深度学习框架! " --output output.wavPengalaman API Python
> >> from paddlespeech . cli . tts . infer import TTSExecutor
> >> tts = TTSExecutor ()
> >> tts ( text = "今天天气十分不错。" , output = "output.wav" )Model klasifikasi suara berdasarkan 527 kategori dataset audioset
Pengalaman baris perintah
paddlespeech cls --input zh.wavPengalaman API Python
> >> from paddlespeech . cli . cls . infer import CLSExecutor
> >> cls = CLSExecutor ()
> >> result = cls ( audio_file = "zh.wav" )
> >> print ( result )
Speech 0.9027186632156372Pengalaman baris perintah
paddlespeech vector --task spk --input zh.wavPengalaman API Python
> >> from paddlespeech . cli . vector import VectorExecutor
> >> vec = VectorExecutor ()
> >> result = vec ( audio_file = "zh.wav" )
> >> print ( result ) # 187维向量
[ - 0.19083306 9.474295 - 14.122263 - 2.0916545 0.04848729
4.9295826 1.4780062 0.3733844 10.695862 3.2697146
- 4.48199 - 0.6617882 - 9.170393 - 11.1568775 - 1.2358263 ...]Pengalaman baris perintah
paddlespeech text --task punc --input 今天的天气真不错啊你下午有空吗我想约你一起去吃饭Pengalaman API Python
> >> from paddlespeech . cli . text . infer import TextExecutor
> >> text_punc = TextExecutor ()
> >> result = text_punc ( text = "今天的天气真不错啊你下午有空吗我想约你一起去吃饭" )
今天的天气真不错啊!你下午有空吗?我想约你一起去吃饭。Gunakan alat terkait Kaldi yang telah dikompilasi sebelumnya, hanya pengalaman mendukung dalam sistem Ubuntu
Pengalaman baris perintah
paddlespeech st --input en.wavPengalaman API Python
> >> from paddlespeech . cli . st . infer import STExecutor
> >> st = STExecutor ()
> >> result = st ( audio_file = "en.wav" )
[ '我 在 这栋 建筑 的 古老 门上 敲门 。' ]Pengembang dapat mencoba server bicara kami dengan baris perintah server Paddlespeech.
Anda dapat mencobanya dengan cepat di AI Studio (Rekomendasikan): Pidato
Mulai server
paddlespeech_server start --config_file ./demos/speech_server/conf/application.yamlAkses Layanan Pengenalan Pidato
paddlespeech_client asr --server_ip 127.0.0.1 --port 8090 --input input_16k.wavAkses teks ke layanan ucapan
paddlespeech_client tts --server_ip 127.0.0.1 --port 8090 --input "您好,欢迎使用百度飞桨语音合成服务。 " --output output.wavAkses Layanan Klasifikasi Audio
paddlespeech_client cls --server_ip 127.0.0.1 --port 8090 --input input.wavUntuk informasi lebih lanjut tentang baris perintah server, silakan lihat: demo server wicara
Pengembang dapat mencoba streaming ASR dan streaming server TTS.
Mulai Streaming Server Pengenalan Pidato
paddlespeech_server start --config_file ./demos/streaming_asr_server/conf/application.yaml
Akses Layanan Pengenalan Pidato Streaming
paddlespeech_client asr_online --server_ip 127.0.0.1 --port 8090 --input input_16k.wav
Mulailah Streaming Teks ke Server Pidato
paddlespeech_server start --config_file ./demos/streaming_tts_server/conf/tts_online_application.yaml
Akses Teks Streaming ke Layanan Pidato
paddlespeech_client tts_online --server_ip 127.0.0.1 --port 8092 --protocol http --input "您好,欢迎使用百度飞桨语音合成服务。" --output output.wav
Untuk informasi lebih lanjut silakan lihat: Streaming ASR dan streaming TTS
Paddlespeech mendukung serangkaian model paling populer. Mereka dirangkum dalam model yang dirilis dan dilampirkan dengan model pretrained yang tersedia.
Pidato-ke-teks berisi model akustik , model bahasa , dan terjemahan ucapan , dengan detail berikut:
| Jenis modul ucapan-ke-teks | Dataset | Tipe model | Contoh |
|---|---|---|---|
| Pidato Pidato | Aishell | Deepspeech2 RNN + Conv Based Model | Deepppeech2-Aishell |
| Model Perhatian Berbasis Transformer | u2.transformer.conformer-aishell | ||
| Librispeech | Model Perhatian Berbasis Transformer | deepppeech2-librispirech/transformer.conformer.u2-librispirech/transformer.conformer.u2-kaldi-librispirech | |
| Timit | Streaming terpadu & dua-pass non-streaming | U2-timit | |
| Penyelarasan | Thchs30 | MFA | MFA-thchs30 |
| Model Bahasa | Model Bahasa Ngram | Kenlm | |
| Terjemahan ucapan (bahasa Inggris ke Cina) | Ted en-zh | Transformer + ASR MTL | Transformer-ted |
| Fat + Transformer + ASR MTL | Fat-st-ted | ||
Teks-ke-pidato di paddlespeech terutama berisi tiga modul: Text Frontend , Model Akustik dan Vocoder . Model akustik dan model vokoder terdaftar sebagai berikut:
| Jenis modul teks-ke-ucapan | Tipe model | Dataset | Contoh |
|---|---|---|---|
| Frontend teks | TN/G2P | ||
| Model akustik | Tacotron2 | LJSPEECH/CSMSC | TACOTRON2-LJSPEECH/TACOTRON2-CSMSC |
| Transformer TTS | Ljspeech | Transformer-ljspeech | |
| Speedyspeech | CSMSC | speedyspeech-csmsc | |
| Fastspeech2 | Ljspeech / vctk / csmsc / aishell-3 / zh_en / format | fastspeech2-ljspeech/fastspeech2-vctk/fastspeech2-csmsc/fastspeech2-aishell3/fastspeech2-zh_en/fastspeech2-finenetune | |
| Ernie-Sat | Vctk / aishell-3 / zh_en | Ernie-Sat-VCTK / Ernie-Sat-Aishell3 / Ernie-Sat-Zh_en | |
| Diffsinger | Opencpop | Diffsinger-opencpop | |
| Vocoder | Gelombang gelombang | Ljspeech | WAVEFLOW-LJSPEECH |
| Paralel Wavegan | Ljspeech / vctk / csmsc / aishell-3 / opencpop | Pwgan-ljspeech / pwgan-vctk / pwgan-csmsc / pwgan-aishell3 / pwgan-opencpop | |
| Multi Band Melgan | CSMSC | Multi band Melgan-csmsc | |
| Gaya Melgan | CSMSC | Gaya Melgan-CSMSC | |
| Hifigan | Ljspeech / vctk / csmsc / aishell-3 / opencpop | Hifigan-LjSpeech / Hifigan-VCTK / HiFigan-CSMSC / HiFigan-Aishell3 / Hifigan-Opencpop | |
| Wavernn | CSMSC | WAVERNN-CSMSC | |
| Kloning Suara | Ge2e | Librispeech, dll. | Ge2e |
| SV2TTS (GE2E + TACOTRON2) | Aishell-3 | VC0 | |
| SV2TTS (GE2E + FASTSPEECH2) | Aishell-3 | VC1 | |
| SV2TTS (ECAPA-TDNN + FASTSPEECH2) | Aishell-3 | VC2 | |
| Ge2e + vit | Aishell-3 | VITS-VC | |
| Ujung ke ujung | Vit | CSMSC / AISHELL-3 | VITS-CSMSC/VITS-AISHELL3 |
Klasifikasi Audio
| Tugas | Dataset | Tipe model | Contoh |
|---|---|---|---|
| Klasifikasi Audio | ESC-50 | Pann | Pann-ESC50 |
Tempat Kata Kunci
| Tugas | Dataset | Tipe model | Contoh |
|---|---|---|---|
| Tempat Kata Kunci | hey-snip | Mdtc | mdtc-hey-snips |
Verifikasi Pembicara
| Tugas | Dataset | Tipe model | Contoh |
|---|---|---|---|
| Verifikasi Pembicara | Voxceleb1/2 | Ecapa-tdnn | ecapa-tdnn-voxceleb12 |
Diarisasi pembicara
| Tugas | Dataset | Tipe model | Contoh |
|---|---|---|---|
| Diarisasi pembicara | Ami | Ecapa-tdnn + ahc / sc | ecapa-tdnn-ami |
Restorasi tanda baca
| Tugas | Dataset | Tipe model | Contoh |
|---|---|---|---|
| Restorasi tanda baca | IWLST2012_ZH | Ernie Linear | IWSLT2012-Punch0 |
Biasanya, pidato sota, audio sota dan musik sota memberi Anda gambaran tentang topik akademik panas di bidang terkait. Untuk fokus pada tugas -tugas di Paddlespeech, Anda akan menemukan pedoman berikut sangat membantu untuk menumbuhkan ide -ide inti.
Modul Text-to-Speech awalnya disebut parkit, dan sekarang digabungkan dengan repositori ini. Jika Anda tertarik dengan penelitian akademik tentang tugas ini, silakan lihat Tinjauan Penelitian TTS. Juga, dokumen ini adalah pedoman yang baik untuk komponen pipa.
Video demo Paddlespeech
VTubertalk: Gunakan TTS Paddlespeech dan ASR untuk mengkloning suara dari video.
Untuk mengutip Paddlespeech untuk penelitian, silakan gunakan format berikut.
@inproceedings{zhang2022paddlespeech,
title = {PaddleSpeech: An Easy-to-Use All-in-One Speech Toolkit},
author = {Hui Zhang, Tian Yuan, Junkun Chen, Xintong Li, Renjie Zheng, Yuxin Huang, Xiaojie Chen, Enlei Gong, Zeyu Chen, Xiaoguang Hu, dianhai yu, Yanjun Ma, Liang Huang},
booktitle = {Proceedings of the 2022 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies: Demonstrations},
year = {2022},
publisher = {Association for Computational Linguistics},
}
@InProceedings{pmlr-v162-bai22d,
title = {{A}$^3${T}: Alignment-Aware Acoustic and Text Pretraining for Speech Synthesis and Editing},
author = {Bai, He and Zheng, Renjie and Chen, Junkun and Ma, Mingbo and Li, Xintong and Huang, Liang},
booktitle = {Proceedings of the 39th International Conference on Machine Learning},
pages = {1399--1411},
year = {2022},
volume = {162},
series = {Proceedings of Machine Learning Research},
month = {17--23 Jul},
publisher = {PMLR},
pdf = {https://proceedings.mlr.press/v162/bai22d/bai22d.pdf},
url = {https://proceedings.mlr.press/v162/bai22d.html},
}
@inproceedings{zheng2021fused,
title={Fused acoustic and text encoding for multimodal bilingual pretraining and speech translation},
author={Zheng, Renjie and Chen, Junkun and Ma, Mingbo and Huang, Liang},
booktitle={International Conference on Machine Learning},
pages={12736--12746},
year={2021},
organization={PMLR}
}
Anda dipersilakan untuk mengirimkan pertanyaan dalam diskusi dan laporan bug dalam masalah! Juga, kami sangat menghargai jika Anda bersedia berkontribusi pada proyek ini!
Paddlespeech disediakan di bawah lisensi apache-2.0.