Skip to content

Commit e036ce6

Browse files
authored
Add eval method for OVModels (#591)
1 parent 428c778 commit e036ce6

File tree

2 files changed

+13
-0
lines changed

2 files changed

+13
-0
lines changed

optimum/intel/openvino/modeling_base.py

+3
Original file line numberDiff line numberDiff line change
@@ -448,6 +448,9 @@ def half(self):
448448
self.request = None
449449
return self
450450

451+
def eval(self):
452+
return self
453+
451454
def forward(self, *args, **kwargs):
452455
raise NotImplementedError
453456

tests/openvino/test_modeling.py

+10
Original file line numberDiff line numberDiff line change
@@ -272,6 +272,7 @@ def test_compare_to_transformers(self, model_arch):
272272
def test_pipeline(self, model_arch):
273273
model_id = MODEL_NAMES[model_arch]
274274
model = OVModelForSequenceClassification.from_pretrained(model_id, export=True, compile=False)
275+
model.eval()
275276
tokenizer = AutoTokenizer.from_pretrained(model_id)
276277
pipe = pipeline("text-classification", model=model, tokenizer=tokenizer)
277278
text = "This restaurant is awesome"
@@ -345,6 +346,7 @@ def test_compare_to_transformers(self, model_arch):
345346
def test_pipeline(self, model_arch):
346347
model_id = MODEL_NAMES[model_arch]
347348
model = OVModelForQuestionAnswering.from_pretrained(model_id, export=True)
349+
model.eval()
348350
tokenizer = AutoTokenizer.from_pretrained(model_id)
349351
pipe = pipeline("question-answering", model=model, tokenizer=tokenizer)
350352
question = "What's my name?"
@@ -411,6 +413,7 @@ def test_compare_to_transformers(self, model_arch):
411413
def test_pipeline(self, model_arch):
412414
model_id = MODEL_NAMES[model_arch]
413415
model = OVModelForTokenClassification.from_pretrained(model_id, export=True)
416+
model.eval()
414417
tokenizer = AutoTokenizer.from_pretrained(model_id)
415418
pipe = pipeline("token-classification", model=model, tokenizer=tokenizer)
416419
outputs = pipe("My Name is Arthur and I live in Lyon.")
@@ -460,6 +463,7 @@ def test_compare_to_transformers(self, model_arch):
460463
def test_pipeline(self, model_arch):
461464
model_id = MODEL_NAMES[model_arch]
462465
model = OVModelForFeatureExtraction.from_pretrained(model_id, export=True)
466+
model.eval()
463467
tokenizer = AutoTokenizer.from_pretrained(model_id)
464468
pipe = pipeline("feature-extraction", model=model, tokenizer=tokenizer)
465469
outputs = pipe("My Name is Arthur and I live in Lyon.")
@@ -568,6 +572,7 @@ def test_pipeline(self, model_arch):
568572
model = OVModelForCausalLM.from_pretrained(
569573
model_id, export=True, use_cache=False, compile=False, **model_kwargs
570574
)
575+
model.eval()
571576
model.config.encoder_no_repeat_ngram_size = 0
572577
model.to("cpu")
573578
model.half()
@@ -758,6 +763,7 @@ def test_compare_to_transformers(self, model_arch):
758763
def test_pipeline(self, model_arch):
759764
model_id = MODEL_NAMES[model_arch]
760765
model = OVModelForMaskedLM.from_pretrained(model_id, export=True)
766+
model.eval()
761767
tokenizer = AutoTokenizer.from_pretrained(model_id)
762768
pipe = pipeline("fill-mask", model=model, tokenizer=tokenizer)
763769
outputs = pipe(f"This is a {tokenizer.mask_token}.")
@@ -815,6 +821,7 @@ def test_compare_to_transformers(self, model_arch):
815821
def test_pipeline(self, model_arch):
816822
model_id = MODEL_NAMES[model_arch]
817823
model = OVModelForImageClassification.from_pretrained(model_id, export=True)
824+
model.eval()
818825
preprocessor = AutoFeatureExtractor.from_pretrained(model_id)
819826
pipe = pipeline("image-classification", model=model, feature_extractor=preprocessor)
820827
outputs = pipe("http://images.cocodataset.org/val2017/000000039769.jpg")
@@ -911,6 +918,7 @@ def test_pipeline(self, model_arch):
911918
model_id = MODEL_NAMES[model_arch]
912919
tokenizer = AutoTokenizer.from_pretrained(model_id)
913920
model = OVModelForSeq2SeqLM.from_pretrained(model_id, export=True, compile=False)
921+
model.eval()
914922
model.half()
915923
model.to("cpu")
916924
model.compile()
@@ -1044,6 +1052,7 @@ def test_compare_to_transformers(self, model_arch):
10441052
def test_pipeline(self, model_arch):
10451053
model_id = MODEL_NAMES[model_arch]
10461054
model = OVModelForAudioClassification.from_pretrained(model_id, export=True)
1055+
model.eval()
10471056
preprocessor = AutoFeatureExtractor.from_pretrained(model_id)
10481057
pipe = pipeline("audio-classification", model=model, feature_extractor=preprocessor)
10491058
outputs = pipe([np.random.random(16000)])
@@ -1354,6 +1363,7 @@ def test_compare_to_transformers(self, model_arch):
13541363
def test_pipeline(self, model_arch):
13551364
model_id = MODEL_NAMES[model_arch]
13561365
model = OVModelForSpeechSeq2Seq.from_pretrained(model_id, export=True)
1366+
model.eval()
13571367
processor = get_preprocessor(model_id)
13581368
GenerationConfig.from_pretrained(model_id)
13591369
pipe = pipeline(

0 commit comments

Comments
 (0)