Kemiripan teks

Pengantar Embeddings dengan OpenAI API

Emmanuel Pire

Senior Software Engineer, DataCamp

Ringkasan...

 

  • Teks yang mirip secara semantik ditempatkan lebih dekat di ruang vektor
  • Mengukur jarak = mengukur kemiripan
  • Memungkinkan aplikasi embedding:
    • Pencarian semantik
    • Rekomendasi
    • Klasifikasi

 

Plot ruang vektor 2D yang menunjukkan ulasan dengan sentimen dan topik yang sama dipetakan lebih berdekatan di ruang vektor.

Pengantar Embeddings dengan OpenAI API

Mengukur kemiripan

 

Jarak kosinus

from scipy.spatial import distance

distance.cosine([0, 1], [1, 0])
1.0
  • Berkisar dari 0 hingga 2
  • Angka lebih kecil = kemiripan lebih tinggi

 

Dua vektor dengan garis lurus di antaranya.

Pengantar Embeddings dengan OpenAI API

Contoh: Membandingkan kemiripan judul

Daftar dictionary yang memuat judul dan embedding-nya.

Pengantar Embeddings dengan OpenAI API

Contoh: Membandingkan kemiripan judul

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]
Pengantar Embeddings dengan OpenAI API

Contoh: Membandingkan kemiripan judul

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'])
Perusahaan Teknologi Luncurkan Produk Inovatif untuk Meningkatkan Aksesibilitas Online
Pengantar Embeddings dengan OpenAI API

Ayo berlatih!

Pengantar Embeddings dengan OpenAI API

Preparing Video For Download...