Skip to content

Commit e037aa0

Browse files
authored
Fix Ops (aten::_scaled_dot_product_efficient_attention) | feat (torchlib) (#1833)
attn_bias should be used.
1 parent d90b102 commit e037aa0

2 files changed

Lines changed: 5 additions & 3 deletions

File tree

‎onnxscript/function_libs/torch_lib/ops/nn.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1974,7 +1974,7 @@ def aten__scaled_dot_product_efficient_attention(
19741974
"""_scaled_dot_product_efficient_attention(Tensor query, Tensor key, Tensor value, Tensor? attn_bias, bool compute_log_sumexp, float dropout_p=0.0, bool is_causal=False, *, float? scale=None) -> (Tensor output, Tensor log_sumexp, Tensor philox_seed, Tensor philox_offset)"""
19751975

19761976
result = aten_scaled_dot_product_attention(
1977-
query, key, value, dropout_p=dropout_p, is_causal=is_causal, scale=scale
1977+
query, key, value, attn_bias, dropout_p=dropout_p, is_causal=is_causal, scale=scale
19781978
)
19791979

19801980
# The followings are not comsumed by the graph.

‎tests/function_libs/torch_lib/extra_opinfo.py‎

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1321,12 +1321,14 @@ def sample_inputs__scaled_dot_product_efficient_attention(
13211321
make = opinfo_core.partial(
13221322
opinfo_core.make_tensor, device=device, dtype=dtype, requires_grad=requires_grad
13231323
)
1324-
batch, seq_q, seq_kv, num_heads, head_dim = 4, 3, 6, 4, 8
1324+
batch, seq_q, seq_kv, num_heads, head_dim = 2, 3, 6, 4, 8
13251325

13261326
dim_4_q_shape = (batch, num_heads, seq_q, head_dim)
13271327
dim_4_kv_shape = (batch, num_heads, seq_kv, head_dim)
1328+
shape_attn_bias = (batch, num_heads, seq_q, seq_kv)
13281329

13291330
qkv_shapes = [(dim_4_q_shape, dim_4_kv_shape)]
1331+
13301332
samples = []
13311333
for qkv_shape, is_causal, dropout_p, compute_log_sumexp in opinfo_core.product(
13321334
qkv_shapes, [True, False], [0.0], [True, False]
@@ -1337,7 +1339,7 @@ def sample_inputs__scaled_dot_product_efficient_attention(
13371339
make(shape_q),
13381340
make(shape_kv),
13391341
make(shape_kv),
1340-
attn_bias=None,
1342+
attn_bias=make(shape_attn_bias),
13411343
is_causal=is_causal,
13421344
dropout_p=dropout_p,
13431345
compute_log_sumexp=compute_log_sumexp,

0 commit comments

Comments
 (0)