-
Notifications
You must be signed in to change notification settings - Fork 5.6k
It is required to include LoDTensor input with batch_size=1 in sequence OP test
Tao Luo edited this page Jan 15, 2020
·
1 revision
It is required to include LoDTensor input with batch_size=1 in sequence OP test (English Version)
规范概要:
- 第1节,本规范说明
- 第2节,本规范的检查方法
- 第3节,未通过检查的修改建议
补充说明:
此规范在执行过程中,可能存在未考虑周全的地方。请大家积极反馈意见,在实施过程中不断补充与完善。
对于一维lod,lod的个数可以理解为batch_size的值,因此Sequence相关Op的单测中必须包含batch_size = 1的情况,否则实际运行的时候可能会出现bug。
检查范围:所有Sequence Op的单测脚本中,至少需要调用一次Class OpTest
的get_sequence_batch_size_1_input
方法获取batch size为1的LoDTensor输入。
特殊情况:
- 对于特殊情况,监控机制会通过白名单
NEED_TO_FIX_OP_LIST
将其豁免 - 白名单位置:python/paddle/fluid/tests/unittests/white_list/check_op_sequence_batch_1_input_white_list.py,可以通过将op名称加入
NEED_TO_FIX_OP_LIST
跳过该检查。
除特殊情况外,其他的单测均被要求进行该检查。
当白名单文件check_op_sequence_batch_1_input_white_list.py
被修改时,会触发CI增量检测,需要特定人员审核并描述原因。
当单测未通过检查时,可以参考以下建议进行修改:
- 检查op是否有一个对应的
python/paddle/fluid/tests/unittests/sequence/test_${op_name}.py
单测文件 - 检查op的单测文件里是否至少包含一次
Class OpTest
的get_sequence_batch_size_1_input
方法调用,以包含batch size为1的LoDTensor输入的测试
若遇到其他问题,请联系 @songyouwei