टेक्स्ट समानता

OpenAI API के साथ Embeddings परिचय

Emmanuel Pire

Senior Software Engineer, DataCamp

पुनरावलोकन...

 

  • अर्थ के हिसाब से मिलते-जुलते टेक्स्ट vector space में एक-दूसरे के और पास एम्बेड होते हैं
  • दूरी नापकर समानता मापते हैं
  • Embeddings के उपयोग:
    • सेमांटिक सर्च
    • रिकमेंडेशन
    • क्लासिफिकेशन

 

2D vector space का प्लॉट, जो दिखाता है कि एक जैसी भावना और विषय वाले रिव्यू vector space में पास मैप होते हैं.

OpenAI API के साथ Embeddings परिचय

समानता मापना

 

Cosine distance

from scipy.spatial import distance

distance.cosine([0, 1], [1, 0])
1.0
  • रेंज: 0 से 2
  • छोटा मान = ज़्यादा समानता

 

दो वेक्टर जिनके बीच एक सीधी रेखा खींची है.

OpenAI API के साथ Embeddings परिचय

उदाहरण: हेडलाइन समानता तुलना

डिक्शनरी की एक सूची जिसमें हेडलाइन और उनकी embeddings हैं.

OpenAI API के साथ Embeddings परिचय

उदाहरण: हेडलाइन समानता तुलना

def create_embeddings(texts):
  response = client.embeddings.create(
    model="text-embedding-3-small",
    input=texts
  )
  response_dict = response.model_dump()

  return [data['embedding'] for data in response_dict['data']]
print(create_embeddings(["Python is the best!", "R is the best!"]))

print(create_embeddings("DataCamp is awesome!")[0])
[[0.0050565884448587894, ..., , -0.04000323638319969],
 [-0.0018890155479311943, ..., -0.04085670784115791]]

[0.00037010075175203383, ..., -0.021759100258350372]
OpenAI API के साथ Embeddings परिचय

उदाहरण: हेडलाइन समानता तुलना

from scipy.spatial import distance
import numpy as np

search_text = "computer"
search_embedding = create_embeddings(search_text)[0]
distances = []
for article in articles:
dist = distance.cosine(search_embedding, article["embedding"])
distances.append(dist)
min_dist_ind = np.argmin(distances)
print(articles[min_dist_ind]['headline'])
Tech Company Launches Innovative Product to Improve Online Accessibility
OpenAI API के साथ Embeddings परिचय

अभ्यास करते हैं!

OpenAI API के साथ Embeddings परिचय

Preparing Video For Download...