1. 03 11月, 2021 1 次提交
    • 0
      [Dy2stat]support Python3 type annotation (#36544) · db8425ec
      0x45f 提交于
      * Support Py3 type annotations in @to_static
      
      * support type hint for args in func
      
      * support type hint assign
      
      * if annotation and value(Constant) are diffent type, we use value type
      
      * polish type_from_annotation()
      
      * code format
      
      * code format
      
      * remove useless commentary
      
      * fix review
      Co-authored-by: NAurelius84 <zhangliujie@baidu.com>
      db8425ec
  2. 05 8月, 2021 1 次提交
  3. 24 6月, 2021 1 次提交
  4. 21 6月, 2021 1 次提交
  5. 17 6月, 2021 1 次提交
  6. 09 4月, 2021 1 次提交
  7. 24 3月, 2021 1 次提交
  8. 04 3月, 2021 1 次提交
  9. 18 2月, 2021 1 次提交
    • H
      Add Support for Tuple in for Loop (#30998) · c1375783
      Huihuang Zheng 提交于
      Dy2stat didn't support tuple as iteration variable in the past. This PR added there main cases:
      
             1). Non-enumerate case: for var1, var2 in var|var.numpy() will be re-written as:
                for FOR_ITER_TUPLE_PREFIX_x in var | var.numpy():
                  var1 = FOR_ITER_TUPLE_PREFIX_x[0]
                  var2 = FOR_ITER_TUPLE_PREFIX_x[1]
              2). Enumerate out tuple case: for t in enumerate(var|var.numpy) will be rewritten as:
                for FOR_ITER_TUPLE_INDEX_PREFIX_x, FOR_ITER_TUPLE_PREFIX_x in enumerate(var|var.numpy):
                  t = (FOR_ITER_TUPLE_INDEX_PREFIX_x, FOR_ITER_TUPLE_PREFIX_x)
              3). Enumerate inner tuple case: for i, (var1, (var2, va3)) in enumerate(var|var.numpy()) will
              be re-written as:
                for i, FOR_ITER_TUPLE_PREFIX_x in var | var.numpy():
                  var1 = FOR_ITER_TUPLE_PREFIX_x[0]
                  var2 = FOR_ITER_TUPLE_PREFIX_x[1][0]
                  var3 = FOR_ITER_TUPLE_PREFIX_x[1][1]
      c1375783
  10. 20 1月, 2021 1 次提交
  11. 14 1月, 2021 1 次提交
  12. 18 12月, 2020 2 次提交
  13. 14 12月, 2020 1 次提交
    • L
      [Dy2Stat] 1. Fix bug of for-range stmts. 2. Support that step value is... · 0cad1152
      liym27 提交于
      [Dy2Stat] 1. Fix bug of for-range stmts. 2. Support that step value is negative in for-range stmts (#29519)
      
      1. Fix error in _build_cond_stmt of for-range stmts. 
      
      2. Support that step value is negative in for-range stmts
      
      3. Fix code because of the diff between Py2 and Py3
      0cad1152
  14. 04 12月, 2020 1 次提交
  15. 30 11月, 2020 1 次提交
    • W
      save model after jit.load (#28748) · 1476e1f9
      WeiXin 提交于
      * Changed a variable name error
      
      * Add comments
      
      * Move member functions of TranslatedLayer out of function
      
      * edit code according to review
      
      * Edit input argument of '_run_static_graph'
      
      * reset due to Segmentation fault
      
      * rename variables when stitching graph
      
      * modify code according CI
      
      * Add comments to '__i_m_p_l__'
      
      * remove blanks befor 'Get...'
      
      * edit code according to review
      
      * Add a comment to '_execution_method_creator'
      
      * Edit a comment to '_execution_method_creator'
      1476e1f9
  16. 19 11月, 2020 1 次提交
  17. 26 10月, 2020 1 次提交
  18. 29 9月, 2020 1 次提交
    • H
      [Dy2stat] Refine Dy2stat APIs to 2.0rc (#27430) · cc2fc938
      Huihuang Zheng 提交于
      Refine Dy2stat APIs to 2.0rc
      
      After discussion, we accepted 3 key points from reviewers:
      
      1. In 2.0rc we changed dygraph_to_static folder to dy2static
      2. Keep the three files: convert_call_func.py, convert_operators.py, variable_trans_func.py
      3. Remove convert_operators path when users import convert_xxx. 
      
      After this PR, users can import convert_xxx APIs by:
      
      `import paddle.jit.dy2static.convert_xxx`
      
      The file structure will be:
      
      ```
      jit
          dy2static
                convert_operators.py
                convert_func_call.py
                variable_trans_func.py
      ```
      
      Detail changed API in files:
      
      In python/paddle/jit/dygraph_to_static/convert_call_func.py:
      from ...fluid.dygraph.dygraph_to_static.convert_call_func import convert_call  #DEFINE_ALIAS
      
      In python/paddle/jit/dygraph_to_static/convert_operators.py:
      from ...fluid.dygraph.dygraph_to_static.convert_operators import cast_bool_if_necessary  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_assert  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_ifelse  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_len  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_logical_and  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_logical_not  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_logical_or  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_print  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_var_dtype  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_var_shape  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.convert_operators import convert_while_loop  #DEFINE_ALIAS
      
      In python/paddle/jit/dygraph_to_static/variable_trans_func.py:
      from ...fluid.dygraph.dygraph_to_static.variable_trans_func import create_fill_constant_node  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.variable_trans_func import create_static_variable_gast_node  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.variable_trans_func import data_layer_not_check  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.variable_trans_func import to_static_variable  #DEFINE_ALIAS
      from ...fluid.dygraph.dygraph_to_static.variable_trans_func import to_static_variable_gast_node  #DEFINE_ALIAS
      cc2fc938
  19. 02 9月, 2020 1 次提交
  20. 31 8月, 2020 1 次提交
  21. 27 8月, 2020 1 次提交
  22. 21 8月, 2020 1 次提交
  23. 19 8月, 2020 2 次提交
  24. 12 8月, 2020 1 次提交
  25. 02 7月, 2020 1 次提交
  26. 19 6月, 2020 1 次提交
  27. 09 6月, 2020 1 次提交
  28. 03 6月, 2020 1 次提交
  29. 21 5月, 2020 1 次提交
  30. 19 5月, 2020 1 次提交
  31. 18 5月, 2020 1 次提交
    • C
      [Dy2static] Add for enumerate Variable support (#24398) · 03ba5b74
      Chen Weihang 提交于
      * initial test
      
      * for enumerate basic implement, test=develop
      
      * update unittests, test=develop
      
      * refine unittests to adapt new training mode, test=develop
      
      * refactor for node stmts parsing code, test=develop
      
      * self-review & polish details, test=develop
      03ba5b74
  32. 13 5月, 2020 1 次提交
  33. 12 5月, 2020 1 次提交
  34. 24 4月, 2020 1 次提交
    • L
      [Dy2Stat] Optimize loop cond (#24049) · 2961a4f0
      liym27 提交于
      * Simplify code for gast.If in is_control_flow_to_transform.
      * Move IsControlFlowVisitor to file utils. 
      * Don't use convert_call for build-in func in CallTransformer. 
      * Optimize api is_control_flow_to_transform. 
      * Polish the document of IsControlFlowVisitor.
      2961a4f0
  35. 17 4月, 2020 1 次提交
  36. 10 4月, 2020 1 次提交
  37. 04 4月, 2020 1 次提交
  38. 24 3月, 2020 1 次提交