@@ -800,7 +800,7 @@ def name_has_fc(var):
800
800
var_temp = paddle .fluid .global_scope ().find_var (each_var .name )
801
801
assert var_temp != None , "can't not find var: " + each_var .name
802
802
new_shape = (np .array (var_temp .get_tensor ())).shape
803
- assert each_var .name in orig_para_shape , earch_var .name + "MUST in var list"
803
+ assert each_var .name in orig_para_shape , each_var .name + "MUST in var list"
804
804
orig_shape = orig_para_shape .get (each_var .name )
805
805
if new_shape != orig_shape :
806
806
raise RuntimeError (
@@ -1579,14 +1579,14 @@ def get_tensor(var):
1579
1579
parameter_list = list (filter (is_parameter , program .list_vars ()))
1580
1580
param_dict = {p .name : get_tensor (p ) for p in parameter_list }
1581
1581
with open (model_path + ".pdparams" , 'wb' ) as f :
1582
- pickle .dump (param_dict , f )
1582
+ pickle .dump (param_dict , f , protocol = 2 )
1583
1583
1584
1584
optimizer_var_list = list (
1585
1585
filter (is_belong_to_optimizer , program .list_vars ()))
1586
1586
1587
1587
opt_dict = {p .name : get_tensor (p ) for p in optimizer_var_list }
1588
1588
with open (model_path + ".pdopt" , 'wb' ) as f :
1589
- pickle .dump (opt_dict , f )
1589
+ pickle .dump (opt_dict , f , protocol = 2 )
1590
1590
1591
1591
main_program = program .clone ()
1592
1592
program .desc .flush ()
@@ -1733,7 +1733,8 @@ def set_var(var, ndarray):
1733
1733
global_scope (),
1734
1734
executor ._default_executor )
1735
1735
with open (parameter_file_name , 'rb' ) as f :
1736
- load_dict = pickle .load (f )
1736
+ load_dict = pickle .load (f ) if six .PY2 else pickle .load (
1737
+ f , encoding = 'latin1' )
1737
1738
for v in parameter_list :
1738
1739
assert v .name in load_dict , \
1739
1740
"Can not find [{}] in model file [{}]" .format (
@@ -1753,7 +1754,8 @@ def set_var(var, ndarray):
1753
1754
optimizer_var_list , global_scope (), executor ._default_executor )
1754
1755
1755
1756
with open (opt_file_name , 'rb' ) as f :
1756
- load_dict = pickle .load (f )
1757
+ load_dict = pickle .load (f ) if six .PY2 else pickle .load (
1758
+ f , encoding = 'latin1' )
1757
1759
for v in optimizer_var_list :
1758
1760
assert v .name in load_dict , \
1759
1761
"Can not find [{}] in model file [{}]" .format (
@@ -1877,12 +1879,14 @@ def clone_var_to_block(block, var):
1877
1879
"Parameter file [{}] not exits" .format (parameter_file_name )
1878
1880
1879
1881
with open (parameter_file_name , 'rb' ) as f :
1880
- para_dict = pickle .load (f )
1882
+ para_dict = pickle .load (f ) if six .PY2 else pickle .load (
1883
+ f , encoding = 'latin1' )
1881
1884
1882
1885
opt_file_name = model_prefix + ".pdopt"
1883
1886
if os .path .exists (opt_file_name ):
1884
1887
with open (opt_file_name , 'rb' ) as f :
1885
- opti_dict = pickle .load (f )
1888
+ opti_dict = pickle .load (f ) if six .PY2 else pickle .load (
1889
+ f , encoding = 'latin1' )
1886
1890
1887
1891
para_dict .update (opti_dict )
1888
1892
0 commit comments