fastnlp / fastNLP

fastNLP: A Modularized and Extensible NLP Framework. Currently still in incubation.
https://gitee.com/fastnlp/fastNLP
Apache License 2.0
3.07k stars 448 forks source link

[bugfix] 解决进度条过长时的异常,优化 checkpoint_callback 逻辑 #446

Closed 00INDEX closed 1 year ago

00INDEX commented 1 year ago

Description:升级 rich 依赖版本;修改 topk_saver.py 中的 Saver 逻辑:当用户提供了 folder 时,优先使用用户提供的,而不是从 checkpoint 中 resume 的。

Main reason: 考虑四种情景:

  1. 使用 timestamp_folder,恢复训练的代码不指定 checkpoint 的 folder:新的 checkpoint 仍保存在之前的 timestamp_folder 中;
  2. 使用 timestamp_folder,恢复训练的代码指定了 checkpoint 的 folder:新的 checkpoint 保存在用户提供的 folder 中的新的 timestamp_folder 中;
  3. 不使用 timestamp_folder,恢复训练的代码不指定 checkpoint 的 folder:新的 checkpoint 仍保存在之前的 folder 中;
  4. 不使用 timestamp_folder,恢复训练的代码指定 checkpoint 的 folder:新的 checkpoint 保存新的 folder 中。

Checklist 检查下面各项是否完成

Please feel free to remove inapplicable items for your PR.

Changes: 逐项描述修改的内容