Hub documentation
استخدام OpenCLIP في Hugging Face
استخدام OpenCLIP في Hugging Face
OpenCLIP هو تطبيق مفتوح المصدر لنموذج CLIP من OpenAI.
استكشاف OpenCLIP على Hub
يمكنك العثور على نماذج OpenCLIP من خلال التصفية على يسار صفحة النماذج.
تحتوي نماذج OpenCLIP المستضافة على Hub على بطاقة نموذج تتضمن معلومات مفيدة حول النماذج. بفضل تكامل OpenCLIP مع Hugging Face Hub، يمكنك تحميل نماذج OpenCLIP بعدد قليل من أسطر الكود. كما يمكنك نشر هذه النماذج باستخدام نقاط الاستدلال (Inference Endpoints).
التثبيت
للبدء، يمكنك اتباع دليل تثبيت OpenCLIP. يمكنك أيضًا استخدام أمر التثبيت من سطر واحد التالي عبر pip:
$ pip install open_clip_torchاستخدام نماذج موجودة
يمكن تحميل جميع نماذج OpenCLIP بسهولة من Hub:
import open_clip
model, preprocess = open_clip.create_model_from_pretrained('hf-hub:laion/CLIP-ViT-g-14-laion2B-s12B-b42K')
tokenizer = open_clip.get_tokenizer('hf-hub:laion/CLIP-ViT-g-14-laion2B-s12B-b42K')بمجرد التحميل، يمكنك ترميز الصورة والنص لإجراء تصنيف الصور بدون تدريب مسبق:
import torch
from PIL import Image
import requests
url = 'http://images.cocodataset.org/val2017/000000039769.jpg'
image = Image.open(requests.get(url, stream=True).raw)
image = preprocess(image).unsqueeze(0)
text = tokenizer(["a diagram", "a dog", "a cat"])
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)
print("Label probs:", text_probs) يُخرج احتمال كل فئة ممكنة:
Label probs: tensor([[0.0020, 0.0034, 0.9946]])
إذا كنت ترغب في تحميل نموذج OpenCLIP محدد، يمكنك النقر على Use in OpenCLIP في بطاقة النموذج وستحصل على مقتطف برمجي جاهز للاستخدام!


موارد إضافية
- مستودع OpenCLIP
- OpenCLIP الوثائق
- نماذج OpenCLIP في المستودع