--- license: cc-by-nc-4.0 --- This is the official Hugging Face repo for PathCLIP # Usage ```python import torch from PIL import Image import open_clip ##load the model model, _, preprocess = open_clip.create_model_and_transforms('ViT-B-16', pretrained='your_path/pathclip-base.pt', cache_dir='/mnt/Xsky/syx/model/open_clip', force_quick_gelu=True) tokenizer = open_clip.get_tokenizer('ViT-B-16') model = model.cuda() ##load the image and prepare the text prompt img_path = 'your_img_path' label_description_list = ['label description1', 'label description3', 'label description3'] # specify the label descriptions text_label_list = ['An image of {}'.format(i) for i in label_description_list] image = Image.open(img_path) image = preprocess(image).unsqueeze(0).cuda() text = tokenizer(text_label_list).cuda() ##extract the img and text feature and predict the label with torch.no_grad(), torch.cuda.amp.autocast(): image_features = model.encode_image(image) text_features = model.encode_text(text) image_features /= image_features.norm(dim=-1, keepdim=True) text_features /= text_features.norm(dim=-1, keepdim=True) text_probs = (100.0 * image_features @ text_features.T).softmax(dim=-1) predict_label = torch.argmax(text_probs).item() ```