Voice chat demo using Whisper and Qwen2-Audio.
- 기본 설명
PC를 통해 내 목소리를 실시간으로 녹음 후, stt model을 통해 text 추출
추출 된 text를 question으로 하고 llm으로 output 받아옴
받아온 output을 원하는 language로 llm통해 번역
번역된 output을 tts model을 통해 audio 내보냄
- TTS model 설명
tts model 중 아랍어를 사용하는 XTTS 모델의 output target voice는 5개만 사용
data/ttsvoice
에 output target으로 잡을 audio파일 넣으면 작동실험에 사용한 데이터는 ai-hub 모델 data라 local 저장되어 있음.
연예인이나 성우의 voice 파일 또는 자기자신의 voice로도 output이 나오게 가능
conda create -n voice
conda activate voice
- xTTS :
data/ttsvoice
에 output target으로 잡을 audio파일 5개 정도 저장 필수
huggingface-cli download coqui/XTTS-v2 --local-dir model/XTTS-v2
- gpu
sudo apt update
sudo apt install ffmpeg
sudo apt install portaudio19-dev
sudo apt install gcc
pip install audiorecorder
pip install coqui-tts
pip install hangul-romanize
pip install -r requirements.txt
- melotts
pip install git+https://github.com/myshell-ai/MeloTTS.git
python -m unidic download
import nltk
nltk.download("all")
brew install ffmpeg
brew install portaudio
pip install audiorecorder ffmpeg-python
pip install -r requirements_macos.txt
- seed : 42
- down_vote : 0
- D : 음성 인식된 텍스트에 잘못 삭제된 단어 수
- S : 음성 인식된 텍스트에 잘못 대체된 단어 수
- I : 음성 인식된 텍스트에 잘못 추가된 단어 수
- N : 정답 텍스트의 단어 수
Korean | English | |
---|---|---|
Dataset | common_voice_17_0 | common_voice_17_0 |
Len | 30 | 30 |
Wer | 14.71% | 7.77% |
EvalCode | Eval/korean_wer.py code | Eval/english_wer.py code |
resultFile | resultEval/korean_wer_eval.csv file | resultEval/english_wer_eval.csv file |
streamlit run web_app_asr.py
streamlit run web_app_chat.py
meloTTS (한국어, 일본어, 영어 적용 모델) url
- sample notebooks (notebooks/tts/MeloTTS.ipynb)
language 지원
- 한국어 O
- 일본어 O
- 영어 O
- 아랍어 X
tts 성능
tts
같이 줄임말은 발음을 잘 못한다. 1초내에 답변할 정도로 속도 빠르고 자연스러움
- pip install coqui-tts
- pip install hangul-romanize # korean
- sample notebooks notebooks
language 지원
- 한국어 O ko
- 일본어 O ja
- 영어 O en
- 아랍어 O ar
tts 성능
- 한국어 + 영어와 같이 섞여있는경우 묵음 처리됨. 일단 아랍어에만 적용
bark url
- sample notebooks notebooks
language 지원
- 한국어 O ko
- 일본어 O ja
- 영어 O en
- 아랍어 X
tts 성능
- 어색하지 않은 것 같다.
속도 이슈
안녕하세요, 이 모델은 tts를 test하기 위한 모델 입니다.
같은 짧은 문장에서 bark 25초, bark bettertransformer 적용시 15초, bark-small bettertransformer 적용시 9초 정도 소요
fish-speech url
- sample notebooks errors notebooks
현재 target voice의 path읽는 곳에서 에러 절대경로로 해도 에러 발생
language 지원
- 한국어 O
- 일본어 O
- 영어 O
- 아랍어 O
모델 change시 현재 memory cache 문제 해결 필요