| import torch | |
| import requests | |
| import gradio as gr | |
| from PIL import Image | |
| from torchvision import transforms | |
| model = torch.hub.load('pytorch/vision:v0.6.0', 'resnet18', pretrained = True).eval() | |
| response = requests.get("https://git.io/JJkYN") | |
| labels = response.text.split("\n") | |
| def get_predictions(inp): | |
| inp = transforms.ToTensor()(inp).unsqueeze(0) | |
| with torch.no_grad(): | |
| predictions = torch.nn.functional.softmax(model(inp)[0], dim = 0) | |
| conf = {labels[i]: float(predictions[i]) for i in range(1000)} | |
| return conf | |
| iclass = gr.Interface(fn = get_predictions, | |
| inputs = gr.Image(type = "pil"), | |
| outputs = gr.Label(num_top_classes = 2) | |
| ) | |
| iclass.launch() | |