ChatTTS-OpenVoice icon indicating copy to clipboard operation
ChatTTS-OpenVoice copied to clipboard

AttributeError: BertTokenizerFast has no attribute pad_token. Did you mean: '_pad_token'?

Open kimutaiRop opened this issue 10 months ago • 2 comments

I keep getting this error

Traceback (most recent call last):
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/.venv/lib/python3.12/site-packages/gradio/queueing.py", line 625, in process_events
    response = await route_utils.call_process_api(
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/.venv/lib/python3.12/site-packages/gradio/route_utils.py", line 322, in call_process_api
    output = await app.get_blocks().process_api(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/.venv/lib/python3.12/site-packages/gradio/blocks.py", line 2096, in process_api
    result = await self.call_function(
             ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/.venv/lib/python3.12/site-packages/gradio/blocks.py", line 1643, in call_function
    prediction = await anyio.to_thread.run_sync(  # type: ignore
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/.venv/lib/python3.12/site-packages/anyio/to_thread.py", line 56, in run_sync
    return await get_async_backend().run_sync_in_worker_thread(
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/.venv/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 2461, in run_sync_in_worker_thread
    return await future
           ^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/.venv/lib/python3.12/site-packages/anyio/_backends/_asyncio.py", line 962, in run
    result = context.run(func, *args)
             ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/.venv/lib/python3.12/site-packages/gradio/utils.py", line 890, in wrapper
    response = f(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/app.py", line 83, in generate_audio
    text_data = chat_tts(text, temperature, top_P, top_K, audio_seed_input, text_seed_input, refine_text_flag, refine_text_input, src_path)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/app.py", line 46, in chat_tts
    text = chat.infer(text,
          ^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/ChatTTS/core.py", line 129, in infer
    text_tokens = refine_text(self.pretrain_models, text, **params_refine_text)['ids']
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/ChatTTS/infer/api.py", line 95, in refine_text
    text_token = models['tokenizer'](text, return_tensors='pt', add_special_tokens=False, padding=True).to(device)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/.venv/lib/python3.12/site-packages/transformers/tokenization_utils_base.py", line 2877, in __call__
    encodings = self._call_one(text=text, text_pair=text_pair, **all_kwargs)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/.venv/lib/python3.12/site-packages/transformers/tokenization_utils_base.py", line 2965, in _call_one
    return self.batch_encode_plus(
           ^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/.venv/lib/python3.12/site-packages/transformers/tokenization_utils_base.py", line 3158, in batch_encode_plus
    padding_strategy, truncation_strategy, max_length, kwargs = self._get_padding_truncation_strategies(
                                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/.venv/lib/python3.12/site-packages/transformers/tokenization_utils_base.py", line 2778, in _get_padding_truncation_strategies
    if padding_strategy != PaddingStrategy.DO_NOT_PAD and (self.pad_token is None or self.pad_token_id < 0):
                                                           ^^^^^^^^^^^^^^
  File "/home/kim/Desktop/programs/ai/ChatTTS-OpenVoice/.venv/lib/python3.12/site-packages/transformers/tokenization_utils_base.py", line 1108, in __getattr__
    raise AttributeError(f"{self.__class__.__name__} has no attribute {key}")
AttributeError: BertTokenizerFast has no attribute pad_token. Did you mean: '_pad_token'?```

kimutaiRop avatar Feb 24 '25 18:02 kimutaiRop

Me too

pythonchangemylife avatar Mar 21 '25 02:03 pythonchangemylife

pip install transformers==4.39.3 这是transformers版本不对导致的,我是2.1.2的torch,安装对应的transformers就可以了

Jandown avatar Mar 28 '25 01:03 Jandown