Team Ai
Apppublic

LayBraid/OpenIA-Implementation

sourceHugging Facemitupdated 4y agoView on Hugging Face
0likes
app.py40 linesDownload Raw Back to root
1import clip2import gradio as gr3import os4import torch5from torchvision.datasets import CIFAR1006from transformers import CLIPProcessor, CLIPModel7 8model = CLIPModel.from_pretrained("openai/clip-vit-base-patch32")9processor = CLIPProcessor.from_pretrained("openai/clip-vit-base-patch32")10 11cifar100 = CIFAR100(root=os.path.expanduser("~/.cache"), download=True, train=False)12 13text_inputs = []14 15for c in cifar100.classes:16    classes = "a photo of a " + c17    print(classes)18    text_inputs.append(classes)19 20print(text_inputs)21 22test = ["a photo of a dog", "a photo of a cat"]23 24 25def send_inputs(img):26    inputs = processor(text=test, images=img, return_tensors="pt", padding=True)27 28    outputs = model(**inputs)29    logits_per_image = outputs.logits_per_image30    probs = logits_per_image.softmax(dim=1)31 32    result = probs.argmax(dim=1)33    index = result.item()34    print(test[index])35    return test[index]36 37 38if __name__ == "__main__":39    gr.Interface(title="CAT OR DOG ???", fn=send_inputs, inputs=["image"], outputs="text").launch()40