Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
chenpangpang
transformers
Commits
4eed2bec
Unverified
Commit
4eed2bec
authored
Aug 12, 2022
by
Sourab Mangrulkar
Committed by
GitHub
Aug 12, 2022
Browse files
FSDP bug fix for `load_state_dict` (#18596)
parent
d344534b
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
6 additions
and
2 deletions
+6
-2
src/transformers/trainer.py
src/transformers/trainer.py
+6
-2
No files found.
src/transformers/trainer.py
View file @
4eed2bec
...
...
@@ -1935,7 +1935,9 @@ class Trainer:
else
:
# We load the model state dict on the CPU to avoid an OOM error.
state_dict
=
torch
.
load
(
os
.
path
.
join
(
resume_from_checkpoint
,
WEIGHTS_NAME
),
map_location
=
"cpu"
)
load_result
=
model
.
load_state_dict
(
state_dict
,
strict
=
False
)
# workaround for FSDP bug https://github.com/pytorch/pytorch/issues/82963
# which takes *args instead of **kwargs
load_result
=
model
.
load_state_dict
(
state_dict
,
False
)
# release memory
del
state_dict
self
.
_issue_warnings_after_load
(
load_result
)
...
...
@@ -1989,7 +1991,9 @@ class Trainer:
# We load the model state dict on the CPU to avoid an OOM error.
state_dict
=
torch
.
load
(
best_model_path
,
map_location
=
"cpu"
)
# If the model is on the GPU, it still works!
load_result
=
model
.
load_state_dict
(
state_dict
,
strict
=
False
)
# workaround for FSDP bug https://github.com/pytorch/pytorch/issues/82963
# which takes *args instead of **kwargs
load_result
=
model
.
load_state_dict
(
state_dict
,
False
)
if
not
is_sagemaker_mp_enabled
():
self
.
_issue_warnings_after_load
(
load_result
)
elif
os
.
path
.
exists
(
os
.
path
.
join
(
self
.
state
.
best_model_checkpoint
,
WEIGHTS_INDEX_NAME
)):
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment