araclip / app.py
not-lain's picture
Update app.py
b0014c2 verified
raw
history blame
833 Bytes
import numpy as np
from PIL import Image
from araclip import AraClip
import gradio as gr
model = AraClip.from_pretrained("Arabic-Clip/araclip")
def search(labels, image):
# process labels
labels = labels.split(",")
labels = [item.strip() for item in labels if item != ""]
# embed data
image_features = model.embed(image=image)
text_features = np.stack([model.embed(text=label) for label in labels])
# search for most similar data
similarities = text_features @ image_features
best_match = labels[np.argmax(similarities)]
return best_match
# data
labels = ["قطة جالسة", "قطة تقفز" ,"كلب", "حصان"]
image = Image.open("cat.png")
demo = gr.Interface(search,["text","image"],["text"],examples=[["حصان, كلب, قطة", "cat.png"]])
demo.launch(debug=True)