PaddleNLP
PaddleNLP copied to clipboard
albert静态图
请提出你的问题
Albert是否支持了静态图导出
您好,2.4.1版本是直接转成静态图导出的
您好,2.4.1版本是直接转成静态图导出的
报错信息:
The behavior of expression A + B has been unified with elementwise_add(X, Y, axis=-1) from Paddle 2.0. If your code works well in the older versions but crashes in this version, try to use elementwise_add(X, Y, axis=0) instead of A + B. This transitional warning will be dropped in the future.
op_type, op_type, EXPRESSION_MAP[method_name]))
Traceback (most recent call last):
File, line 31, in <module>
main()
File line 27, in main
paddle.jit.save(model, './checkpoints/albert/inference')
File "<decorator-gen-101>", line 2, in save
File "E:\anaconda\envs\py37\lib\site-packages\paddle\fluid\wrapped_decorator.py", line 25, in __impl__
return wrapped_func(*args, **kwargs)
File "E:\anaconda\envs\py37\lib\site-packages\paddle\fluid\dygraph\base.py", line 40, in __impl__
return func(*args, **kwargs)
File "E:\anaconda\envs\py37\lib\site-packages\paddle\fluid\dygraph\jit.py", line 744, in save
inner_input_spec)
File "E:\anaconda\envs\py37\lib\site-packages\paddle\fluid\dygraph\dygraph_to_static\program_translator.py", line 517, in concrete_program_specify_input_spec
*desired_input_spec)
File "E:\anaconda\envs\py37\lib\site-packages\paddle\fluid\dygraph\dygraph_to_static\program_translator.py", line 427, in get_concrete_program
concrete_program, partial_program_layer = self._program_cache[cache_key]
File "E:\anaconda\envs\py37\lib\site-packages\paddle\fluid\dygraph\dygraph_to_static\program_translator.py", line 744, in __getitem__
self._caches[item] = self._build_once(item)
File "E:\anaconda\envs\py37\lib\site-packages\paddle\fluid\dygraph\dygraph_to_static\program_translator.py", line 735, in _build_once
**cache_key.kwargs)
File "<decorator-gen-99>", line 2, in from_func_spec
File "E:\anaconda\envs\py37\lib\site-packages\paddle\fluid\wrapped_decorator.py", line 25, in __impl__
return wrapped_func(*args, **kwargs)
File "E:\anaconda\envs\py37\lib\site-packages\paddle\fluid\dygraph\base.py", line 40, in __impl__
return func(*args, **kwargs)
File "E:\anaconda\envs\py37\lib\site-packages\paddle\fluid\dygraph\dygraph_to_static\program_translator.py", line 689, in from_func_spec
error_data.raise_new_exception()
File "E:\anaconda\envs\py37\lib\site-packages\paddle\fluid\dygraph\dygraph_to_static\error.py", line 336, in raise_new_exception
six.exec_("raise new_exception from None")
File "<string>", line 1, in <module>
TypeError: In transformed code:
File "G:\paddlenlp\transformers\albert\modeling.py", line 1455, in forward
return_dict=return_dict)
File "G:\paddlenlp\transformers\albert\modeling.py", line 1135, in forward
return_dict=return_dict)
File "G:\paddlenlp\transformers\albert\modeling.py", line 459, in forward
output_hidden_states=output_hidden_states)
File "G:\paddlenlp\transformers\albert\modeling.py", line 376, in forward
output_attentions=output_attentions,
File "G:\paddlenlp\transformers\albert\modeling.py", line 319, in forward
output_attentions=output_attentions,
File "G:\paddlenlp\transformers\albert\modeling.py", line 238, in forward
query_layer = self.transpose_for_scores(mixed_query_layer)
File "G:\paddlenlp\transformers\albert\modeling.py", line 221, in transpose_for_scores
# Copied from transformers.models.bert.modeling_bert.BertSelfAttention.transpose_for_scores
def transpose_for_scores(self, x):
new_x_shape = x.shape[:-1] + [
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ <--- HERE
self.num_attention_heads, self.attention_head_size
]
TypeError: can only concatenate tuple (not "list") to tuple
动转静代码
def main():
model = AlbertForMaskedLM.from_pretrained('./checkpoints/albert-chinese-tiny')
model.eval()
model = paddle.jit.to_static(
model,
input_spec=[
paddle.static.InputSpec(
shape=[None, None], dtype="int64"),
paddle.static.InputSpec(
shape=[None, None], dtype="int64"),
paddle.static.InputSpec(
shape=[None, None], dtype="int64")
paddle.jit.save(model, './checkpoints/albert/inference')
This issue is stale because it has been open for 60 days with no activity. 当前issue 60天内无活动,被标记为stale。
This issue was closed because it has been inactive for 14 days since being marked as stale. 当前issue 被标记为stale已有14天,即将关闭。