TypeError when training T5 with evaluate_during_training=True
timmartin opened this issue · 1 comments
timmartin commented
Describe the bug
When training T5 with evaluate_during_training = True
, it throws an exception during training:
Traceback (most recent call last):
File "/home/timm/dev/simpletransformers/t5_minimal_start.py", line 43, in <module>
model.train_model(train_df, eval_data=eval_df)
File "/home/timm/dev/simpletransformers/simpletransformers/t5/t5_model.py", line 229, in train_model
global_step, training_details = self.train(
File "/home/timm/dev/simpletransformers/simpletransformers/t5/t5_model.py", line 758, in train
results = self.eval_model(
File "/home/timm/dev/simpletransformers/simpletransformers/t5/t5_model.py", line 929, in eval_model
eval_dataset["prefix"], eval_dataset["input_text"]
File "/home/timm/dev/simpletransformers/simpletransformers/t5/t5_utils.py", line 199, in __getitem__
return self.examples[index]
TypeError: list indices must be integers or slices, not str
To Reproduce
Run the "T5 Minimal Start" example from the documentation.
Expected behavior
No exception.
Desktop (please complete the following information):
- Linux
Additional context
The exception isn't thrown if you set evaluate_during_training = False
.
I believe it's related to this change
djstrong commented
I confirm the issue. You can replicate using example: https://simpletransformers.ai/docs/t5-specifics/#evaluating-generated-sequences
The example works in 0.63.9.