{"id":39492,"date":"2026-02-22T16:30:38","date_gmt":"2026-02-22T13:30:38","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/"},"modified":"2026-02-22T16:30:38","modified_gmt":"2026-02-22T13:30:38","slug":"chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/","title":{"rendered":"ChromaDB ile Semantik Arama i\u00e7in Vekt\u00f6r Veritabanlar\u0131ndan Yararlanma: Yeni Ba\u015flayanlar \u0130\u00e7in K\u0131lavuz"},"content":{"rendered":"<h2>ChromaDB ile Semantik Arama i\u00e7in Vekt\u00f6r Veritabanlar\u0131ndan Yararlanma: Yeni Ba\u015flayanlar \u0130\u00e7in K\u0131lavuz<\/h2>\n<p>G\u00fcn\u00fcm\u00fcz bilgi \u00e7a\u011f\u0131nda, geleneksel anahtar kelime tabanl\u0131 aramalar genellikle yetersiz kalmaktad\u0131r. Kullan\u0131c\u0131lar, arad\u0131klar\u0131 \u015feyin tam olarak ne oldu\u011funu anlamayan sistemler yerine, niyetlerini ve ba\u011flam\u0131 kavrayan daha ak\u0131ll\u0131 arama motorlar\u0131 beklemektedir. \u0130\u015fte bu noktada semantik arama ve vekt\u00f6r veritabanlar\u0131 devreye girer. Bu makalede, semantik araman\u0131n temel prensiplerini, vekt\u00f6r veritabanlar\u0131n\u0131n \u00f6nemini ve \u00f6zellikle yeni ba\u015flayanlar i\u00e7in kullan\u0131m\u0131 kolay bir \u00e7\u00f6z\u00fcm olan ChromaDB ile bu teknolojiden nas\u0131l yararlan\u0131laca\u011f\u0131n\u0131 detayl\u0131 bir \u015fekilde inceleyece\u011fiz.<\/p>\n<h3>Vekt\u00f6r Veritabanlar\u0131 ve Semantik Arama Nedir?<\/h3>\n<p>Bilgiye eri\u015fim \u015feklimizi k\u00f6kten de\u011fi\u015ftiren semantik arama, anahtar kelime e\u015fle\u015fmesinin \u00f6tesine ge\u00e7erek metinlerin anlam\u0131n\u0131 kavramay\u0131 hedefler. Bu sayede, kullan\u0131c\u0131lar\u0131n niyetlerine daha uygun ve alakal\u0131 sonu\u00e7lar sunulabilir. Bu b\u00f6l\u00fcm, semantik araman\u0131n ne oldu\u011funu, temelini olu\u015fturan vekt\u00f6r g\u00f6mme kavram\u0131n\u0131 ve vekt\u00f6r veritabanlar\u0131n\u0131n neden bu kadar kritik oldu\u011funu a\u00e7\u0131klayacakt\u0131r.<\/p>\n<h4>Semantik Arama Nedir?<\/h4>\n<p>Semantik arama, sorgu ile belgeler aras\u0131ndaki anlamsal ili\u015fkiyi bulmaya odaklanan bir arama t\u00fcr\u00fcd\u00fcr. Geleneksel arama motorlar\u0131 &#8220;k\u0131rm\u0131z\u0131 araba&#8221; kelimelerini arad\u0131\u011f\u0131n\u0131zda tam olarak bu kelimeleri i\u00e7eren belgeleri listelerken, semantik arama &#8220;k\u0131rm\u0131z\u0131 otomobil&#8221; veya &#8220;al renkli vas\u0131ta&#8221; gibi anlamsal olarak benzer ifadeleri de anlayabilir ve ilgili sonu\u00e7lar\u0131 getirebilir. Bu, \u00f6zellikle do\u011fal dil i\u015fleme (NLP) uygulamalar\u0131nda, soru-cevap sistemlerinde ve tavsiye motorlar\u0131nda b\u00fcy\u00fck \u00f6nem ta\u015f\u0131r.<\/p>\n<h4>Vekt\u00f6r G\u00f6mme (Embeddings) Kavram\u0131<\/h4>\n<p>Semantik araman\u0131n kalbinde &#8220;vekt\u00f6r g\u00f6mme&#8221; (embeddings) ad\u0131 verilen bir teknik yatar. Vekt\u00f6r g\u00f6mme, metin, resim, ses gibi karma\u015f\u0131k verileri, y\u00fcksek boyutlu uzayda say\u0131sal vekt\u00f6rlere d\u00f6n\u00fc\u015ft\u00fcrme i\u015flemidir. Bu vekt\u00f6rler, verinin anlamsal \u00f6zelliklerini korur; yani, anlamsal olarak birbirine yak\u0131n olan \u00f6\u011feler, vekt\u00f6r uzay\u0131nda da birbirine yak\u0131n konumlan\u0131r. \u00d6rne\u011fin, &#8220;kedi&#8221; ve &#8220;k\u00f6pek&#8221; kelimelerinin vekt\u00f6rleri, &#8220;masa&#8221; kelimesinin vekt\u00f6r\u00fcnden daha yak\u0131n olacakt\u0131r. Bu d\u00f6n\u00fc\u015f\u00fcm genellikle derin \u00f6\u011frenme modelleri (\u00f6rne\u011fin, BERT, Sentence-BERT) arac\u0131l\u0131\u011f\u0131yla ger\u00e7ekle\u015ftirilir.<\/p>\n<h4>Vekt\u00f6r Veritabanlar\u0131 Neden \u00d6nemli?<\/h4>\n<p>Milyonlarca veya milyarlarca vekt\u00f6r aras\u0131nda h\u0131zl\u0131 ve verimli bir \u015fekilde benzerlik aramas\u0131 yapmak, geleneksel veritabanlar\u0131 i\u00e7in zorlu bir g\u00f6revdir. \u0130\u015fte burada vekt\u00f6r veritabanlar\u0131 devreye girer. Vekt\u00f6r veritabanlar\u0131, y\u00fcksek boyutlu vekt\u00f6rleri depolamak, indekslemek ve bunlar \u00fczerinde h\u0131zl\u0131 benzerlik aramalar\u0131 (Approximate Nearest Neighbor &#8211; ANN aramalar\u0131) yapmak i\u00e7in \u00f6zel olarak tasarlanm\u0131\u015ft\u0131r. Bu sayede, devasa veri setlerinde bile saniyeler i\u00e7inde anlamsal olarak en alakal\u0131 sonu\u00e7lar bulunabilir. ChromaDB de bu alandaki pop\u00fcler ve kullan\u0131m\u0131 kolay \u00e7\u00f6z\u00fcmlerden biridir.<\/p>\n<h3>ChromaDB&#8217;ye Yak\u0131ndan Bak\u0131\u015f<\/h3>\n<p>ChromaDB, yapay zeka uygulamalar\u0131 i\u00e7in tasarlanm\u0131\u015f a\u00e7\u0131k kaynakl\u0131, hafif ve kullan\u0131m\u0131 kolay bir vekt\u00f6r veritaban\u0131d\u0131r. \u00d6zellikle prototipleme ve k\u00fc\u00e7\u00fck\/orta \u00f6l\u00e7ekli projeler i\u00e7in ideal bir \u00e7\u00f6z\u00fcm sunar. Bu b\u00f6l\u00fcmde ChromaDB&#8217;nin ne oldu\u011funu, temel \u00f6zelliklerini ve hangi alanlarda kullan\u0131labilece\u011fini inceleyece\u011fiz.<\/p>\n<h4>ChromaDB Nedir?<\/h4>\n<p>ChromaDB, Python ekosistemine derinlemesine entegre olmu\u015f, geli\u015ftiricilerin vekt\u00f6r g\u00f6mmelerini depolamas\u0131n\u0131, sorgulamas\u0131n\u0131 ve y\u00f6netmesini sa\u011flayan bir ara\u00e7t\u0131r. G\u00f6mme olu\u015fturma (embedding generation) s\u00fcrecini de kolayla\u015ft\u0131rarak, kullan\u0131c\u0131lar\u0131n farkl\u0131 modellerle \u00e7al\u0131\u015fmas\u0131na olanak tan\u0131r. Hem kal\u0131c\u0131 (persistent) depolama hem de bellek i\u00e7i (in-memory) kullan\u0131m se\u00e7enekleri sunar.<\/p>\n<h4>ChromaDB&#8217;nin Temel \u00d6zellikleri<\/h4>\n<ul>\n<li><b>Kolay Kurulum ve Kullan\u0131m:<\/b> Tek bir pip komutu ile kurulabilir ve sezgisel bir API&#8217;ye sahiptir.<\/li>\n<li><b>G\u00f6mme Olu\u015fturma Entegrasyonu:<\/b> Yerle\u015fik embedding modelleri (\u00f6rne\u011fin, Sentence Transformers) ile kolayca entegre olabilir veya harici modellerle \u00e7al\u0131\u015fabilir.<\/li>\n<li><b>Metadata Deste\u011fi:<\/b> Vekt\u00f6rlerle birlikte ek bilgileri (metadata) depolayarak daha zengin sorgular yap\u0131lmas\u0131na olanak tan\u0131r.<\/li>\n<li><b>Filtreleme Yetenekleri:<\/b> Metadata \u00fczerinden geli\u015fmi\u015f filtreleme se\u00e7enekleri sunar.<\/li>\n<li><b>Hafif ve Esnek:<\/b> Hem bellek i\u00e7i hem de disk tabanl\u0131 depolama se\u00e7enekleriyle farkl\u0131 ihtiya\u00e7lara uyum sa\u011flar.<\/li>\n<li><b>A\u00e7\u0131k Kaynak:<\/b> Topluluk taraf\u0131ndan desteklenir ve s\u00fcrekli geli\u015ftirilir.<\/li>\n<\/ul>\n<h4>ChromaDB&#8217;nin Kullan\u0131m Alanlar\u0131<\/h4>\n<p>ChromaDB&#8217;nin esnek yap\u0131s\u0131, onu \u00e7e\u015fitli yapay zeka ve veri bilimi projeleri i\u00e7in uygun k\u0131lar:<\/p>\n<ul>\n<li><b>Semantik Arama Motorlar\u0131:<\/b> Dok\u00fcmanlar, \u00fcr\u00fcnler veya blog yaz\u0131lar\u0131 aras\u0131nda anlamsal arama yapmak.<\/li>\n<li><b>Soru-Cevap Sistemleri (Q&#038;A):<\/b> Kullan\u0131c\u0131 sorular\u0131na en alakal\u0131 cevaplar\u0131 bulmak.<\/li>\n<li><b>Tavsiye Sistemleri:<\/b> Kullan\u0131c\u0131lar\u0131n ilgi alanlar\u0131na g\u00f6re i\u00e7erik veya \u00fcr\u00fcn \u00f6nermek.<\/li>\n<li><b>Anomali Tespiti:<\/b> Benzerlikten sapmalar\u0131 tespit etmek.<\/li>\n<li><b>Veri Tekille\u015ftirme:<\/b> Yinelenen veya \u00e7ok benzer verileri bulmak.<\/li>\n<li><b>RAG (Retrieval Augmented Generation) Sistemleri:<\/b> B\u00fcy\u00fck Dil Modellerine (LLM) d\u0131\u015f bilgi sa\u011flamak.<\/li>\n<\/ul>\n<h3>ChromaDB Kurulumu ve Temel Kavramlar<\/h3>\n<p>ChromaDB ile \u00e7al\u0131\u015fmaya ba\u015flamak olduk\u00e7a basittir. Bu b\u00f6l\u00fcmde, Python ortam\u0131n\u0131zda ChromaDB&#8217;yi nas\u0131l kuraca\u011f\u0131n\u0131z\u0131 ve platformun temel yap\u0131 ta\u015flar\u0131 olan koleksiyonlar, belgeler ve metadata kavramlar\u0131n\u0131 a\u00e7\u0131klayaca\u011f\u0131z.<\/p>\n<h4>Python ile ChromaDB Kurulumu<\/h4>\n<p>ChromaDB&#8217;yi kurmak i\u00e7in Python&#8217;\u0131n pip paket y\u00f6neticisini kullanabilirsiniz. Genellikle tek bir komut yeterlidir:<\/p>\n<pre><code class=\"language-bash\">pip install chromadb<\/pre>\n<p><\/code><\/p>\n<p>E\u011fer g\u00f6mme modellerini de yerel olarak \u00e7al\u0131\u015ft\u0131rmak istiyorsan\u0131z (\u00f6rne\u011fin Sentence Transformers i\u00e7in), ilgili k\u00fct\u00fcphaneleri de kurman\u0131z gerekebilir:<\/p>\n<pre><code class=\"language-bash\">pip install sentence-transformers<\/pre>\n<p><\/code><\/p>\n<p>Kurulum tamamland\u0131ktan sonra, ChromaDB istemcisini Python kodunuzda i\u00e7e aktararak kullanmaya ba\u015flayabilirsiniz.<\/p>\n<h4>Koleksiyonlar (Collections)<\/h4>\n<p>ChromaDB'de veriler, \"koleksiyonlar\" halinde d\u00fczenlenir. Bir koleksiyon, belirli bir t\u00fcrdeki belgelerin ve bunlara ait vekt\u00f6r g\u00f6mmelerinin mant\u0131ksal bir grubudur. \u00d6rne\u011fin, bir e-ticaret uygulamas\u0131nda \"\u00fcr\u00fcnler\" i\u00e7in bir koleksiyon, \"m\u00fc\u015fteri yorumlar\u0131\" i\u00e7in ba\u015fka bir koleksiyon olu\u015fturabilirsiniz. Her koleksiyonun kendine \u00f6zg\u00fc bir ad\u0131 vard\u0131r ve ba\u011f\u0131ms\u0131z olarak y\u00f6netilir.<\/p>\n<h4>Belgeler (Documents) ve Metadata<\/h4>\n<p>Her koleksiyon, bir veya daha fazla \"belge\" i\u00e7erir. Bir belge, semantik arama yapmak istedi\u011finiz metin par\u00e7as\u0131d\u0131r (\u00f6rne\u011fin, bir \u00fcr\u00fcn a\u00e7\u0131klamas\u0131, bir makale paragraf\u0131, bir yorum). ChromaDB, bu belgeleri otomatik olarak vekt\u00f6rlere d\u00f6n\u00fc\u015ft\u00fcr\u00fcr ve saklar.<\/p>\n<p>\"Metadata\" ise, bir belgeyle ili\u015fkilendirilmi\u015f ek bilgilerdir. Bu bilgiler anahtar-de\u011fer \u00e7iftleri \u015feklinde depolan\u0131r ve arama sorgular\u0131n\u0131z\u0131 filtrelemek i\u00e7in kullan\u0131labilir. \u00d6rne\u011fin, bir \u00fcr\u00fcn belgesi i\u00e7in 'kategori', 'fiyat', 'marka' gibi metadata alanlar\u0131 ekleyebilirsiniz. Bu sayede, sadece belirli bir kategoriye ait \u00fcr\u00fcnler aras\u0131nda arama yapabilirsiniz.<\/p>\n<h3>Veri G\u00f6mme (Embedding) ve Koleksiyon Olu\u015fturma<\/h3>\n<p>ChromaDB'nin g\u00fcc\u00fc, metinleri anlaml\u0131 vekt\u00f6rlere d\u00f6n\u00fc\u015ft\u00fcrme ve bu vekt\u00f6rleri verimli bir \u015fekilde depolama yetene\u011finden gelir. Bu b\u00f6l\u00fcmde, uygun embedding modelini se\u00e7meyi, metinleri vekt\u00f6rlere d\u00f6n\u00fc\u015ft\u00fcrmeyi ve ChromaDB'de bir koleksiyon olu\u015fturup verileri nas\u0131l ekleyece\u011fimizi ad\u0131m ad\u0131m g\u00f6rece\u011fiz.<\/p>\n<h4>Embedding Modelleri Se\u00e7imi<\/h4>\n<p>Vekt\u00f6r g\u00f6mmeleri olu\u015fturmak i\u00e7in bir\u00e7ok farkl\u0131 model mevcuttur. Model se\u00e7imi, projenizin gereksinimlerine ve verinizin t\u00fcr\u00fcne ba\u011fl\u0131d\u0131r. Pop\u00fcler se\u00e7enekler aras\u0131nda \u015funlar bulunur:<\/p>\n<ul>\n<li><b>Sentence Transformers:<\/b> C\u00fcmle ve paragraf d\u00fczeyinde iyi performans g\u00f6steren, kullan\u0131m\u0131 kolay modeller sunar. Genellikle h\u0131zl\u0131 ve etkilidir.<\/li>\n<li><b>OpenAI Embeddings:<\/b> OpenAI API arac\u0131l\u0131\u011f\u0131yla eri\u015filebilen, y\u00fcksek kaliteli ve genel ama\u00e7l\u0131 g\u00f6mmeler sa\u011flar.<\/li>\n<li><b>Hugging Face Modelleri:<\/b> Geni\u015f bir model yelpazesi sunar, belirli g\u00f6revler i\u00e7in ince ayar yap\u0131lm\u0131\u015f modeller bulunabilir.<\/li>\n<\/ul>\n<p>ChromaDB, bu modellerle kolayca entegre olabilir. Ba\u015flang\u0131\u00e7 i\u00e7in, Sentence Transformers modelleri genellikle iyi bir denge sunar.<\/p>\n<h4>Metinleri Vekt\u00f6rlere D\u00f6n\u00fc\u015ft\u00fcrme<\/h4>\n<p>Se\u00e7ti\u011finiz embedding modeli, metin girdilerini al\u0131p say\u0131sal vekt\u00f6r \u00e7\u0131kt\u0131s\u0131 verir. Bu i\u015flem genellikle modelin <code>encode<\/code> metodu ile yap\u0131l\u0131r. ChromaDB, bu s\u00fcreci sizin i\u00e7in otomatikle\u015ftirir; siz sadece metinleri sa\u011flars\u0131n\u0131z, ChromaDB arka planda se\u00e7ti\u011finiz veya varsay\u0131lan embedding modelini kullanarak vekt\u00f6rleri olu\u015fturur.<\/p>\n<h4>ChromaDB'de Koleksiyon Olu\u015fturma ve Veri Ekleme<\/h4>\n<p>\u015eimdi, bir ChromaDB istemcisi olu\u015fturup bir koleksiyon tan\u0131mlayal\u0131m ve i\u00e7ine baz\u0131 \u00f6rnek veriler ekleyelim. Bu \u00f6rnekte, bellek i\u00e7i bir ChromaDB kullanaca\u011f\u0131z.<\/p>\n<pre><code class=\"language-python\">import chromadb\nfrom chromadb.utils import embedding_functions\n\n# 1. ChromaDB istemcisini ba\u015flatma (bellek i\u00e7i)\n# Kal\u0131c\u0131 depolama i\u00e7in: chromadb.PersistentClient(path=\"\/path\/to\/db\")\nclient = chromadb.Client()\n\n# 2. Embedding fonksiyonunu tan\u0131mlama\n# Varsay\u0131lan olarak 'all-MiniLM-L6-v2' kullan\u0131l\u0131r.\n# Farkl\u0131 bir model kullanmak i\u00e7in:\n# sentence_transformer_ef = embedding_functions.SentenceTransformerEmbeddingFunction(model_name=\"paraphrase-multilingual-MiniLM-L12-v2\")\n# collection = client.get_or_create_collection(name=\"makale_koleksiyonu\", embedding_function=sentence_transformer_ef)\n# E\u011fer bir embedding fonksiyonu belirtmezseniz, ChromaDB varsay\u0131lan\u0131 kullan\u0131r.\ncollection = client.get_or_create_collection(name=\"makale_koleksiyonu\")\n\n# 3. Eklenecek verileri haz\u0131rlama\ndocuments = [\n    \"ChromaDB, yapay zeka uygulamalar\u0131 i\u00e7in tasarlanm\u0131\u015f a\u00e7\u0131k kaynakl\u0131 bir vekt\u00f6r veritaban\u0131d\u0131r.\",\n    \"Semantik arama, anahtar kelime e\u015fle\u015fmesinin \u00f6tesine ge\u00e7erek metinlerin anlam\u0131n\u0131 kavrar.\",\n    \"Vekt\u00f6r g\u00f6mme, metinleri say\u0131sal vekt\u00f6rlere d\u00f6n\u00fc\u015ft\u00fcrme i\u015flemidir.\",\n    \"Python, makine \u00f6\u011frenimi ve veri bilimi projelerinde yayg\u0131n olarak kullan\u0131l\u0131r.\",\n    \"Do\u011fal dil i\u015fleme (NLP), insan dilini bilgisayarlar\u0131n anlamas\u0131n\u0131 sa\u011flar.\"\n]\nmetadatas = [\n    {\"kaynak\": \"ChromaDB Docs\", \"konu\": \"Veritaban\u0131\"},\n    {\"kaynak\": \"Makale\", \"konu\": \"Arama\"},\n    {\"kaynak\": \"E\u011fitim\", \"konu\": \"Embeddings\"},\n    {\"kaynak\": \"Programlama\", \"konu\": \"Python\"},\n    {\"kaynak\": \"AI\", \"konu\": \"NLP\"}\n]\nids = [f\"doc{i}\" for i in range(len(documents))]\n\n# 4. Koleksiyona belgeleri ekleme\ncollection.add(\n    documents=documents,\n    metadatas=metadatas,\n    ids=ids\n)\n\nprint(f\"Koleksiyonda {collection.count()} belge var.\")\n<\/pre>\n<p><\/code><\/p>\n<p>Yukar\u0131daki kod, bir ChromaDB istemcisi olu\u015fturur, \"makale_koleksiyonu\" ad\u0131nda bir koleksiyon yarat\u0131r ve be\u015f adet belgeyi ilgili metadata ve ID'lerle birlikte bu koleksiyona ekler. ChromaDB, bu metinleri otomatik olarak vekt\u00f6rlere d\u00f6n\u00fc\u015ft\u00fcr\u00fcp indeksleyecektir.<\/p>\n<h3>ChromaDB ile Semantik Arama Yapma<\/h3>\n<p>Verilerimizi ChromaDB'ye ekledikten sonra, art\u0131k semantik arama yeteneklerini kullanabiliriz. Bu b\u00f6l\u00fcm, benzerlik aramas\u0131n\u0131n nas\u0131l \u00e7al\u0131\u015ft\u0131\u011f\u0131n\u0131 ve ChromaDB API'si arac\u0131l\u0131\u011f\u0131yla nas\u0131l sorgu yapaca\u011f\u0131m\u0131z\u0131 g\u00f6sterecektir.<\/p>\n<h4>Benzerlik Arama (Similarity Search) Nas\u0131l \u00c7al\u0131\u015f\u0131r?<\/h4>\n<p>Semantik arama, temelde vekt\u00f6r uzay\u0131nda bir sorgu vekt\u00f6r\u00fcne en yak\u0131n olan belge vekt\u00f6rlerini bulma i\u015flemidir. Bir kullan\u0131c\u0131 bir sorgu girdi\u011finde (\u00f6rne\u011fin, \"Yapay zeka hakk\u0131nda bilgi\"), bu sorgu da ayn\u0131 embedding modeli kullan\u0131larak bir vekt\u00f6re d\u00f6n\u00fc\u015ft\u00fcr\u00fcl\u00fcr. Daha sonra, bu sorgu vekt\u00f6r\u00fc ile koleksiyondaki t\u00fcm belge vekt\u00f6rleri aras\u0131ndaki \"benzerlik\" \u00f6l\u00e7\u00fcl\u00fcr. En yayg\u0131n benzerlik \u00f6l\u00e7\u00fctleri kosin\u00fcs benzerli\u011fi veya \u00d6klid mesafesidir. Sonu\u00e7lar, benzerlik derecesine g\u00f6re s\u0131ralanarak kullan\u0131c\u0131ya sunulur.<\/p>\n<h4>ChromaDB ile Sorgulama<\/h4>\n<p>ChromaDB'de sorgulama yapmak i\u00e7in <code>query<\/code> metodunu kullan\u0131r\u0131z. Bu metod, bir veya daha fazla sorgu metni alabilir ve en benzer belgeleri d\u00f6nd\u00fcr\u00fcr.<\/p>\n<pre><code class=\"language-python\"># \u00d6nceki koddan client ve collection nesnelerinin tan\u0131ml\u0131 oldu\u011funu varsayal\u0131m.\n\n# 5. Semantik arama sorgusu yapma\nquery_text = \"Metinleri anlaml\u0131 hale getiren teknoloji nedir?\"\nresults = collection.query(\n    query_texts=[query_text],\n    n_results=2, # En benzer 2 sonucu getir\n    include=['documents', 'metadatas', 'distances'] # Hangi bilgileri istedi\u011fimizi belirtiyoruz\n)\n\nprint(\"\\nSemantik Arama Sonu\u00e7lar\u0131:\")\nfor i in range(len(results['documents'][0])):\n    doc = results['documents'][0][i]\n    meta = results['metadatas'][0][i]\n    dist = results['distances'][0][i]\n    print(f\"Belge: {doc}\")\n    print(f\"Metadata: {meta}\")\n    print(f\"Mesafe (Benzerlik): {dist:.4f}\")\n    print(\"-\" * 20)\n<\/pre>\n<p><\/code><\/p>\n<p>Yukar\u0131daki kod, \"Metinleri anlaml\u0131 hale getiren teknoloji nedir?\" sorgusunu kullanarak koleksiyondaki en benzer iki belgeyi bulur. Sonu\u00e7lar, belge metni, metadata ve sorgu vekt\u00f6r\u00fcne olan mesafe (benzerlik derecesi) ile birlikte gelir. Daha k\u00fc\u00e7\u00fck mesafe, daha y\u00fcksek benzerlik anlam\u0131na gelir.<\/p>\n<h4>Filtreleme ve Geli\u015fmi\u015f Sorgular<\/h4>\n<p>ChromaDB, metadata kullanarak sorgular\u0131 filtreleme yetene\u011fi sunar. Bu, belirli ko\u015fullar\u0131 kar\u015f\u0131layan belgeler aras\u0131nda arama yapman\u0131z\u0131 sa\u011flar. \u00d6rne\u011fin, sadece \"AI\" konusuyla ilgili belgeler aras\u0131nda arama yapmak isteyebilirsiniz:<\/p>\n<pre><code class=\"language-python\"># Sadece 'AI' konusuyla ilgili belgeler aras\u0131nda arama\nfiltered_results = collection.query(\n    query_texts=[\"Yapay zeka hakk\u0131nda bilgi\"],\n    n_results=1,\n    where={\"konu\": \"AI\"}, # Metadata filtresi\n    include=['documents', 'metadatas']\n)\n\nprint(\"\\nFiltrelenmi\u015f Arama Sonu\u00e7lar\u0131 (Konu: AI):\")\nif filtered_results['documents'][0]:\n    print(f\"Belge: {filtered_results['documents'][0][0]}\")\n    print(f\"Metadata: {filtered_results['metadatas'][0][0]}\")\nelse:\n    print(\"Filtreye uygun belge bulunamad\u0131.\")\n<\/pre>\n<p><\/code><\/p>\n<p><code>where<\/code> parametresi, SQL benzeri ko\u015fullarla metadata \u00fczerinde filtreleme yapman\u0131z\u0131 sa\u011flar. Bu, arama sonu\u00e7lar\u0131n\u0131n alaka d\u00fczeyini daha da art\u0131r\u0131r.<\/p>\n<h3>Geli\u015fmi\u015f Kullan\u0131m Senaryolar\u0131 ve \u0130pu\u00e7lar\u0131<\/h3>\n<p>ChromaDB'nin temel kullan\u0131m\u0131n\u0131 \u00f6\u011frendikten sonra, daha karma\u015f\u0131k senaryolarda nas\u0131l kullan\u0131labilece\u011fine dair baz\u0131 ipu\u00e7lar\u0131na ve tekniklere g\u00f6z atal\u0131m.<\/p>\n<h4>B\u00fcy\u00fck Veri Setleriyle \u00c7al\u0131\u015fma<\/h4>\n<p>ChromaDB, bellek i\u00e7i modda h\u0131zl\u0131 prototipleme i\u00e7in harikad\u0131r, ancak b\u00fcy\u00fck veri setleri i\u00e7in kal\u0131c\u0131 depolama modunu kullanman\u0131z \u00f6nerilir:<\/p>\n<pre><code class=\"language-python\">import chromadb\nfrom chromadb.config import Settings\n\n# Kal\u0131c\u0131 istemciyi ba\u015flatma\n# Veritaban\u0131 dosyalar\u0131 belirtilen yolda saklanacakt\u0131r.\npersistent_client = chromadb.PersistentClient(path=\"\/path\/to\/my_chroma_db\", settings=Settings(allow_reset=True))\n\n# Koleksiyonu al veya olu\u015ftur\nmy_collection = persistent_client.get_or_create_collection(name=\"buyuk_veri_koleksiyonu\")\n\n# B\u00fcy\u00fck veri setlerini par\u00e7alar halinde ekleme (batching)\n# Bu, belle\u011fi daha verimli kullanman\u0131z\u0131 sa\u011flar.\n# \u00d6rne\u011fin, 1000'erli par\u00e7alar halinde ekleyebilirsiniz.\n# for i in range(0, len(all_documents), 1000):\n#     batch_docs = all_documents[i:i+1000]\n#     batch_metas = all_metadatas[i:i+1000]\n#     batch_ids = all_ids[i:i+1000]\n#     my_collection.add(documents=batch_docs, metadatas=batch_metas, ids=batch_ids)\n<\/pre>\n<p><\/code><\/p>\n<p>B\u00fcy\u00fck veri setleri i\u00e7in, verileri toplu (batch) olarak eklemek ve silmek, performans\u0131 art\u0131r\u0131r ve bellek t\u00fcketimini azalt\u0131r.<\/p>\n<h4>Ger\u00e7ek Zamanl\u0131 G\u00fcncellemeler<\/h4>\n<p>ChromaDB, koleksiyonlara yeni belgeler eklemeyi, mevcut belgeleri g\u00fcncellemeyi veya silmeyi destekler. Bu, dinamik olarak de\u011fi\u015fen veri setleriyle \u00e7al\u0131\u015f\u0131rken \u00f6nemlidir.<\/p>\n<pre><code class=\"language-python\"># Belge g\u00fcncelleme\n# Mevcut bir ID ile yeni belge veya metadata ekleyerek g\u00fcncelleyebilirsiniz.\nmy_collection.update(\n    ids=[\"doc0\"],\n    documents=[\"ChromaDB, yapay zeka uygulamalar\u0131 i\u00e7in tasarlanm\u0131\u015f harika bir vekt\u00f6r veritaban\u0131d\u0131r.\"],\n    metadatas=[{\"kaynak\": \"ChromaDB Docs\", \"konu\": \"Veritaban\u0131\", \"versiyon\": \"2.0\"}]\n)\n\n# Belge silme\nmy_collection.delete(ids=[\"doc1\"])\n<\/pre>\n<p><\/code><\/p>\n<h4>Farkl\u0131 Embedding Modellerini Deneme<\/h4>\n<p>Farkl\u0131 embedding modelleri, farkl\u0131 metin t\u00fcrleri ve kullan\u0131m durumlar\u0131 i\u00e7in daha iyi performans g\u00f6sterebilir. ChromaDB, koleksiyon olu\u015ftururken farkl\u0131 bir <code>embedding_function<\/code> belirtmenize olanak tan\u0131r. Kendi \u00f6zel modelinizi kullanmak veya belirli bir dil i\u00e7in optimize edilmi\u015f bir modeli denemek, sonu\u00e7lar\u0131n kalitesini \u00f6nemli \u00f6l\u00e7\u00fcde art\u0131rabilir.<\/p>\n<pre><code class=\"language-python\">from chromadb.utils import embedding_functions\n\n# Multilingul bir model kullanma \u00f6rne\u011fi\nmultilingual_ef = embedding_functions.SentenceTransformerEmbeddingFunction(model_name=\"paraphrase-multilingual-MiniLM-L12-v2\")\nmultilingual_collection = client.get_or_create_collection(name=\"coklu_dil_koleksiyonu\", embedding_function=multilingual_ef)\n<\/pre>\n<p><\/code><\/p>\n<p>Do\u011fru modeli se\u00e7mek, semantik arama uygulaman\u0131z\u0131n ba\u015far\u0131s\u0131 i\u00e7in kritik \u00f6neme sahiptir.<\/p>\n<h3>ChromaDB'nin Avantajlar\u0131 ve Dezavantajlar\u0131<\/h3>\n<p>Her teknoloji gibi, ChromaDB'nin de kendine \u00f6zg\u00fc g\u00fc\u00e7l\u00fc ve zay\u0131f y\u00f6nleri vard\u0131r. Bu b\u00f6l\u00fcmde, ChromaDB kullanman\u0131n ba\u015fl\u0131ca avantajlar\u0131n\u0131 ve potansiyel dezavantajlar\u0131n\u0131 \u00f6zetleyece\u011fiz.<\/p>\n<h4>Avantajlar\u0131<\/h4>\n<ul>\n<li><b>Kullan\u0131m Kolayl\u0131\u011f\u0131:<\/b> Basit API'si ve Python entegrasyonu sayesinde h\u0131zl\u0131ca \u00f6\u011frenilebilir ve uygulanabilir.<\/li>\n<li><b>Hafif ve Esnek:<\/b> Hem bellek i\u00e7i hem de kal\u0131c\u0131 depolama se\u00e7enekleri sunarak farkl\u0131 proje ihtiya\u00e7lar\u0131na uyum sa\u011flar.<\/li>\n<li><b>G\u00f6mme Olu\u015fturma Entegrasyonu:<\/b> Yerle\u015fik embedding fonksiyonlar\u0131 sayesinde, vekt\u00f6r olu\u015fturma s\u00fcrecini basitle\u015ftirir.<\/li>\n<li><b>A\u00e7\u0131k Kaynak:<\/b> Topluluk deste\u011fi ve s\u00fcrekli geli\u015fim avantaj\u0131na sahiptir.<\/li>\n<li><b>Metadata Filtreleme:<\/b> Geli\u015fmi\u015f sorgular i\u00e7in metadata tabanl\u0131 filtreleme yetenekleri sunar.<\/li>\n<li><b>H\u0131zl\u0131 Prototipleme:<\/b> K\u00fc\u00e7\u00fck ve orta \u00f6l\u00e7ekli projeler i\u00e7in ideal bir ba\u015flang\u0131\u00e7 noktas\u0131d\u0131r.<\/li>\n<\/ul>\n<h4>Dezavantajlar\u0131<\/h4>\n<ul>\n<li><b>\u00d6l\u00e7eklenebilirlik (Hen\u00fcz):<\/b> \u00c7ok b\u00fcy\u00fck \u00f6l\u00e7ekli, milyarlarca vekt\u00f6r i\u00e7eren kurumsal d\u00fczeydeki uygulamalar i\u00e7in Pinecone veya Weaviate gibi daha olgun \u00e7\u00f6z\u00fcmler kadar optimize olmayabilir (ancak s\u00fcrekli geli\u015fmektedir).<\/li>\n<li><b>Performans Optimizasyonu:<\/b> Baz\u0131 \u00f6zel ANN algoritmalar\u0131 ve indeksleme stratejileri konusunda di\u011fer geli\u015fmi\u015f vekt\u00f6r veritabanlar\u0131 kadar derinlemesine se\u00e7enekler sunmayabilir.<\/li>\n<li><b>Da\u011f\u0131t\u0131k Mimari:<\/b> Hen\u00fcz tam anlam\u0131yla da\u011f\u0131t\u0131k bir mimariye sahip de\u011fildir, bu da y\u00fcksek eri\u015filebilirlik ve yatay \u00f6l\u00e7eklenebilirlik gerektiren senaryolarda s\u0131n\u0131rlay\u0131c\u0131 olabilir.<\/li>\n<li><b>Geli\u015fmekte Olan Bir Proje:<\/b> H\u0131zl\u0131 geli\u015fti\u011fi i\u00e7in API'de ve \u00f6zelliklerde de\u011fi\u015fiklikler olabilir.<\/li>\n<\/ul>\n<h3>Sonu\u00e7<\/h3>\n<p>Semantik arama, bilgiye eri\u015fim \u015feklimizi d\u00f6n\u00fc\u015ft\u00fcren g\u00fc\u00e7l\u00fc bir paradigmaya i\u015faret ediyor ve vekt\u00f6r veritabanlar\u0131 bu d\u00f6n\u00fc\u015f\u00fcm\u00fcn temelini olu\u015fturuyor. ChromaDB, bu alana ad\u0131m atmak isteyen geli\u015ftiriciler ve veri bilimcileri i\u00e7in m\u00fckemmel bir ba\u015flang\u0131\u00e7 noktas\u0131 sunuyor. Kolay kurulumu, sezgisel API'si ve yerle\u015fik g\u00f6mme olu\u015fturma yetenekleri sayesinde, metin verileriniz \u00fczerinde anlamsal arama yapman\u0131z\u0131 ve yapay zeka uygulamalar\u0131n\u0131z\u0131 zenginle\u015ftirmenizi sa\u011flar. Prototiplemeden k\u00fc\u00e7\u00fck \u00f6l\u00e7ekli \u00fcretime kadar bir\u00e7ok senaryoda ChromaDB, g\u00fc\u00e7l\u00fc ve esnek bir ara\u00e7 olarak \u00f6ne \u00e7\u0131kmaktad\u0131r. Bu k\u0131lavuzdaki ad\u0131mlar\u0131 takip ederek, kendi semantik arama yeteneklerinizi h\u0131zla geli\u015ftirebilir ve verilerinizden daha derin anlamlar \u00e7\u0131karabilirsiniz. Gelece\u011fin arama deneyimini in\u015fa etmek i\u00e7in ChromaDB'nin potansiyelini ke\u015ffetmeye ba\u015flay\u0131n!<\/p>\n<h3>SSS (S\u0131k\u00e7a Sorulan Sorular)<\/h3>\n<h4>1. Semantik arama ile anahtar kelime aramas\u0131 aras\u0131ndaki temel fark nedir?<\/h4>\n<p>Anahtar kelime aramas\u0131, sorgunuzdaki kelimelerin belgelerde tam olarak e\u015fle\u015fip e\u015fle\u015fmedi\u011fine bakar. Semantik arama ise, kelimelerin anlam\u0131n\u0131 ve ba\u011flam\u0131n\u0131 anlayarak, anlamsal olarak benzer belgeleri bulur. \u00d6rne\u011fin, \"araba tamircisi\" arad\u0131\u011f\u0131n\u0131zda, anahtar kelime aramas\u0131 sadece bu kelimeleri i\u00e7eren belgeleri bulurken, semantik arama \"oto servis\" veya \"ara\u00e7 onar\u0131m ustas\u0131\" gibi ifadeleri i\u00e7eren belgeleri de getirebilir.<\/p>\n<h4>2. Neden geleneksel bir veritaban\u0131 yerine vekt\u00f6r veritaban\u0131 kullanmal\u0131y\u0131m?<\/h4>\n<p>Geleneksel veritabanlar\u0131 (SQL, NoSQL), yap\u0131land\u0131r\u0131lm\u0131\u015f veya yar\u0131 yap\u0131land\u0131r\u0131lm\u0131\u015f verileri depolamak ve sorgulamak i\u00e7in optimize edilmi\u015ftir. Vekt\u00f6r veritabanlar\u0131 ise, y\u00fcksek boyutlu vekt\u00f6rleri depolamak, indekslemek ve bunlar \u00fczerinde h\u0131zl\u0131 benzerlik aramalar\u0131 yapmak i\u00e7in \u00f6zel olarak tasarlanm\u0131\u015ft\u0131r. Milyonlarca vekt\u00f6r aras\u0131nda benzerlik aramas\u0131 yapmak, geleneksel veritabanlar\u0131 i\u00e7in hesaplama a\u00e7\u0131s\u0131ndan \u00e7ok maliyetli ve yava\u015f olacakt\u0131r.<\/p>\n<h4>3. ChromaDB hangi embedding modellerini destekler?<\/h4>\n<p>ChromaDB, Sentence Transformers k\u00fct\u00fcphanesindeki bir\u00e7ok modeli (\u00f6rne\u011fin, <code>all-MiniLM-L6-v2<\/code> varsay\u0131lan olarak) do\u011frudan destekler. Ayr\u0131ca, OpenAI'nin embedding API'si gibi harici servislerle de entegre olabilir veya kendi \u00f6zel embedding modelinizi kullanman\u0131za olanak tan\u0131r.<\/p>\n<h4>4. ChromaDB verilerimi kal\u0131c\u0131 olarak depolayabilir mi?<\/h4>\n<p>Evet, ChromaDB hem bellek i\u00e7i (in-memory) hem de kal\u0131c\u0131 (persistent) depolama modlar\u0131n\u0131 destekler. Kal\u0131c\u0131 depolama i\u00e7in <code>chromadb.PersistentClient(path=\"\/your\/data\/path\")<\/code> kullanarak veritaban\u0131 dosyalar\u0131n\u0131z\u0131n belirtilen yolda saklanmas\u0131n\u0131 sa\u011flayabilirsiniz. Bu, uygulaman\u0131z yeniden ba\u015flat\u0131ld\u0131\u011f\u0131nda verilerinizin kaybolmamas\u0131n\u0131 sa\u011flar.<\/p>\n<h4>5. ChromaDB b\u00fcy\u00fck \u00f6l\u00e7ekli uygulamalar i\u00e7in uygun mu?<\/h4>\n<p>ChromaDB, h\u0131zl\u0131 prototipleme ve k\u00fc\u00e7\u00fck\/orta \u00f6l\u00e7ekli uygulamalar i\u00e7in harika bir se\u00e7enektir. Ancak, milyarlarca vekt\u00f6r i\u00e7eren \u00e7ok b\u00fcy\u00fck \u00f6l\u00e7ekli, y\u00fcksek performans ve da\u011f\u0131t\u0131k mimari gerektiren kurumsal uygulamalar i\u00e7in Pinecone, Weaviate veya Milvus gibi daha olgun ve \u00f6l\u00e7eklenebilir vekt\u00f6r veritabanlar\u0131 daha uygun olabilir. ChromaDB s\u00fcrekli geli\u015fmekte olup, gelecekteki s\u00fcr\u00fcmlerinde \u00f6l\u00e7eklenebilirlik yeteneklerinin artmas\u0131 beklenmektedir.<\/p>\n","protected":false},"excerpt":{"rendered":"Bilgiye eri\u015fim \u015feklimizi k\u00f6kten de\u011fi\u015ftiren semantik arama, anahtar kelime e\u015fle\u015fmesinin \u00f6tesine ge\u00e7erek metinlerin anlam\u0131n\u0131 kavramay\u0131 hedefler. Bu&#8230;","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-39492","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>ChromaDB ile Semantik Arama i\u00e7in Vekt\u00f6r Veritabanlar\u0131ndan Yararlanma: Yeni Ba\u015flayanlar \u0130\u00e7in K\u0131lavuz - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ChromaDB ile Semantik Arama i\u00e7in Vekt\u00f6r Veritabanlar\u0131ndan Yararlanma: Yeni Ba\u015flayanlar \u0130\u00e7in K\u0131lavuz\" \/>\n<meta property=\"og:description\" content=\"Bilgiye eri\u015fim \u015feklimizi k\u00f6kten de\u011fi\u015ftiren semantik arama, anahtar kelime e\u015fle\u015fmesinin \u00f6tesine ge\u00e7erek metinlerin anlam\u0131n\u0131 kavramay\u0131 hedefler. Bu...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-02-22T13:30:38+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"16 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"ChromaDB ile Semantik Arama i\u00e7in Vekt\u00f6r Veritabanlar\u0131ndan Yararlanma: Yeni Ba\u015flayanlar \u0130\u00e7in K\u0131lavuz\",\"datePublished\":\"2026-02-22T13:30:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/\"},\"wordCount\":2657,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/\",\"name\":\"ChromaDB ile Semantik Arama i\u00e7in Vekt\u00f6r Veritabanlar\u0131ndan Yararlanma: Yeni Ba\u015flayanlar \u0130\u00e7in K\u0131lavuz - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-02-22T13:30:38+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"ChromaDB ile Semantik Arama i\u00e7in Vekt\u00f6r Veritabanlar\u0131ndan Yararlanma: Yeni Ba\u015flayanlar \u0130\u00e7in K\u0131lavuz\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"ChromaDB ile Semantik Arama i\u00e7in Vekt\u00f6r Veritabanlar\u0131ndan Yararlanma: Yeni Ba\u015flayanlar \u0130\u00e7in K\u0131lavuz - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/","og_locale":"tr_TR","og_type":"article","og_title":"ChromaDB ile Semantik Arama i\u00e7in Vekt\u00f6r Veritabanlar\u0131ndan Yararlanma: Yeni Ba\u015flayanlar \u0130\u00e7in K\u0131lavuz","og_description":"Bilgiye eri\u015fim \u015feklimizi k\u00f6kten de\u011fi\u015ftiren semantik arama, anahtar kelime e\u015fle\u015fmesinin \u00f6tesine ge\u00e7erek metinlerin anlam\u0131n\u0131 kavramay\u0131 hedefler. Bu...","og_url":"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-02-22T13:30:38+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"16 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"ChromaDB ile Semantik Arama i\u00e7in Vekt\u00f6r Veritabanlar\u0131ndan Yararlanma: Yeni Ba\u015flayanlar \u0130\u00e7in K\u0131lavuz","datePublished":"2026-02-22T13:30:38+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/"},"wordCount":2657,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/","url":"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/","name":"ChromaDB ile Semantik Arama i\u00e7in Vekt\u00f6r Veritabanlar\u0131ndan Yararlanma: Yeni Ba\u015flayanlar \u0130\u00e7in K\u0131lavuz - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-02-22T13:30:38+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/chromadb-ile-semantik-arama-icin-vektor-veritabanlarindan-yararlanma-yeni-baslayanlar-icin-kilavuz\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"ChromaDB ile Semantik Arama i\u00e7in Vekt\u00f6r Veritabanlar\u0131ndan Yararlanma: Yeni Ba\u015flayanlar \u0130\u00e7in K\u0131lavuz"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/39492","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=39492"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/39492\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=39492"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=39492"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=39492"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}