transformers: At least one model's inference seems to have broken from transformers 4.29.2 -> 4.30.*
System Info
transformers
version: 4.30.2- Platform: Windows-10-10.0.19045-SP0
- Python version: 3.10.9
- Huggingface_hub version: 0.15.1
- Safetensors version: 0.3.1
- PyTorch version (GPU?): 1.13.1 (True)
- Tensorflow version (GPU?): not installed (NA)
- Flax version (CPU?/GPU?/TPU?): not installed (NA)
- Jax version: not installed
- JaxLib version: not installed
- Using GPU in script?: default setting ( I think it uses GPU )
- Using distributed or parallel set-up in script?: not sure what this is, but I think its N/A
Who can help?
inference of the model staka/fugumt-en-ja using the “translation” pipeline has broken from 4.30.0 and above. I don’t know if this is expected, or if there are some new parameters I need to use, but using the default script from the readme no longer works. It results in gibberish. I have also confirmed that it works fine in 4.29.2. I don’t know what other models are affected.
Information
- The official example scripts
- My own modified scripts
Tasks
- An officially supported task in the
examples
folder (such as GLUE/SQuAD, …) - My own task or dataset (give details below)
Reproduction
I have a slightly modified script to write the output to a txt file, since my windows commandline doesn’t support Japanese, but I don’t think that is relevant. Otherwise, the code is the same from the official readme of the model. Here is the code itself:
import pysbd
seg_en = pysbd.Segmenter(language="en", clean=False)
from transformers import pipeline
fugu_translator = pipeline('translation', model='staka/fugumt-en-ja')
txt = 'This is a cat. It is very cute.'
result = fugu_translator(seg_en.segment(txt))
print(result)
final = ''
for s in result:
final += s['translation_text']
with open('./tmp.txt', "w", encoding="utf-8") as f:
f.write(final)
in transformers 4.29.2 result is correct:
これは猫です。とても可愛いです。
in transformers 4.30.0 and above, result is gibberish:
が必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となりますが必要となります伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる伝わる
Expected behavior
in transformers 4.29.2 result is correct:
"これは猫です。とても可愛いです。"
I expect the same behavior in 4.30.* and above.
About this issue
- Original URL
- State: closed
- Created a year ago
- Comments: 35 (4 by maintainers)
just in case anyone is wondering, the models mentioned in the original post have been fixed by their creator as of a month ago (at least thats what his commit says, havn’t tried it myself) https://huggingface.co/staka/fugumt-en-ja https://huggingface.co/staka/fugumt-ja-en
@ArthurZucker So does that mean that the owner of these repos: fugumt-en-ja fugumt-ja-en made some kind of partial fix that happened to fix it in 4.30.* but not in newer versions?
I really dont know that much about this stuff, but from what I can tell, the tortoise library uses the .pth models here ( I’m not really sure what .pth models represent ): https://huggingface.co/jbetker/tortoise-tts-v2/tree/main/.models
The specific file that has the above error is the autoregressive.pth. The .pth file is being loaded by a custom torch.nn.module called UnifiedVoice in the tortoise repo. This module inside of it has a huggingface GPT2Model inside of it that is initialized here https://github.com/neonbjb/tortoise-tts/blob/82724cca5427ddf1570256e616d56b0ebb93e668/tortoise/models/autoregressive.py#L231C45-L231C45
I don’t know how the torch.nn.modules work but I believe in the end what may be happening is that this UnifiedVoice module is using the GPT2Model to “load_state_dict” on the autoregressive.pth file and thats where the difference between transformers 4.29.2 and 4.30.* is.
@Narsil It’s because this issue is shown with
pipeline
(that’s why Amy pin you in the first place), but the root cause is the tie weights infrom_pretrained
.No, you don’t need to be involved 😃