首页 > 解决方案 > 运行 run_seq2seq.py Transformers 训练脚本时出错

问题描述

我正在尝试训练一个 seq2seq 模型。我在 Colab 中运行了示例代码:

!git clone https://github.com/huggingface/transformers
!git clone https://github.com/huggingface/datasets
!pip install transformers
!pip install datasets
!python transformers/examples/seq2seq/run_seq2seq.py \
    --model_name_or_path t5-small \
    --do_train \
    --do_eval \
    --task summarization \
    --dataset_name xsum \
    --output_dir /tmp/tst-summarization \
    --per_device_train_batch_size=4 \
    --per_device_eval_batch_size=4 \
    --overwrite_output_dir \
    --predict_with_generate \
    --max_train_samples 500 \
    --max_val_samples 500

并得到了这个错误

I tensorflow/stream_executor/platform/default/dso_loader.cc:49] Successfully opened dynamic library libcudart.so.11.0
Traceback (most recent call last):
  File "transformers/examples/seq2seq/run_seq2seq.py", line 47, in <module>
    from transformers.file_utils import is_offline_mode
ImportError: cannot import name 'is_offline_mode' from 'transformers.file_utils' (/usr/local/lib/python3.7/dist-packages/transformers/file_utils.py)

有任何想法吗?

标签: pythontensorflowmachine-learningnlphuggingface-transformers

解决方案


问题是您克隆了存储库的主分支并尝试run_seq2seq.py使用该主分支后面的转换器版本(4.3.3)运行脚本。

run_seq2seq.pyis_offline_mode已在 3 月 6 日通过此合并更新为导入。

您需要做的就是克隆用于您使用的变形金刚版本的分支:

!git clone --branch v4.3.3-release https://github.com/huggingface/transformers

PS:我认为您不需要克隆数据集库。


推荐阅读