Skip to content

TypeError: object of type 'NoneType' has no len() #668

@fanrong1992

Description

@fanrong1992

I followed huggingface doc step by step, but get the following errors:

>>> trainer = Trainer(model=model, args=training_args, train_dataset=small_train_dataset, eval_dataset=small_eval_dataset, compute_metrics=compute_metrics)
>>> trainer.train()
 33%|██████████████████████████████████████████████████▎                                                                                                    | 125/375 [12:53<25:46,  6.19s/it]
                        Traceback (most recent call last):
  File "/Users/fanrong/transformers-env/lib/python3.9/site-packages/evaluate/module.py", line 518, in add_batch
    if len(column) > 0:█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 125/125 [00:35<00:00,  3.57it/s]
TypeError: object of type 'NoneType' has no len()

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/fanrong/transformers-env/lib/python3.9/site-packages/transformers/trainer.py", line 2245, in train
    return inner_training_loop(
  File "/Users/fanrong/transformers-env/lib/python3.9/site-packages/transformers/trainer.py", line 2647, in _inner_training_loop
    self._maybe_log_save_evaluate(tr_loss, grad_norm, model, trial, epoch, ignore_keys_for_eval, start_time)
  File "/Users/fanrong/transformers-env/lib/python3.9/site-packages/transformers/trainer.py", line 3093, in _maybe_log_save_evaluate
    metrics = self._evaluate(trial, ignore_keys_for_eval)
  File "/Users/fanrong/transformers-env/lib/python3.9/site-packages/transformers/trainer.py", line 3047, in _evaluate
    metrics = self.evaluate(ignore_keys=ignore_keys_for_eval)
  File "/Users/fanrong/transformers-env/lib/python3.9/site-packages/transformers/trainer.py", line 4136, in evaluate
    output = eval_loop(
  File "/Users/fanrong/transformers-env/lib/python3.9/site-packages/transformers/trainer.py", line 4425, in evaluation_loop
    metrics = self.compute_metrics(
  File "<stdin>", line 4, in compute_metrics
  File "/Users/fanrong/transformers-env/lib/python3.9/site-packages/evaluate/module.py", line 455, in compute
    self.add_batch(**inputs)
  File "/Users/fanrong/transformers-env/lib/python3.9/site-packages/evaluate/module.py", line 523, in add_batch
    if any(len(batch[c]) != len(next(iter(batch.values()))) for c in batch):
  File "/Users/fanrong/transformers-env/lib/python3.9/site-packages/evaluate/module.py", line 523, in <genexpr>
    if any(len(batch[c]) != len(next(iter(batch.values()))) for c in batch):
TypeError: object of type 'NoneType' has no len()

Could you please help me solve the problem? Thanks~

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions