For the complete documentation index, see llms.txt. This page is also available as Markdown.

CLIP

हमारे Serverless Cloud API के माध्यम से OpenAI के CLIP मॉडल का उपयोग करें

हम OpenAI के CLIP छवियों और पाठ के एम्बेडिंग जनरेट करने के लिए, तथा उनके बीच शून्य-शॉट समानता तुलना के लिए, हमारे सर्वरलेस क्लाउड API के माध्यम से समर्थित करते हैं के माध्यम से मॉडल का समर्थन करते हैं। हम तीन एंडपॉइंट उपलब्ध कराते हैं:

  • /clip/embed_image, एक छवि के लिए एम्बेडिंग वेक्टर लौटाता है

  • /clip/embed_text, एक स्ट्रिंग या स्ट्रिंग्स की सूची के लिए एम्बेडिंग वेक्टर लौटाता है

  • /clip/compare, एक विषय और प्रॉम्प्ट्स की सूची के बीच समानता स्कोर लौटाता है

एम्बेडिंग्स को कैश करके वर्गीकरण, पुनर्प्राप्ति, क्लस्टरिंग, और सिमेंटिक खोज जैसे कार्यों के लिए पुन: उपयोग किया जा सकता है। व्यापक उपयोग विवरण के लिए, देखें इनफ़ेरेंस दस्तावेज़ीकरण.

कोड नमूना

नीचे एक कोड नमूना है जो एक छवि की तुलना पाठ लेबलों की सूची से करता है। HTTP एंडपॉइंट को सीधे कॉल करें curl, या का उपयोग करें inference-sdk रैपर के साथ।

1

अपनी API कुंजी प्राप्त करें

एक Roboflow खाता बनाएँ, अपनी कुंजी यहाँ ढूँढें Roboflow API सेटिंग्स पेज और इसे अपने शेल में उपलब्ध कराएँ:

export ROBOFLOW_API_KEY="आपकी-कुंजी-यहाँ"
2

मॉडल चलाएँ

को कॉल करें /clip/compare एंडपॉइंट के साथ curl:

curl --location 'https://serverless.roboflow.com/clip/compare' \
  --header 'Content-Type: application/json' \
  --data '{
    "api_key": "'"$ROBOFLOW_API_KEY"'",
    "subject": {"type": "url", "value": "https://media.roboflow.com/notebooks/examples/dog.jpeg"},
    "subject_type": "image",
    "prompt": ["कुत्ते की एक तस्वीर", "बिल्ली की एक तस्वीर", "कार की एक तस्वीर"],
    "prompt_type": "text"
  }'
1

अपनी API कुंजी प्राप्त करें

एक Roboflow खाता बनाएँ, अपनी कुंजी यहाँ ढूँढें Roboflow API सेटिंग्स पेज और इसे अपने शेल में उपलब्ध कराएँ:

export ROBOFLOW_API_KEY="आपकी-कुंजी-यहाँ"
2

निर्भरताएँ इंस्टॉल करें

यह पैकेज मॉडल को कॉल करता है:

pip install -U inference-sdk supervision
3

मॉडल चलाएँ

तुलना चलाएँ (छवि यहाँ):

import os
import supervision as sv
from inference_sdk import InferenceHTTPClient

image = sv.load_image_from_url("https://media.roboflow.com/notebooks/examples/dog.jpeg")

client = InferenceHTTPClient(
    api_url="https://serverless.roboflow.com",
    api_key=os.environ["ROBOFLOW_API_KEY"],
)

result = client.clip_compare(
    subject=image,
    prompt=[
        "एक कुत्ते की तस्वीर",
        "एक बिल्ली की तस्वीर",
        "एक कार की तस्वीर",
    ],
    subject_type="image",
    prompt_type="text",
)

# similarity कोसाइन समानता स्कोरों की एक सूची है, प्रत्येक प्रॉम्प्ट के लिए एक
print(result["similarity"])

ऊपर दिया गया कोड इन्फरेंस परिणामों को टर्मिनल पर प्रिंट करता है:

[0.2726989686489105, 0.19865083694458008, 0.20997387170791626]

इन्फरेंस गति

विलंबता मापी गई Roboflow Inference पर 1x NVIDIA L4, बैच आकार 1, वार्मअप के बाद के औसत के साथ।

मॉडल
विलंबता (ms)

clip

3.9

के साथ मापा गया embed_image पर ViT-B-16 चेकपॉइंट (केवल इमेज एम्बेडिंग)।

सेट करें api_url को अपने डिप्लॉयमेंट लक्ष्य से मिलाएँ:

Inference के साथ उपयोग करें (सेल्फ-होस्टेड)

CLIP आपके अपने हार्डवेयर पर भी पूरी तरह से चल सकता है, साथ में inference Python पैकेज। वज़न को इन-प्रोसेस लोड करने से हर कॉल पर नेटवर्क राउंड ट्रिप से बचा जा सकता है, जो तब महत्वपूर्ण होता है जब आप खोज, क्लस्टरिंग, या डेटासेट सफाई के लिए बड़ी छवि-संग्रहों को एम्बेड कर रहे हों।

1

पैकेज इंस्टॉल करें

2

स्थानीय रूप से एम्बेड और तुलना करें

यह Clip क्लास एक्सपोज़ करती है embed_image, embed_text, और compare. नमूना एक छवि और एक प्रॉम्प्ट को एम्बेड करता है, फिर उनकी कोसाइन समानता स्कोर करता है:

परिणाम 0 और 1 के बीच होता है: संख्या जितनी अधिक होगी, छवि और पाठ उतने ही अधिक समान होंगे।

उपलब्ध चेकपॉइंट

model_id CLIP बैकबोन चुनता है:

clip/RN50, clip/RN101, clip/RN50x4, clip/RN50x16, clip/RN50x64, clip/ViT-B-32, clip/ViT-B-16, clip/ViT-L-14, clip/ViT-L-14-336px.

SDK विधियाँ clip_compare, get_clip_image_embeddings, और get_clip_text_embeddings स्वीकार करती हैं एक clip_version तर्क, ताकि सर्वर कॉल करते समय वही चेकपॉइंट चुने जा सकें।

अधिक पढ़ें

अंतिम अपडेट

क्या यह उपयोगी था?