Ana içeriğe geç

Vektör Veritabanı

Genel Bakış

Vektör veritabanı, bilgi tabanlarınızın indekslendiği ve RAG ile semantik önbelleğin benzerlik araması yaptığı depodur.

bilgi

Embedding ve vektör kavramlarının temel tanımı için Yapay Zeka Temel Kavramları sayfasına bakabilirsiniz.

Desteklenen Arka Uçlar

Apinizer üç değiştirilebilir vektör veritabanı arka ucunu destekler; dağıtımınıza en uygun olanı seçebilirsiniz:

Arka UçUygun Olduğu Durum
PostgreSQL (pgvector)Zaten bir PostgreSQL altyapınız varsa, ek bir bileşen çalıştırmadan aynı veritabanını genişletmek isterseniz
QdrantÖzel/bağımsız bir vektör veritabanı arıyorsanız
RedisZaten bir Redis altyapınız varsa ve düşük gecikmeli arama istiyorsanız

Üçü de aynı işlevi görür — hangisini seçtiğiniz, RAG veya semantik önbelleğin davranışını değiştirmez, yalnızca altyapı tercihinizi yansıtır.

not

Veritabanı Tipi listesinde Weaviate, Milvus, Chroma, Pinecone ve Diğer gibi ek seçenekler de görünür. Bunlar şimdilik yalnızca katalogda yer alır; listede kilit simgesiyle işaretlenmiş ve seçilemez durumdadır çünkü çalışma zamanında henüz desteklenmezler.

Hazır Şablonlar

Kurulumla birlikte listede iki hazır şablon gelir: PgVector (Local) ve Qdrant (Local). Bunlar çalışan bağlantılar değil, doldurmanız için hazırlanmış iskeletlerdir — adresleri localhost:5432 / localhost:6333 gibi örnek değerlerdir.

Bu nedenle hazır şablonlar kapalı (disabled) gelir. Açık bırakılsalardı deploy ve sağlık kontrolü yolları var olmayan bir adrese bağlanmaya çalışırdı. Kullanım şekli şablonu klonlayıp gerçek adres ve kimlik bilgilerini girmek, sonra klonu etkinleştirmektir; şablonun kendisi kapalı kalır.

not

Hazır şablonlar kurulum tarafından yönetilir ve listede sistem kaydı olarak işaretlidir. Yükseltmelerde içerikleri tazelenebilir, bu yüzden doğrudan üzerlerinde çalışmak yerine klonlamak gerekir.

Bağlantı Oluşturma

Bağlantı formu, seçtiğiniz veritabanı tipine göre şekil değiştirir — her arka uç kendi bağlantı bilgilerini (ör. pgvector için JDBC bilgileri, Redis için bağlantı URI'si) ister; ortak alanlar (koleksiyon adı, zaman aşımları, benzerlik ayarları) her tipte aynı kalır.

Vector DB Sayfasına Gidin

AI GatewayRAG sayfasının Vector Veritabanları tab'ına gidin ve Yeni'ye tıklayın.

Ad ve Veritabanı Tipini Belirleyin

Bağlantıya bir ad verin ve Veritabanı Tipi listesinden PostgreSQL (pgvector), Qdrant veya Redis'i seçin. Seçtiğiniz tipe göre formun geri kalanı otomatik şekillenir; sayfanın üstünde bağlantının hangi ailede (JDBC/HTTP/Redis) olduğunu gösteren bir etiket görünür.

Bağlantı Bilgilerini Girin

Görünen alanlar seçtiğiniz veritabanı tipine göre değişir:

  • PostgreSQL (pgvector)jdbc:postgresql://host:5432/veritabani biçiminde bir JDBC URL, veritabanı kullanıcı adı ve şifresi istenir.
  • Qdrant — bir uç nokta URL'i ve bir kimlik doğrulama şeması istenir; şemaya göre ek alanlar (auth header adı, API anahtarı, API sırrı) açılır (aşağıdaki tabloya bakın).
  • Redisredis://host:6379 biçiminde bir Redis URI'si istenir; ACL kullanıcı adı ve şifre isteğe bağlıdır.

Her ailede ortak olarak Varsayılan Koleksiyon Adı ile Bağlantı Zaman Aşımı / İstek Zaman Aşımı (ms) alanları da bulunur.

Şifre, API anahtarı ve API sırrı her zaman şifreli saklanır. Mevcut bir bağlantıyı düzenlerken bu alanlar boş görünür; boş bırakırsanız önceki değer korunur (alanın üzerinde "Konfigüre" ibaresi bunu hatırlatır).

Gelişmiş Ayarları Gözden Geçirin

Mesafe Metriği (Kosinüs, Öklid veya Nokta Çarpımı) benzerlik aramasında kullanılan hesaplamayı belirler ve seçtiğiniz veritabanı tipine göre varsayılan olarak önerilir; gerekirse değiştirebilirsiniz. Embedding Boyutu ve Maksimum Batch Boyutu alanlarını da aynı şekilde referans amaçlı doldurabilirsiniz.

PostgreSQL (pgvector) seçtiyseniz, ayrıca isteğe bağlı bir Bağlantı Havuzu bölümü açılır (minimum boşta bağlantı, maksimum havuz boyutu, havuz zaman aşımları); boş bırakılan alanlar için Apinizer'ın dahili varsayılanları geçerli olur.

Bağlantıyı Test Edin ve Kaydedin

Formun üstündeki ortam seçiciden bir ortam seçin — Bağlantıyı Test Et butonu bir ortam seçilmeden etkinleşmez — ve butona tıklayarak bağlantıyı o ortamdan doğrulayın. Sorun yoksa Kaydet ve Yükle'ye tıklayın; bağlantı kaydedilir ve tüm yayınlanmış ortamlara dağıtılır (üstteki ortam seçici yalnızca testi çalıştırmak içindir, dağıtım hedefini belirlemez).

Kaydet ve Yükle bağlantıyı doğrulamaz. Bu adım yalnızca yapılandırmayı saklar ve worker'lara dağıtır; adres, kullanıcı adı, parola veya veritabanı adı yanlış olsa bile başarılı döner. Bu, klasik Bağlantı Ayarları → JDBC davranışının aynısıdır ve yarım kalmış bir yapılandırmayı kaydedip sonra tamamlamanıza olanak tanır. Bağlantının gerçekten çalışıp çalışmadığını yalnızca Bağlantıyı Test Et söyler — kaydetmeden önce onu çalıştırın.

Bağlantı, ilk kullanıldığı anda (RAG, semantik önbellek veya konu koruması bir sorgu çalıştırdığında) kurulur. O anda kurulamazsa istek, o veritabanı hiç yüklenmemiş gibi ele alınır: ilgili politika kendi tanımlı davranışına (atlama ya da engelleme) düşer ve ham veritabanı hatası istek yanıtına yansımaz.

Hatalı yapılandırmayla yeniden yükleme

Yeniden yükleme her zaman son kaydedilen yapılandırmayı yürürlüğe koyar ve o an açık olan bağlantıyı kapatır. Çalışan bir bağlantının üzerine hatalı bir yapılandırma yüklerseniz çalışan bağlantı korunmaz; yeni yapılandırma yürürlüğe girer ve sonraki kullanımlar başarısız olur. Doğru bilgileri kaydedip yeniden yüklediğinizde bağlantı kendiliğinden düzelir.

Kimlik Doğrulama Şemasına Göre Görünen Alanlar (Qdrant ve benzeri HTTP tabanlı tipler)

Kimlik Doğrulama ŞemasıGörünen Ek Alanlar
Yok(ek alan yok)
Bearer TokenAuth Header Adı, API Anahtarı
API Key HeaderAuth Header Adı, API Anahtarı
Basic AuthAPI Anahtarı, API Sırrı
ÖzelAuth Header Adı, API Anahtarı, API Sırrı

Embedding Üretimi

Metinlerin vektöre çevrilmesi (embedding üretimi), tek bir yapılandırılabilir sağlayıcı üzerinden yapılır — örneğin OpenAI, Voyage veya Ollama. Bilgi tabanına yüklenen her doküman parçası ve RAG/semantik önbellek tarafındaki her sorgu, aynı embedding sağlayıcısından geçer.

not

Farklı embedding sağlayıcıları farklı boyutta vektör üretir. Bir vektör veritabanı bağlantısı kurulduktan sonra embedding sağlayıcısını değiştirmek, mevcut verilerin yeniden indekslenmesini gerektirebilir.

Çok-Kiracılı İzolasyon

Aynı vektör veritabanı birden fazla proje tarafından paylaşılsa bile, benzerlik araması proje sınırını asla aşmaz — bir projenin sorgusu yalnızca kendi verisiyle eşleştirilir, başka bir projenin içeriği sonuçlara karışmaz.

Embedding Desteği Doğrulaması

Bir isteğin embedding üretimi gerektiren bir uç noktaya (RAG, semantik önbellek, embedding uç noktası) yönlendirilmesinden önce, Apinizer seçilen sağlayıcının embedding üretimini gerçekten desteklediğini doğrular. Desteklemeyen bir sağlayıcıya embedding isteği yönlendirilmez.

Vektör veritabanı bağlantıları APIops REST API ile de yönetilebilir; bkz. API Referansı: Vector DBs.

Bağlantı Silme

Kullanımda olan bir vektör veritabanı bağlantısı silinemez. Bağlantıya işaret eden bir referans varsa silme isteği reddedilir ve hata mesajı referansların nerede olduğunu (API Proxy adı ya da global politika adı) tek tek listeler.

Bunun nedeni, vektör veritabanının başvuru-tipli bir varlık olmasıdır: politika belgesine kopyalanmaz, çalışma anında kimliğiyle çözülür. Bu kontrol olmasaydı silme işlemi RAG ve semantik önbellek politikalarını kırık referansla bırakır ve canlı geçit bir sonraki istekte hata verirdi.

Tarama dört yerde birden yapılır — API Proxy, Proxy Grubu, Politika Grubu ve bağımsız (global) politikalar. Kapsanan referans yolu, RAG Enjeksiyonu ve Semantik Önbellek politikalarının vektör veritabanı alanıdır.

Bağlantıyı silmek için önce bu referansları kaldırın ya da başka bir bağlantıya yönlendirin. Aynı kural APIops üzerinden yapılan silme için de geçerlidir: DELETE /apiops/projects/{projectName}/vector-dbs/{vectorDbName}/ kullanımda olan bir bağlantı için 400 Bad Request döner.

Bu kural, LLM sağlayıcı bağlantısındaki aynı korumanın ikizidir; bkz. LLM Sağlayıcıları ve Bağlantılar.

Sonraki Adımlar