Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] AttributeError: property 'device' of 'Tortoise' object has no setter #329

Open
aihua opened this issue Mar 7, 2025 · 2 comments
Open
Labels
bug Something isn't working

Comments

@aihua
Copy link

aihua commented Mar 7, 2025

Describe the bug

Using model: tortoise
Traceback (most recent call last):
File "/opt/tts/coqui/.venv/bin/tts", line 8, in
sys.exit(main())
^^^^^^
File "/opt/tts/coqui/idiap/TTS/bin/synthesize.py", line 364, in main
api = TTS(
^^^^
File "/opt/tts/coqui/idiap/TTS/api.py", line 96, in init
self.load_tts_model_by_name(model_name, vocoder_name, gpu=gpu)
File "/opt/tts/coqui/idiap/TTS/api.py", line 226, in load_tts_model_by_name
self.synthesizer = Synthesizer(
^^^^^^^^^^^^
File "/opt/tts/coqui/idiap/TTS/utils/synthesizer.py", line 113, in init
self._load_tts_from_dir(model_dir, use_cuda)
File "/opt/tts/coqui/idiap/TTS/utils/synthesizer.py", line 185, in _load_tts_from_dir
self.tts_model = setup_tts_model(config)
^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/tts/coqui/idiap/TTS/tts/models/init.py", line 16, in setup_model
model = MyModel.init_from_config(config=config, samples=samples)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/opt/tts/coqui/idiap/TTS/tts/models/tortoise.py", line 857, in init_from_config
return Tortoise(config)
^^^^^^^^^^^^^^^^
File "/opt/tts/coqui/idiap/TTS/tts/models/tortoise.py", line 345, in init
self.device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
^^^^^^^^^^^
File "/opt/tts/coqui/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 2029, in setattr
super().setattr(name, value)
AttributeError: property 'device' of 'Tortoise' object has no setter

To Reproduce

mkdir coqui
cd coqui
python3.12 -m venv .venv 
git clone https://github.com/idiap/coqui-ai-TTS.git src
source .venv/bin/activate
cd src
git checkout -b demo-0.25.3 v0.25.3
pip install -U pip setuptools wheel
pip install -e .
tts --model_name tts_models/en/multi-dataset/tortoise-v2 --list_speaker_idxs

Expected behavior

Please help fix it.

Logs

tts_models/en/multi-dataset/tortoise-v2 is already downloaded.
Using model: tortoise
Traceback (most recent call last):
  File "/opt/tts/coqui/.venv/bin/tts", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/opt/tts/coqui/idiap/TTS/bin/synthesize.py", line 364, in main
    api = TTS(
          ^^^^
  File "/opt/tts/coqui/idiap/TTS/api.py", line 96, in __init__
    self.load_tts_model_by_name(model_name, vocoder_name, gpu=gpu)
  File "/opt/tts/coqui/idiap/TTS/api.py", line 226, in load_tts_model_by_name
    self.synthesizer = Synthesizer(
                       ^^^^^^^^^^^^
  File "/opt/tts/coqui/idiap/TTS/utils/synthesizer.py", line 113, in __init__
    self._load_tts_from_dir(model_dir, use_cuda)
  File "/opt/tts/coqui/idiap/TTS/utils/synthesizer.py", line 185, in _load_tts_from_dir
    self.tts_model = setup_tts_model(config)
                     ^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/tts/coqui/idiap/TTS/tts/models/__init__.py", line 16, in setup_model
    model = MyModel.init_from_config(config=config, samples=samples)
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/tts/coqui/idiap/TTS/tts/models/tortoise.py", line 857, in init_from_config
    return Tortoise(config)
           ^^^^^^^^^^^^^^^^
  File "/opt/tts/coqui/idiap/TTS/tts/models/tortoise.py", line 345, in __init__
    self.device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
    ^^^^^^^^^^^
  File "/opt/tts/coqui/.venv/lib/python3.12/site-packages/torch/nn/modules/module.py", line 2029, in __setattr__
    super().__setattr__(name, value)
AttributeError: property 'device' of 'Tortoise' object has no setter

Environment

- tts version: v0.25.3
- python version: v3.12
- os: macOS 15.3.1 on Apple Sillicon(M2)
- pip version: v25.0.1
- torch version: 2.6.0

pip list:
 shell
Package                    Version      Editable project location
-------------------------- ------------ -------------------------
absl-py                    2.1.0
aiohappyeyeballs           2.4.8
aiohttp                    3.11.13
aiosignal                  1.3.2
annotated-types            0.7.0
anyascii                   0.3.2
attrs                      25.1.0
audioread                  3.0.1
babel                      2.17.0
bangla                     0.0.2
blinker                    1.9.0
blis                       0.7.11
bnnumerizer                0.0.2
bnunicodenormalizer        0.1.7
bokeh                      3.6.3
catalogue                  2.0.10
certifi                    2025.1.31
cffi                       1.17.1
charset-normalizer         3.4.1
click                      8.1.8
cloudpathlib               0.21.0
confection                 0.1.5
contourpy                  1.3.1
coqpit-config              0.1.2
coqui-tts                  0.25.3       /opt/tts/coqui/idiap
coqui-tts-trainer          0.2.2
cutlet                     0.5.0
cycler                     0.12.1
cymem                      2.0.11
Cython                     3.0.12
dateparser                 1.1.8
decorator                  5.2.1
docopt                     0.6.2
einops                     0.8.1
encodec                    0.1.1
filelock                   3.17.0
Flask                      3.1.0
fonttools                  4.56.0
frozenlist                 1.5.0
fsspec                     2025.2.0
fugashi                    1.4.0
g2pkk                      0.1.2
grpcio                     1.70.0
gruut                      2.4.0
gruut-ipa                  0.13.0
gruut_lang_de              2.0.1
gruut_lang_en              2.0.1
gruut_lang_es              2.0.1
gruut_lang_fr              2.0.2
hangul-romanize            0.1.0
huggingface-hub            0.29.1
idna                       3.10
inflect                    7.5.0
itsdangerous               2.2.0
jaconv                     0.4.0
jamo                       0.4.1
jieba                      0.42.1
Jinja2                     3.1.5
joblib                     1.4.2
jsonlines                  1.2.0
kiwisolver                 1.4.8
langcodes                  3.5.0
language_data              1.3.0
lazy_loader                0.4
librosa                    0.10.2.post1
llvmlite                   0.44.0
marisa-trie                1.2.1
Markdown                   3.7
markdown-it-py             3.0.0
MarkupSafe                 3.0.2
matplotlib                 3.10.1
mdurl                      0.1.2
mecab-python3              1.0.10
mojimoji                   0.0.13
monotonic-alignment-search 0.1.1
more-itertools             10.6.0
mpmath                     1.3.0
msgpack                    1.1.0
multidict                  6.1.0
murmurhash                 1.0.12
networkx                   3.4.2
nltk                       3.9.1
num2words                  0.5.14
numba                      0.61.0
numpy                      1.26.4
packaging                  24.2
pandas                     1.5.3
pillow                     11.1.0
pip                        25.0.1
platformdirs               4.3.6
pooch                      1.8.2
preshed                    3.0.9
propcache                  0.3.0
protobuf                   6.30.0
psutil                     7.0.0
pycparser                  2.22
pydantic                   2.10.6
pydantic_core              2.27.2
Pygments                   2.19.1
pynndescent                0.5.13
pyparsing                  3.2.1
pypinyin                   0.53.0
pysbd                      0.3.4
python-crfsuite            0.9.11
python-dateutil            2.9.0.post0
pytz                       2025.1
PyYAML                     6.0.2
regex                      2024.11.6
requests                   2.32.3
rich                       13.9.4
safetensors                0.5.3
scikit-learn               1.6.1
scipy                      1.15.2
setuptools                 75.8.2
shellingham                1.5.4
six                        1.17.0
smart-open                 7.1.0
soundfile                  0.13.1
soxr                       0.5.0.post1
spacy                      3.7.5
spacy-legacy               3.0.12
spacy-loggers              1.0.5
srsly                      2.5.1
SudachiDict-core           20250129
SudachiPy                  0.6.10
sympy                      1.13.1
tensorboard                2.19.0
tensorboard-data-server    0.7.2
thinc                      8.2.5
threadpoolctl              3.5.0
tokenizers                 0.20.3
torch                      2.6.0
torchaudio                 2.6.0
tornado                    6.4.2
tqdm                       4.67.1
transformers               4.46.2
typeguard                  4.4.2
typer                      0.15.2
typing_extensions          4.12.2
tzlocal                    5.3
umap-learn                 0.5.7
unidic-lite                1.0.8
urllib3                    2.3.0
wasabi                     1.1.3
weasel                     0.4.1
Werkzeug                   3.1.3
wheel                      0.45.1
wrapt                      1.17.2
xyzservices                2025.1.0
yarl                       1.18.3

Additional context

No response

@aihua aihua added the bug Something isn't working label Mar 7, 2025
@aihua
Copy link
Author

aihua commented Mar 7, 2025

BTW, tts_models/multilingual/multi-dataset/xtts_v2 works:

tts --model_name tts_models/multilingual/multi-dataset/xtts_v2 --list_speaker_idxs

Using model: xtts
Available speaker ids: (Set --speaker_idx flag to one of these values to use the multi-speaker model.
['Claribel Dervla', 'Daisy Studious', 'Gracie Wise', 'Tammie Ema', 'Alison Dietlinde', 'Ana Florence', 'Annmarie Nele', 'Asya Anara', 'Brenda Stern', 'Gitta Nikolina', 'Henriette Usha', 'Sofia Hellen', 'Tammy Grit', 'Tanja Adelina', 'Vjollca Johnnie', 'Andrew Chipper', 'Badr Odhiambo', 'Dionisio Schuyler', 'Royston Min', 'Viktor Eka', 'Abrahan Mack', 'Adde Michal', 'Baldur Sanjin', 'Craig Gutsy', 'Damien Black', 'Gilberto Mathias', 'Ilkin Urbano', 'Kazuhiko Atallah', 'Ludvig Milivoj', 'Suad Qasim', 'Torcull Diarmuid', 'Viktor Menelaos', 'Zacharie Aimilios', 'Nova Hogarth', 'Maja Ruoho', 'Uta Obando', 'Lidiya Szekeres', 'Chandra MacFarland', 'Szofi Granger', 'Camilla Holmström', 'Lilya Stainthorpe', 'Zofija Kendrick', 'Narelle Moon', 'Barbora MacLean', 'Alexandra Hisakawa', 'Alma María', 'Rosemary Okafor', 'Ige Behringer', 'Filip Traverse', 'Damjan Chapman', 'Wulf Carlevaro', 'Aaron Dreschner', 'Kumar Dahl', 'Eugenio Mataracı', 'Ferran Simen', 'Xavier Hayasaka', 'Luis Moray', 'Marcos Rudaski']

So, there is a bug for tts_models/en/multi-dataset/tortoise-v2. Please help.

@aihua
Copy link
Author

aihua commented Mar 7, 2025

BTW, tts_models/multilingual/multi-dataset/xtts_v2 works:

tts --model_name tts_models/multilingual/multi-dataset/xtts_v2 --list_speaker_idxs

Using model: xtts
Available speaker ids: (Set --speaker_idx flag to one of these values to use the multi-speaker model.
['Claribel Dervla', 'Daisy Studious', 'Gracie Wise', 'Tammie Ema', 'Alison Dietlinde', 'Ana Florence', 'Annmarie Nele', 'Asya Anara', 'Brenda Stern', 'Gitta Nikolina', 'Henriette Usha', 'Sofia Hellen', 'Tammy Grit', 'Tanja Adelina', 'Vjollca Johnnie', 'Andrew Chipper', 'Badr Odhiambo', 'Dionisio Schuyler', 'Royston Min', 'Viktor Eka', 'Abrahan Mack', 'Adde Michal', 'Baldur Sanjin', 'Craig Gutsy', 'Damien Black', 'Gilberto Mathias', 'Ilkin Urbano', 'Kazuhiko Atallah', 'Ludvig Milivoj', 'Suad Qasim', 'Torcull Diarmuid', 'Viktor Menelaos', 'Zacharie Aimilios', 'Nova Hogarth', 'Maja Ruoho', 'Uta Obando', 'Lidiya Szekeres', 'Chandra MacFarland', 'Szofi Granger', 'Camilla Holmström', 'Lilya Stainthorpe', 'Zofija Kendrick', 'Narelle Moon', 'Barbora MacLean', 'Alexandra Hisakawa', 'Alma María', 'Rosemary Okafor', 'Ige Behringer', 'Filip Traverse', 'Damjan Chapman', 'Wulf Carlevaro', 'Aaron Dreschner', 'Kumar Dahl', 'Eugenio Mataracı', 'Ferran Simen', 'Xavier Hayasaka', 'Luis Moray', 'Marcos Rudaski']

So, there is a bug for tts_models/en/multi-dataset/tortoise-v2. Please help.

@eginhard

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant