Skip to content

Commit 2177461

Browse files
committed
fix position ids and add tests
1 parent 9aa21b0 commit 2177461

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

optimum/intel/openvino/modeling_decoder.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -428,7 +428,7 @@ def prepare_inputs(
428428
position_ids = np.cumsum(attention_mask, axis=1) - 1
429429
position_ids[attention_mask == 0] = 1
430430
if past_key_values:
431-
position_ids = np.expand_dims(position_ids[:, -input_ids.shape[1] :], axis=-1)
431+
position_ids = position_ids[:, -input_ids.shape[1] :]
432432

433433
inputs["position_ids"] = position_ids
434434

tests/openvino/test_modeling.py

+5
Original file line numberDiff line numberDiff line change
@@ -632,6 +632,11 @@ def test_multiple_inputs(self, model_arch):
632632
outputs = model.generate(**tokens, generation_config=generation_config)
633633
self.assertIsInstance(outputs, torch.Tensor)
634634
self.assertEqual(outputs.shape[0], 3)
635+
# test that generation result is reproducible
636+
outputs2 = model.generate(**tokens, generation_config=generation_config)
637+
self.assertIsInstance(outputs2, torch.Tensor)
638+
self.assertEqual(outputs2.shape[0], 3)
639+
self.assertTrue(torch.allclose(outputs2, outputs))
635640
del model
636641
gc.collect()
637642

0 commit comments

Comments
 (0)