Views
No views yet
1import torch
2from src.clip.clip import ClipProcesserChinese, ClipChineseModel
3import requests
4from PIL import Image
5
6clip_processor = ClipProcesserChinese.from_pretrained('youzanai/clip-product-title-chinese')
7model = ClipChineseModel.from_pretrained('youzanai/clip-product-title-chinese')
8
9url = 'http://img.yzcdn.cn/upload_files/2015/04/21/0140dac4657f874f2acff9294b28088c.jpg'
10img = Image.open(requests.get(url, stream=True).raw).convert('RGB')
11imgs = [img]
12texts = ['运动鞋', '红色连衣裙', '黑色连衣裙', '大衣', '文具']
13
14f = clip_processor(texts, imgs, return_tensors='pt', truncation=True, padding=True)
15del f['token_type_ids']
16with torch.no_grad():
17 out = model(**f)
18logits_per_image, logits_per_text = out['logits_per_image'], out['logits_per_text']
19
20print(logits_per_image.softmax(dim=-1).cpu().detach().numpy())
21
22# 结果: [[1.1700666e-07 9.9948394e-01 5.1582896e-04 4.7687358e-11 6.9604440e-08]]