shibing624 / pycorrector

pycorrector is a toolkit for text error correction. 文本纠错,实现了Kenlm,T5,MacBERT,ChatGLM3,LLaMA等模型应用在纠错场景,开箱即用。
https://www.mulanai.com/product/corrector/
Apache License 2.0
5.51k stars 1.09k forks source link

运行训练脚本时报错 `validation_epoch_end` has been removed in v2.0.0. #408

Closed vigorous2008 closed 1 year ago

vigorous2008 commented 1 year ago

Describe the Question

运行pycorrector/macbert/train.py时,报错。pytorch-lightning 版本2.0.4 。 不想降低pytorch-lightning 版本,该如何解决该问题。谢谢!

详细报错信息如下:

2023-07-21 18:27:55.745 | INFO     | __main__:main:89 - train model ...
GPU available: False, used: False
TPU available: False, using: 0 TPU cores
IPU available: False, using: 0 IPUs
HPU available: False, using: 0 HPUs
Traceback (most recent call last):
  File "train.py", line 133, in <module>
    main()
  File "train.py", line 99, in main
    trainer.fit(model, train_loader, valid_loader)
  File "D:\develop\anaconda\envs\pycorrector38\lib\site-packages\pytorch_lightning\trainer\trainer.py", line 531, in fit    call._call_and_handle_interrupt(
  File "D:\develop\anaconda\envs\pycorrector38\lib\site-packages\pytorch_lightning\trainer\call.py", line 42, in _call_and_handle_interrupt
    return trainer_fn(*args, **kwargs)
  File "D:\develop\anaconda\envs\pycorrector38\lib\site-packages\pytorch_lightning\trainer\trainer.py", line 570, in _fit_impl
    self._run(model, ckpt_path=ckpt_path)
  File "D:\develop\anaconda\envs\pycorrector38\lib\site-packages\pytorch_lightning\trainer\trainer.py", line 923, in _run
    _verify_loop_configurations(self)
  File "D:\develop\anaconda\envs\pycorrector38\lib\site-packages\pytorch_lightning\trainer\configuration_validator.py", line 36, in _verify_loop_configurations
    __verify_train_val_loop_configuration(trainer, model)
  File "D:\develop\anaconda\envs\pycorrector38\lib\site-packages\pytorch_lightning\trainer\configuration_validator.py", line 84, in __verify_train_val_loop_configuration
    raise NotImplementedError(
NotImplementedError: Support for `validation_epoch_end` has been removed in v2.0.0. `MacBert4Csc` implements this method. You can use the `on_validation_epoch_end` hook instead. To access outputs, save them in-memory as instance attributes. You can find migration examples in https://github.com/Lightning-AI/lightning/pull/16520.
shibing624 commented 1 year ago

你不想降低pytorch-lightning 版本,我不知道了。