• F
    1. modify set_value op, use Scalars to represent attr `values`, instead of a... · dd2a749a
    Feiyu Chan 提交于
    1. modify set_value op, use Scalars to represent attr `values`, instead of a bunch of attributs of various types; (#52408)
    
    2. add program converter and set_value op as an example, which provides the functionality to convert `paddle::framework::ProgramDesc` between old and new formats(the differences are mainly some operators with incompatible updates in the definition);
    3. program version and operator version map now are always saved when serializing `paddle::framework::ProgramDesc` to identify the version;
    3. provide an option `legacy_format=false` in  serialization of `paddle::framework::ProgramDesc`, it decided whether to convert ProgramDesc back to a legacy format, which is compatible for paddle 2.4.2 or earlier versions to load and execute;
    4. deserialization of `paddle::framework::ProgramDesc` is now automatically detecting whether the bytes it receives is in legacy format(contains any of the operators that has been incompatibly updated and have any attribute of type `Scalar`) and convert it to new format. But if you want a faithful deserialization without the automatic conversion, you can use protobuf's deserialization instead. Though it is not recommended, it can be used for the purpose of testing.
    dd2a749a
eager_method.cc 84.4 KB