NougatCA / FineTuner

GNU General Public License v3.0
22 stars 3 forks source link

Some errors that occurred while fine-tuning models such as codebert #16

Open lsrhaha1 opened 5 months ago

lsrhaha1 commented 5 months ago

老师您好! When I fine-tune codebert, graphcodebert and unixcoder on the downstream tasks, they all have the same error, which is as follows:==================== LOADING ==================== Loaded config 'RobertaConfig' from '/data/pretrain-model/unixcoder-base' Loaded tokenizer 'RobertaTokenizerFast' from '/data/pretrain-model/unixcoder-base', size: 51416 Loaded unwrapped model 'RobertaModel' from '/data/pretrain-model/unixcoder-base' Trainable parameters: 126M Traceback (most recent call last): File "/data/FineTuner/src/main.py", line 113, in <module> main() File "/data/FineTuner/src/main.py", line 109, in main run_fine_tune(args, accelerator, run) File "/data/FineTuner/src/run_fine_tune.py", line 270, in run_fine_tune model, tokenizer = build_model_tokenizer(args) File "/data/FineTuner/src/models.py", line 320, in build_model_tokenizer model = EncoderDecoderModel(config, encoder=model) File "/usr/local/lib/python3.9/dist-packages/transformers/models/encoder_decoder/modeling_encoder_decoder.py", line 195, in __init__ raise ValueError(f"Config: {config} has to be of type {self.config_class}") ValueError: Config: RobertaConfig {...} has to be of type <class 'transformers.models.encoder_decoder.configuration_encoder_decoder.EncoderDecoderConfig'>

NougatCA commented 4 months ago

Hi @lsrhaha1 , 请确认一下你使用的环境和包版本是不是与requirements.txt中的版本保持了一致,这个错误看着像是transformers库更新导致的问题。

lsrhaha1 commented 4 months ago

Hi @lsrhaha1 , 请确认一下你使用的环境和包版本是不是与requirements.txt中的版本保持了一致,这个错误看着像是transformers库更新导致的问题。

非常感谢老师的答复,但是我看到requirements.txt中好像没有表明具体的版本,咱们运行试验的时候具体使用的是哪个版本呢

NougatCA commented 4 months ago

我也是学生,可以试一下transformers==4.18.0,我已经更新了requirements.txt文件,这个版本应该是没问题的。

lsrhaha1 commented 4 months ago

我也是学生,可以试一下transformers==4.18.0,我已经更新了requirements.txt文件,这个版本应该是没问题的。

收到,我回头试试,非常感谢!

lsrhaha1 commented 4 months ago

我也是学生,可以试一下transformers==4.18.0,我已经更新了requirements.txt文件,这个版本应该是没问题的。

Hello,晚上好!我在更换transformers版本后还是会有相同的问题,我猜测有没有可能是在微调单个模型时的代码在集成到一起的时候有些细节上的修改有所出入,引发我这个猜测的另一个原因是:我在对codegpt-adapt-java上对代码总结、代码修复进行微调时也会报错,在models.py的372行model_kwargs["decoder_attention_mask"] = batch[1].ne(args.pad_token_id)会报错,因为针对GPT2LMHeadModel,它并没有decoder_attention_mask这个属性,我查找了最新的和您所提到的transformers==4.18.0版本的官方文档,都没有decoder_attention_mask这个属性,这个bug我尝试解决很久还是没能解决,希望您能提供一些宝贵的建议,谢谢!