0Pricing
AI Agents · Ders

Getirme için Kosinüs Benzerliği

Kosinüs benzerliği iki vektör arasındaki açıyı ölçer; anlamsal aramadaki standart uzaklık ölçüsüdür.

Getirme için Kosinüs Benzerliği, CoddyKit'te ücretsiz bir AI Agents dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, AI Agents öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. AI Agents kursu toplamda 4 dersten oluşur.

Bu dersin bazı bölümleri henüz çevrilmemiş olup İngilizce olarak gösterilmektedir.

Benzerliği Ölçme

İki vektör ne kadar yakın? Yaygın üç uzaklık ölçütü:

  • Kosinüs benzerliği — vektörler arasındaki açı
  • Noktasal çarpım — izdüşüm
  • Öklid (L2) uzaklığı — doğrusal mesafe

Metin gömmeleri için varsayılan seçenek kosinüstür.

Kosinüs Benzerliği Formülü

A ve B vektörleri için:

cos(A, B) = (A . B) / (|A| * |B|)

Sonuç -1 ile 1 arasındadır:

  • 1 = aynı yön
  • 0 = dik (ilişkisiz)
  • -1 = zıt yön

NumPy ile Python'da

Doğrudan uygulama:

import numpy as np

def cosine_similarity(a, b):
    a = np.array(a)
    b = np.array(b)
    return np.dot(a, b) / (np.linalg.norm(a) * np.linalg.norm(b))

print(cosine_similarity(vec_apple, vec_orange))   # high
print(cosine_similarity(vec_apple, vec_car))      # low

Önceden Normalize Edilmiş Vektörler

Gömme vektörleriniz zaten normalize edilmişse (OpenAI tarafından üretilenler öyledir), kosinüs = noktasal çarpım olur ve bölme işlemini atlarsınız:

def cosine_normalized(a, b):
    return np.dot(a, b)   # faster

En İyi K Sonucun Getirilmesi

Bir sorguya en çok benzeyen K belgeyi bulmak için her belgeyle benzerliği hesaplayıp sıralayın:

def topk(query_vec, doc_vecs, k=5):
    scores = [(np.dot(query_vec, v), i) for i, v in enumerate(doc_vecs)]
    scores.sort(reverse=True)
    return scores[:k]

Ölçeklendirme

Basit en iyi K yaklaşımı, sorgu başına O(N) maliyetlidir — 10 bin belge için uygundur, ancak 10 milyon belgede yavaştır. Büyük derlemler için yaklaşık en yakın komşu (ANN) dizinleri kullanın: HNSW, IVF, FAISS.

Neden Öklidyen Değil?

L2 uzaklığı, vektörün LENGTH değerini anlamlı kabul eder. Gömme vektörlerinde yön, büyüklükten daha önemlidir — kosinüs bu yüzden daha iyi sonuç verir.

Normalize edilmiş vektörlerde L2 ve kosinüs aynı sıralamayı verir; bu nedenle sonuç değişmez.

Noktasal Çarpım ve Kosinüs

Vektörler zaten normalize edilmişse noktasal çarpım = kosinüs olur ve daha hızlıdır (bölme işlemi gerekmez). Üretim sistemlerinin çoğu, normalize edilmiş vektörler üzerinde noktasal çarpım kullanır.

A Tiny End-to-End Retrieval

docs = ['Python is a programming language', 'Pizza is Italian food', 'The Eiffel Tower is in Paris']
doc_vecs = [embed(d) for d in docs]

query_vec = embed('What is Python?')
scores = [(cosine_similarity(query_vec, v), d) for v, d in zip(doc_vecs, docs)]
scores.sort(reverse=True)
for s, d in scores:
    print(f'{s:.3f}  {d}')
# 0.83  Python is a programming language
# 0.45  Pizza is Italian food
# 0.41  The Eiffel Tower is in Paris

Hibrit Getirme

Her iki yaklaşımın da avantajlarından yararlanmak için kosinüs benzerliğini anahtar sözcük aramasıyla (BM25) birleştirin — anlamsal eşleşme + tam eşleşme. Üretim sistemlerinin çoğu günümüzde hibrit getirme kullanır.

Eşik Tabanlı Filtreleme

LLM'ye ilgisiz bağlam göndermemek için benzerlik eşiğinin altındaki sonuçları çıkarın:

results = [r for r in retrieved if r.score > 0.7]

Kosinüs Aralığı

Kosinüs benzerliği değerlerinin aralığı nedir?

Özet

Kosinüs benzerliği, gömme vektörü getirme işlemlerinde kullanılan standart ölçüttür. Üretim ölçeğinde çalışmak için bunu hibrit arama ve ANN ile birleştirin.

Sıkça Sorulan Sorular

“Getirme için Kosinüs Benzerliği” dersi ücretsiz mi?

Evet — “Getirme için Kosinüs Benzerliği” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve AI Agents kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. AI Agents kursu toplamda 4 dersten oluşur.

“Getirme için Kosinüs Benzerliği” dersinde ne öğreneceğim?

Kosinüs benzerliği iki vektör arasındaki açıyı ölçer; anlamsal aramadaki standart uzaklık ölçüsüdür. AI Agents ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

AI Agents öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te AI Agents, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Getirme için Kosinüs Benzerliği” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu AI Agents dersinde kod yazıp çalıştırabilir miyim?

Evet. Her AI Agents dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Gömüntüler Nedir (Vektör Gösterimleri)
  2. text-embedding-3 ile Gömüntü Üretme
  3. Getirme için Kosinüs Benzerliği
  4. Gömüntü Modellerini Karşılaştırma (OpenAI ve Cohere ve OSS)
← AI Agents Sayfasına Dön