Vector Databases

Geçen hafta paylaştığım Data Teknolojilerinin geleceği ile ilgili yazıda vector databases kavramından bahsetmiştim. Bugün bu kavrama daha yakından bakarak, vector database nedir, neden ihtiyacımız var gibi sorulara yanıt vermeye çalışacağım.

Yapay zeka getirdiği yenilik ve kolaylıkların yanında yeni teknolojilerin de altyapılarımızda kullanılmasına sebep oluyor. Çalışılan veri kümelerinin büyüklüğü düşünüldüğünde LLM, Gen AI ve semantic search uygulamaları için efektif veri işleme ihtiyacı kritik öneme sahiptir.

Vector Embedding

AI uygulamalarında vector’ler veriyi temsil etmek için kullanılır. Makine öğreniminde modeller, genellikle verileri vektörler olarak işler ve bu vektörler üzerinde işlem yapar. Örnek verecek olursak, bir NLP modeli, bir metin belgesini bir vector ile temsil eder ve bu vector üzerinde işlem yaparak belgeyi çevirebilir, sınıflandırabilir. Bu örnekte vector belgenin içeriğini bir dizi sayı olarak ifade eder. Yapay zeka projelerinde verinin etkili şekilde temsili vectorler sayesinde gerçekleştirilir. Doğru temsiller ise bir modelin daha doğru sonuçlar üretmesini sağlar.

ML algoritmaları sayılarla çalışır. Veri setimizin sayısal olmadığı durumlarda, yani elimizdeki veri bir text dosyası, bir image vb ise bu algoritmaların verimizi anlayabilmesi için vector embeddingi kullanılırız. Örneğin, kelime gömmesi, her kelimeyi bir vektörle temsil ederek benzer anlamlı kelimeleri yakın konumlandırır. Vector embedding feature engineering adı verilen ve ilgili alanda uzman kişiler tarafından oluşturulabilir. Bu yöntem pahalı ve gerçekleştirilmesi zor bir yol olduğundan, objelerin vector’e dönüştürülmesi için farklı modeller eğitilir. Örneğin GLove, BERT ve Word2Vec gibi modeller text datasının vector olarak ifade edilmesini sağlar.

vector embedding nedir

Vector Databases

Vector database’ler ise vector’lerin depolanması, sorgulanması ve analiz edilmesini sağlar. Büyük ölçekli veri üzerinde arama, anlamsal sorgular yapma ve veriler arasındaki ilişkileri ortaya çıkarmak gibi amaçlarla sıklıkla kullanılır. Özellikle NLP, görüntü işleme, ses işleme, recommendation uygulamalarının performanslı şekilde hayata geçirilmesini sağlarlar. Vector database’lerin temel özelliği ise vector datası üzerinde hızlı şekilde sorgulama yapabilmek amacı ile özel olarak geliştirilmiş olmalarıdır.

Vector databases
Source : Medium

Open source vector database’lere örnek olarak, qdrant, chroma, vespa
Enterprise çözümlere örnek olarak, Pinecone, Weaviate
Native bir vector database olmamasına rağmen support eden ürünlere ise, Postgresql, Elasticsearch, Singlestore örnek verilebilir.

Db-engines.com sitesinde yer alan listeyi aşağıdaki görselden inceleyebilirsiniz. Sol üstte yer alan chechkbox’ı işaretlediğinizde vector data desteği olan tüm veritabanlarının listesine ulaşabilirsiniz.

Vector databases

AI projelerinin popülerliği ve geleceğimizdeki yeri aşikar ancak, Vector database’lerin geleneksel veritabanlarında olduğu gibi çok farklı iş yükü ve senaryo için kullanılan veritabanları olmadıklarını belirtmek gerekir. Örneğin PostgreSQL veya Elasticsearch alanında tecrübe sahibi iseniz, vector datasını bu platformlarda yönetebileceğiniz süreçleri öğrenmek daha kolay ve faydalı olabilir.

İyi Çalışmalar

Veysel YUKSEL
Latest posts by Veysel YUKSEL (see all)

Veysel YUKSEL

RDBMS ve NoSQL veri tabanı yönetimi ve Big Data teknolojileri.

You may also like...

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir