[Bug] TTS does not detect new model versions
See original GitHub issueDescribe the bug A clear and concise description of what the bug is.
After upgrading from tts-0.0.9 to tts-0.0.11 the model was updated but TTS still tries to load the cached version. A fix could be to hash models and compare if the cached model is the same as the hash. This also fixes cases where models were corrupted in any way
To Reproduce
$ /nix/store/kfk8kql1pxbxz6iazjwnac0cl1llzapn-tts-0.0.11/bin/tts-server --model_name tts_models/en/ljspeech/glow-tts --vocoder_name vocoder_models/universal/libri-tts/fullband-melgan
> tts_models/en/ljspeech/glow-tts is already downloaded.
> vocoder_models/universal/libri-tts/fullband-melgan is already downloaded.
> Using model: glow_tts
Traceback (most recent call last):
File "/nix/store/kfk8kql1pxbxz6iazjwnac0cl1llzapn-tts-0.0.11/bin/.tts-server-wrapped", line 6, in <module>
from TTS.server.server import main
File "/nix/store/kfk8kql1pxbxz6iazjwnac0cl1llzapn-tts-0.0.11/lib/python3.8/site-packages/TTS/server/server.py", line 62, in <module>
synthesizer = Synthesizer(args.tts_checkpoint, args.tts_config, args.vocoder_checkpoint, args.vocoder_config, args.use_cuda)
File "/nix/store/kfk8kql1pxbxz6iazjwnac0cl1llzapn-tts-0.0.11/lib/python3.8/site-packages/TTS/utils/synthesizer.py", line 45, in __init__
self.load_tts(tts_checkpoint, tts_config,
File "/nix/store/kfk8kql1pxbxz6iazjwnac0cl1llzapn-tts-0.0.11/lib/python3.8/site-packages/TTS/utils/synthesizer.py", line 95, in load_tts
self.tts_model.load_checkpoint(tts_config, tts_checkpoint, eval=True)
File "/nix/store/kfk8kql1pxbxz6iazjwnac0cl1llzapn-tts-0.0.11/lib/python3.8/site-packages/TTS/tts/models/glow_tts.py", line 229, in load_checkpoint
self.load_state_dict(state['model'])
File "/nix/store/1vv0fsvdv9j4gmqjgjwb3c5v8x906qgd-python3.8-pytorch-1.8.1/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1223, in load_state_dict
raise RuntimeError('Error(s) in loading state_dict for {}:\n\t{}'.format(
RuntimeError: Error(s) in loading state_dict for GlowTTS:
size mismatch for encoder.emb.weight: copying a param with shape torch.Size([129, 192]) from checkpoint, the shape in current model is torch.Size([130, 192]).
/nix/store/kfk8kql1pxbxz6iazjwnac0cl1llzapn-tts-0.0.11/bin/tts-server 4,64s user 0,71s system 117% cpu 4,541 total
Expected behavior
Environment (please complete the following information):
- OS Platform and Distribution (e.g., Linux Ubuntu 16.04): NixOS
- PyTorch or TensorFlow version (use command below): pytorch 1.8.1
- Python version: 3.7
- CUDA/cuDNN version: no cuda
- GPU model and memory: no gpu
- Exact command to reproduce: see above
Issue Analytics
- State:
- Created 2 years ago
- Comments:5 (4 by maintainers)
Top Results From Across the Web
[Bug] Impossible to download models · Issue #927 · coqui-ai/TTS
I know that the best python version for TTS is the 3.6, but i don't think that the raison of a bad zip...
Read more >Humble FAQ - TTS 0.9.0 documentation
If both models do not perform well and especially the attention does not align, then try AlignTTS or GlowTTS. If you need faster...
Read more >Determening TTS Version - Microsoft Q&A
I was wondering if it is somehow possible to see which version of the TTS engine is used for a certain voice. I...
Read more >Troubleshooting - Tabletop Simulator Knowledge Base
Having technical difficulties with Tabletop Simulator? Follow this guide to help resolve them. Can't find your answer here? Your next stop should be...
Read more >text to speech - Windows 10 TTS voices not showing up?
Open "regedit.exe". Navigate to the key. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Speech_OneCore\Voices\Tokens. There you will find each WinRT voice registered ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
I mean could
--model_name tts_models/en/ljspeech/glow-tts
just make sure the latest version with the correctconfig.json
is downloaded automatically? I don’t think that end-users without machine learning knowledge can make any sense of the error message thrown by the frontend.Still an issue.