diff --git a/python/paddle/fluid/dygraph/base.py b/python/paddle/fluid/dygraph/base.py index 1015cc5d9f23d2d9a9fd59204ca71990bb6d0bed..8c5c5bd7919d3d9876b000a6a457c6ed8ec3d3d1 100644 --- a/python/paddle/fluid/dygraph/base.py +++ b/python/paddle/fluid/dygraph/base.py @@ -540,4 +540,5 @@ def to_variable(value, name=None, zero_copy=None): return value else: raise TypeError( - "to_variable only accepts 'ndarray' and 'Variable' as value's input") + "The type of input value is invalid, expected type is 'ndarray' or 'Variable', but received %s" + % type(value)) diff --git a/python/paddle/fluid/dygraph/checkpoint.py b/python/paddle/fluid/dygraph/checkpoint.py index 870404e64ba85fd38e75930e74280f034c1d8075..3a6e46bc64ec9af4dfcc4164a5078b2af85dca7a 100644 --- a/python/paddle/fluid/dygraph/checkpoint.py +++ b/python/paddle/fluid/dygraph/checkpoint.py @@ -63,7 +63,7 @@ def save_dygraph(state_dict, model_path): ''' base_name = os.path.basename(model_path) - assert base_name != "", "model_path MUST be format of dirname/filename [dirname\\filename in Window], Now filename is empty str" + assert base_name != "", "The input model_path MUST be format of dirname/filename [dirname\\filename in Windows system], but received filename is empty string." suffix = ".pdparams" assert len(state_dict) > 0, "state_dict is empty, no need to save" diff --git a/python/paddle/fluid/layer_helper_base.py b/python/paddle/fluid/layer_helper_base.py index 3f6f59f0e03b0876116c5153ed2186afd8689acf..dd83f2f04a2f82b55a845e5413e1a3d3e4a8627b 100644 --- a/python/paddle/fluid/layer_helper_base.py +++ b/python/paddle/fluid/layer_helper_base.py @@ -81,8 +81,8 @@ class LayerHelperBase(object): return value else: raise TypeError( - "to_variable only accepts 'ndarray' or 'Variable' or 'VarBase' as value's input" - ) + "The type of input value is invalid, expected type is 'ndarray' or 'Variable', but received %s" + % type(value)) def _create_weight_normalize(self, attr, shape, dtype): from .layers import elementwise_mul, elementwise_div, reshape diff --git a/python/paddle/fluid/tests/unittests/test_var_base.py b/python/paddle/fluid/tests/unittests/test_var_base.py index 07b2a75912eb4375ec502c6b723c8938209041a6..4dd41a1eb79f52418cba5dac014d26c7c3812bec 100644 --- a/python/paddle/fluid/tests/unittests/test_var_base.py +++ b/python/paddle/fluid/tests/unittests/test_var_base.py @@ -39,6 +39,13 @@ class TestVarBase(unittest.TestCase): self.assertEqual(var.shape, self.shape) self.assertEqual(var.dtype, core.VarDesc.VarType.FP32) self.assertEqual(var.type, core.VarDesc.VarType.LOD_TENSOR) + # The type of input must be 'ndarray' or 'Variable', it will raise TypeError + with self.assertRaises(TypeError): + var = fluid.dygraph.to_variable("test", name="abc") + # test to_variable of LayerObjectHelper(LayerHelperBase) + with self.assertRaises(TypeError): + linear = fluid.dygraph.Linear(32, 64) + var = linear._helper.to_variable("test", name="abc") def test_write_property(self): with fluid.dygraph.guard():