eniac.xcw yingda.chen 3 years ago
parent
commit
d38076b072
2 changed files with 19 additions and 10 deletions
  1. +3
    -0
      data/test/images/multimodal_similarity.jpg
  2. +16
    -10
      tests/pipelines/test_multi_modal_similarity.py

+ 3
- 0
data/test/images/multimodal_similarity.jpg View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1f24abbba43782d733dedbb0b4f416635af50263862e5632963ac9263e430555
size 88542

+ 16
- 10
tests/pipelines/test_multi_modal_similarity.py View File

@@ -10,32 +10,38 @@ from modelscope.utils.test_utils import test_level


class MultiModalSimilarityTest(unittest.TestCase): class MultiModalSimilarityTest(unittest.TestCase):
model_id = 'damo/multi-modal_team-vit-large-patch14_multi-modal-similarity' model_id = 'damo/multi-modal_team-vit-large-patch14_multi-modal-similarity'
test_input = {
'img': 'data/test/images/generative_multimodal.jpg',
'text': '起居室照片'
}
test_img = 'data/test/images/multimodal_similarity.jpg'
test_str1 = '一个上了年纪的女人在城镇中骑着自行车一个黄色出租车正要从她身边驶过'
test_str2 = '穿着蓝色连衣裙的那个女人正冲着行来的车辆伸出她的手'

def infer_pipeline(self, multi_modal_similarity_pipeline):
test_input1 = {'img': self.test_img, 'text': self.test_str1}
test_input2 = {'img': self.test_img, 'text': self.test_str2}
output1 = multi_modal_similarity_pipeline(test_input1)
output2 = multi_modal_similarity_pipeline(test_input2)
print('image: {}, text: {}, similarity: {}'.format(
self.test_img, self.test_str1, output1['scores']))
print('image: {}, text: {}, similarity: {}'.format(
self.test_img, self.test_str2, output2['scores']))


@unittest.skipUnless(test_level() >= 0, 'skip test in current test level') @unittest.skipUnless(test_level() >= 0, 'skip test in current test level')
def test_run(self): def test_run(self):
multi_modal_similarity_pipeline = pipeline( multi_modal_similarity_pipeline = pipeline(
Tasks.multi_modal_similarity, model=self.model_id) Tasks.multi_modal_similarity, model=self.model_id)
output = multi_modal_similarity_pipeline(self.test_input)
print(output)
self.infer_pipeline(multi_modal_similarity_pipeline)


@unittest.skipUnless(test_level() >= 2, 'skip test in current test level') @unittest.skipUnless(test_level() >= 2, 'skip test in current test level')
def test_run_with_default_model(self): def test_run_with_default_model(self):
multi_modal_similarity_pipeline = pipeline( multi_modal_similarity_pipeline = pipeline(
task=Tasks.multi_modal_similarity) task=Tasks.multi_modal_similarity)
output = multi_modal_similarity_pipeline(self.test_input)
print(output)
self.infer_pipeline(multi_modal_similarity_pipeline)


@unittest.skipUnless(test_level() >= 1, 'skip test in current test level') @unittest.skipUnless(test_level() >= 1, 'skip test in current test level')
def test_run_with_model_from_modelhub(self): def test_run_with_model_from_modelhub(self):
model = Model.from_pretrained(self.model_id) model = Model.from_pretrained(self.model_id)
multi_modal_similarity_pipeline = pipeline( multi_modal_similarity_pipeline = pipeline(
task=Tasks.multi_modal_similarity, model=model) task=Tasks.multi_modal_similarity, model=model)
output = multi_modal_similarity_pipeline(self.test_input)
print(output)
self.infer_pipeline(multi_modal_similarity_pipeline)




if __name__ == '__main__': if __name__ == '__main__':


Loading…
Cancel
Save