{"id":29227,"date":"2025-09-09T16:30:25","date_gmt":"2025-09-09T13:30:25","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/"},"modified":"2025-09-09T16:30:25","modified_gmt":"2025-09-09T13:30:25","slug":"spring-ai-ile-generative-ai-ve-rag-uygulamalari","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/","title":{"rendered":"Spring AI ile Generative AI ve RAG Uygulamalar\u0131"},"content":{"rendered":"<p>Spring AI ile Generative AI ve RAG Uygulamalar\u0131<\/p>\n<p>Yapay zeka d\u00fcnyas\u0131nda h\u0131zla geli\u015fen Generative AI ve Retrieval Augmented Generation (RAG) teknolojileri, i\u015fletmelerin veri i\u015fleme ve bilgi eri\u015fim \u015fekillerini d\u00f6n\u00fc\u015ft\u00fcr\u00fcyor.  Bu makalede, Spring AI \u00e7er\u00e7evesi kullan\u0131larak Generative AI ve RAG&#039;\u0131n nas\u0131l uygulanaca\u011f\u0131n\u0131 ad\u0131m ad\u0131m, detayl\u0131 bir \u015fekilde ele alaca\u011f\u0131z.  \u00d6rnek senaryolar ve kod par\u00e7ac\u0131klar\u0131yla zenginle\u015ftirilmi\u015f bu rehber, hem yeni ba\u015flayanlar hem de deneyimli geli\u015ftiriciler i\u00e7in de\u011ferli bilgiler sunuyor.<\/p>\n<h2>Generative AI ve RAG: Temel Kavramlar<\/h2>\n<p>Generative AI, yeni veriler \u00fcretme yetene\u011fine sahip yapay zeka modelleridir.  Bu modeller, b\u00fcy\u00fck miktarda veriden \u00f6\u011frenerek metin, g\u00f6r\u00fcnt\u00fc, ses ve kod gibi farkl\u0131 formatlarda i\u00e7erik olu\u015fturabilirler.  \u00d6rne\u011fin, bir Generative AI modeli, verilen bir metin \u00f6zetini geni\u015fletebilir, \u015fiir yazabilir veya yeni bir hikaye olu\u015fturabilir.  Bu modellerin \u00e7o\u011fu b\u00fcy\u00fck dil modelleri (LLM) \u00fczerine kuruludur ve genellikle transformer mimarisini kullan\u0131r.<\/p>\n<p>Retrieval Augmented Generation (RAG) ise, Generative AI modellerinin performans\u0131n\u0131 ve g\u00fcvenilirli\u011fini art\u0131rmak i\u00e7in kullan\u0131lan bir tekniktir.  RAG, bir bilgi taban\u0131ndan ilgili bilgileri alarak Generative AI modelinin bu bilgilere dayanarak daha do\u011fru ve tutarl\u0131 yan\u0131tlar \u00fcretmesini sa\u011flar.  Bu, Generative AI modellerinin hal\u00fcsinasyon yapma olas\u0131l\u0131\u011f\u0131n\u0131 azalt\u0131r ve daha g\u00fcvenilir sonu\u00e7lar elde edilmesini sa\u011flar.  \u00d6zetle, RAG, Generative AI&#039;n\u0131n bellek ve bilgi eri\u015fimini g\u00fc\u00e7lendirir.<\/p>\n<p>Spring AI, bu iki g\u00fc\u00e7l\u00fc teknolojinin entegre bir \u015fekilde kullan\u0131lmas\u0131na olanak tan\u0131yan bir \u00e7er\u00e7evedir.  Spring&#039;in sa\u011flad\u0131\u011f\u0131 ara\u00e7lar ve k\u00fct\u00fcphaneler sayesinde, Generative AI modellerini kolayca entegre edebilir ve RAG uygulamalar\u0131 geli\u015ftirebilirsiniz.  Bu, daha h\u0131zl\u0131 ve verimli geli\u015ftirme s\u00fcreci anlam\u0131na gelir.<\/p>\n<h2>Spring AI ile Generative AI Modellerini Entegre Etme<\/h2>\n<p>Spring AI&#039;da Generative AI modellerini entegre etmenin birka\u00e7 yolu vard\u0131r.  En yayg\u0131n y\u00f6ntemlerden biri, pop\u00fcler LLM&#039;leri (\u00f6rne\u011fin, OpenAI&#039;nin GPT modelleri) do\u011frudan Spring uygulamalar\u0131n\u0131za entegre etmektir.  Bu, genellikle HTTP istekleri arac\u0131l\u0131\u011f\u0131yla yap\u0131l\u0131r.  A\u015fa\u011f\u0131da basit bir \u00f6rnek verilmi\u015ftir:<\/p>\n<p><\/code>java<br \/>\n\/\/ Spring Boot uygulamas\u0131 i\u00e7erisinde OpenAI API&#8217;sini kullanarak metin \u00fcretme \u00f6rne\u011fi<br \/>\nRestTemplate restTemplate = new RestTemplate();<br \/>\nHttpHeaders headers = new HttpHeaders();<br \/>\nheaders.setContentType(MediaType.APPLICATION_JSON);<br \/>\nheaders.set(&#8220;Authorization&#8221;, &#8220;Bearer YOUR_API_KEY&#8221;);<\/p>\n<p>HttpEntity<String> request = new HttpEntity<>(<br \/>\n        &#8220;{\\&#8221;prompt\\&#8221;: \\&#8221;Bir hikaye yaz\\&#8221;, \\&#8221;max_tokens\\&#8221;: 150}&#8221;,<br \/>\n        headers<br \/>\n);<\/p>\n<p>ResponseEntity<String> response = restTemplate.exchange(<br \/>\n        &#8220;https:\/\/api.openai.com\/v1\/completions&#8221;,<br \/>\n        HttpMethod.POST,<br \/>\n        request,<br \/>\n        String.class<br \/>\n);<\/p>\n<p>String generatedText = response.getBody();<br \/>\nSystem.out.println(generatedText);<\/p>\n<pre><code class=\"language-plaintext\"><p>Bu \u00f6rnekte, OpenAI API&#039;sine bir HTTP POST iste\u011fi g\u00f6nderilerek metin \u00fcretilir.  <code>YOUR_API_KEY<\/code> yerine kendi OpenAI API anahtar\u0131n\u0131z\u0131 girmeniz gerekmektedir. Daha geli\u015fmi\u015f kullan\u0131m senaryolar\u0131 i\u00e7in, Spring Data REST gibi ara\u00e7lar\u0131 kullanarak daha yap\u0131land\u0131r\u0131lm\u0131\u015f veri y\u00f6netimi sa\u011flayabilirsiniz.  Ayr\u0131ca,  Spring Cloud Function gibi ara\u00e7lar ile  fonksiyonel programlama yakla\u015f\u0131m\u0131yla  LLM entegrasyonunuzu daha mod\u00fcler ve \u00f6l\u00e7eklenebilir hale getirebilirsiniz.<\/p>\n\n<h2>RAG Uygulamas\u0131: Ad\u0131m Ad\u0131m \u00d6rnek<\/h2>\n\n<p>\u015eimdi, Spring AI ile bir RAG uygulamas\u0131 geli\u015ftirmenin ad\u0131mlar\u0131n\u0131 ele alal\u0131m.  Bu \u00f6rnekte, bir belge koleksiyonundan bilgi \u00e7ekip, bu bilgiyi kullanarak sorular\u0131 cevaplayan bir sistem kuraca\u011f\u0131z.<\/p>\n\n<h3>1. Ad\u0131m: Bilgi Taban\u0131n\u0131n Olu\u015fturulmas\u0131<\/h3>\n\n<p>\u0130lk ad\u0131m, bilgi taban\u0131n\u0131 olu\u015fturmakt\u0131r.  Bu, veritaban\u0131 (\u00f6rne\u011fin, PostgreSQL, MySQL), dosya sistemi veya ba\u015fka bir bilgi deposu olabilir.  \u00d6rnek olarak, bir dizi metin dosyas\u0131 kullanabiliriz. Her dosya, bir belgeyi temsil eder.<\/p>\n\n<h3>2. Ad\u0131m: Benzerlik Arama Algoritmas\u0131n\u0131n Se\u00e7imi<\/h3>\n\n<p>\u0130kinci ad\u0131m, belge koleksiyonunda ilgili belgeleri bulmak i\u00e7in bir benzerlik arama algoritmas\u0131 se\u00e7mektir.  Yayg\u0131n olarak kullan\u0131lan y\u00f6ntemlerden baz\u0131lar\u0131 \u015funlard\u0131r:  Cosine benzerli\u011fi, TF-IDF ve BM25.  Bu algoritmalar, sorunun ve belgelerin vekt\u00f6r g\u00f6sterimlerini kullanarak benzerli\u011fi hesaplar.  Spring Data Elasticsearch gibi ara\u00e7lar, bu algoritmalar\u0131 kolayca entegre etmenizi sa\u011flar.<\/p>\n\n<h3>3. Ad\u0131m: Spring Uygulamas\u0131n\u0131n Geli\u015ftirilmesi<\/h3>\n\n<p>\u00dc\u00e7\u00fcnc\u00fc ad\u0131mda, Spring uygulamas\u0131n\u0131 geli\u015ftirece\u011fiz.  Bu uygulama, kullan\u0131c\u0131n\u0131n sorusunu al\u0131r, ilgili belgeleri bulur ve Generative AI modelini kullanarak soruyu cevaplar.  A\u015fa\u011f\u0131daki kod par\u00e7as\u0131, basit bir \u00f6rne\u011fi g\u00f6stermektedir:<\/p><\/pre>\n<p><\/code>java<br \/>\n\/\/ Basitle\u015ftirilmi\u015f RAG \u00f6rne\u011fi (ger\u00e7ek uygulamada daha geli\u015fmi\u015f k\u00fct\u00fcphaneler kullan\u0131lmal\u0131d\u0131r)<br \/>\nString question = \"Spring Framework nedir?\";<br \/>\nList<String> relevantDocuments = searchRelevantDocuments(question); \/\/ Benzerlik arama fonksiyonu<br \/>\nString context = String.join(\" \", relevantDocuments);<br \/>\nString answer = generateAnswer(question, context); \/\/ Generative AI modelini kullanarak cevap \u00fcretme fonksiyonu<br \/>\nSystem.out.println(\"Cevap: \" + answer);<\/p>\n<pre><code class=\"language-plaintext\"><h3>4. Ad\u0131m:  Sonu\u00e7lar\u0131n De\u011ferlendirilmesi<\/h3>\n\n<p>Son ad\u0131mda, sistemin performans\u0131n\u0131 de\u011ferlendirip iyile\u015ftirmeler yapabiliriz.  Bu, do\u011fru cevap oran\u0131n\u0131, yan\u0131tlama s\u00fcresini ve di\u011fer metrikleri izleyerek yap\u0131labilir.  A\/B testleri ve farkl\u0131 algoritma\/model kar\u015f\u0131la\u015ft\u0131rmalar\u0131 ile optimizasyon sa\u011flanabilir. Daha kapsaml\u0131 bir de\u011ferlendirme i\u00e7in, ilgili metrikleri kaydeden bir log sistemi kurulabilir.<\/p>\n\n\n<h2>\u0130leri D\u00fczey Teknikler<\/h2>\n\n<p>Daha geli\u015fmi\u015f RAG uygulamalar\u0131 i\u00e7in, a\u015fa\u011f\u0131daki teknikleri kullanabilirsiniz:<\/p>\n\n<ul>\n    <li><b>Vector Databases:<\/b>  Pinecone, Weaviate gibi vekt\u00f6r veritabanlar\u0131n\u0131 kullanarak y\u00fcksek performansl\u0131 benzerlik aramas\u0131 yapabilirsiniz.  Bu veritabanlar\u0131, vekt\u00f6r g\u00f6sterimlerini verimli bir \u015fekilde saklar ve arar.<\/li>\n    <li><b>Fine-tuning:<\/b> Generative AI modellerini, belirli bir alan veya g\u00f6rev i\u00e7in ince ayar yaparak performans\u0131 art\u0131rabilirsiniz.  Bu, modelin belirli bir veri k\u00fcmesinde daha iyi performans g\u00f6stermesini sa\u011flar.<\/li>\n    <li><b>Contextual Understanding:<\/b>  Sorunun ba\u011flam\u0131n\u0131 daha iyi anlamak i\u00e7in, do\u011fal dil i\u015fleme (NLP) tekniklerini kullanabilirsiniz.  Bu, daha do\u011fru ve alakal\u0131 yan\u0131tlar \u00fcretmeye yard\u0131mc\u0131 olur.<\/li>\n    <li><b>Model se\u00e7imi ve optimizasyonu:<\/b>  Farkl\u0131 LLM&#039;leri kar\u015f\u0131la\u015ft\u0131r\u0131p projenizin ihtiya\u00e7lar\u0131na en uygun modeli se\u00e7melisiniz. Model parametrelerini ayarlayarak ve ince ayar yaparak performans\u0131 optimize edebilirsiniz.<\/li>\n<\/ul>\n\n\n<h2>\u00d6\u011frenme Yol Haritas\u0131<\/h2>\n\n<h3>Yeni Ba\u015flayanlar<\/h3>\n\n<p>Spring Boot temelleri, REST API&#039;leri ve temel Java programlama bilgisine odaklan\u0131n.  Basit Generative AI API&#039;lerini (\u00f6rne\u011fin, OpenAI API) kullanarak metin \u00fcretmeyi deneyin.  Daha sonra, basit bir belge benzerlik arama algoritmas\u0131 uygulay\u0131n (\u00f6rne\u011fin, Cosine benzerli\u011fi) ve bunlar\u0131 birle\u015ftirin.<\/p>\n\n<h3>Orta Seviye<\/h3>\n\n<p>Daha geli\u015fmi\u015f NLP teknikleri \u00f6\u011frenin (\u00f6rne\u011fin, kelime g\u00f6mme, konu modellemesi).  Vector Databases kullanmay\u0131 deneyin.  Farkl\u0131 benzerlik arama algoritmalar\u0131n\u0131 kar\u015f\u0131la\u015ft\u0131r\u0131n ve projeniz i\u00e7in en iyisini se\u00e7in.  Daha karma\u015f\u0131k RAG uygulamalar\u0131 geli\u015ftirin.<\/p>\n\n<h3>\u0130leri Seviye<\/h3>\n\n<p>LLM&#039;lerin ince ayar\u0131n\u0131 \u00f6\u011frenin.  Karma\u015f\u0131k bilgi tabanlar\u0131n\u0131 y\u00f6netmek i\u00e7in geli\u015fmi\u015f teknikler kullan\u0131n.  Performans optimizasyonu ve \u00f6l\u00e7eklenebilirlik \u00fczerine \u00e7al\u0131\u015f\u0131n.  Kendi \u00f6zel LLM&#039;lerinizi e\u011fitmeyi deneyin.<\/p>\n\n\n<h2>Vaka Analizleri<\/h2>\n\n<p><b>E-ticaret:<\/b> M\u00fc\u015fteri sorular\u0131n\u0131 otomatik olarak yan\u0131tlamak i\u00e7in RAG kullanarak, m\u00fc\u015fteri hizmetleri maliyetlerini d\u00fc\u015f\u00fcrebilir ve m\u00fc\u015fteri memnuniyetini art\u0131rabilirsiniz.  \u00d6rne\u011fin, s\u0131k\u00e7a sorulan sorulara h\u0131zl\u0131 ve do\u011fru cevaplar verebilir veya \u00fcr\u00fcn bilgileriyle ilgili detayl\u0131 sorular\u0131 yan\u0131tlayabilirsiniz.<\/p>\n\n<p><b>Sa\u011fl\u0131k:<\/b> T\u0131bbi kay\u0131tlar\u0131 analiz etmek ve hastalar\u0131n te\u015fhisini desteklemek i\u00e7in RAG kullan\u0131labilir.  Doktorlar, hastalar\u0131n ge\u00e7mi\u015fini ve ilgili t\u0131bbi bilgileri h\u0131zl\u0131ca inceleyerek daha iyi kararlar alabilirler.  (Dikkat:  T\u0131bbi uygulamalarda veri gizlili\u011fi ve g\u00fcvenli\u011fine b\u00fcy\u00fck \u00f6nem verilmelidir).<\/p>\n\n\n<h2>Sonu\u00e7<\/h2>\n\n<p>Spring AI, Generative AI ve RAG uygulamalar\u0131n\u0131 geli\u015ftirmek i\u00e7in g\u00fc\u00e7l\u00fc bir \u00e7er\u00e7evedir.  Bu makalede, temel kavramlar\u0131, uygulamal\u0131 \u00f6rnekleri ve ileri d\u00fczey teknikleri ele ald\u0131k.  Do\u011fru uygulama ve optimizasyon ile Spring AI, i\u015fletmelerin verilerinden daha fazla de\u011fer elde etmesine yard\u0131mc\u0131 olabilir.  Daha fazla bilgi i\u00e7in <a href=\"https:\/\/fatihsoysal.com\">fatihsoysal.com<\/a> adresini inceleyebilirsiniz.<\/p>\n\n<h2>S\u0131k\u00e7a Sorulan Sorular<\/h2>\n\n<ul>\n    <li><b>RAG&#039;\u0131n Generative AI&#039;dan fark\u0131 nedir?<\/b> RAG, Generative AI modellerinin g\u00fcvenilirli\u011fini ve do\u011frulu\u011funu art\u0131rmak i\u00e7in ek bilgi kaynaklar\u0131 kullan\u0131r. Generative AI ise kendi ba\u015f\u0131na yeni veriler \u00fcretir.<\/li>\n    <li><b>Hangi vekt\u00f6r veritaban\u0131n\u0131 kullanmal\u0131y\u0131m?<\/b>  Pinecone, Weaviate ve Milvus pop\u00fcler se\u00e7eneklerdir.  Se\u00e7iminizi, veri k\u00fcmeniz ve uygulama gereksinimlerinize g\u00f6re yapmal\u0131s\u0131n\u0131z.<\/li>\n    <li><b>LLM&#039;lerin ince ayar\u0131 nas\u0131l yap\u0131l\u0131r?<\/b>  Bu, \u00f6zel bir veri k\u00fcmesi kullanarak modeli e\u011fitmeyi i\u00e7erir.  Daha fazla bilgi i\u00e7in ilgili LLM&#039;nin dok\u00fcmanlar\u0131na bakabilirsiniz.<\/li>\n    <li><b>Spring AI g\u00fcvenli\u011fi nas\u0131l sa\u011flan\u0131r?<\/b> API anahtarlar\u0131n\u0131z\u0131 g\u00fcvenli bir \u015fekilde saklamal\u0131 ve eri\u015fim kontrol mekanizmalar\u0131 uygulamal\u0131s\u0131n\u0131z.<\/li>\n    <li><b>Performans\u0131 nas\u0131l optimize edebilirim?<\/b>  Veri \u00f6nbellekleme, indeksleme teknikleri ve verimli algoritma se\u00e7imi performans\u0131 art\u0131rabilir.<\/li>\n<\/ul>\n\n<p>Yazar: Fatih Soysal<\/p><\/pre>\n<p><\/code><\/p>\n","protected":false},"excerpt":{"rendered":"Spring AI ile Generative AI ve RAG Uygulamalar\u0131 Yapay zeka d\u00fcnyas\u0131nda h\u0131zla geli\u015fen Generative AI ve Retrieval Augmented&hellip;","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-29227","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>Spring AI ile Generative AI ve RAG Uygulamalar\u0131<\/title>\n<meta name=\"description\" content=\"Yapay zeka d\u00fcnyas\u0131nda h\u0131zla geli\u015fen Generative AI ve Retrieval Augmented Generation (RAG) teknolojileri, i\u015fletmelerin veri i\u015fleme ve bilgi eri\u015fim \u015fekillerini d\u00f6n\u00fc\u015ft\u00fcr\u00fcyor. Bu makalede, Spring AI \u00e7er\u00e7evesi kullan\u0131larak Generative AI ve RAG&#039;\u0131n nas\u0131l uygulanaca\u011f\u0131n\u0131 ad\u0131m ad\u0131m, detayl\u0131 bir \u015fekilde ele alaca\u011f\u0131z. \u00d6rnek senaryolar ve kod par\u00e7ac\u0131klar\u0131yla zenginle\u015ftirilmi\u015f bu rehber, hem yeni ba\u015flayanlar hem de deneyimli geli\u015ftiriciler i\u00e7in de\u011ferli bilgiler sunuyor.\" \/>\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\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Spring AI ile Generative AI ve RAG Uygulamalar\u0131\" \/>\n<meta property=\"og:description\" content=\"Yapay zeka d\u00fcnyas\u0131nda h\u0131zla geli\u015fen Generative AI ve Retrieval Augmented Generation (RAG) teknolojileri, i\u015fletmelerin veri i\u015fleme ve bilgi eri\u015fim \u015fekillerini d\u00f6n\u00fc\u015ft\u00fcr\u00fcyor. Bu makalede, Spring AI \u00e7er\u00e7evesi kullan\u0131larak Generative AI ve RAG&#039;\u0131n nas\u0131l uygulanaca\u011f\u0131n\u0131 ad\u0131m ad\u0131m, detayl\u0131 bir \u015fekilde ele alaca\u011f\u0131z. \u00d6rnek senaryolar ve kod par\u00e7ac\u0131klar\u0131yla zenginle\u015ftirilmi\u015f bu rehber, hem yeni ba\u015flayanlar hem de deneyimli geli\u015ftiriciler i\u00e7in de\u011ferli bilgiler sunuyor.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2025-09-09T13:30:25+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=\"7 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Spring AI ile Generative AI ve RAG Uygulamalar\u0131\",\"datePublished\":\"2025-09-09T13:30:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/\"},\"wordCount\":497,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/#respond\"]}],\"copyrightYear\":\"2025\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/\",\"name\":\"Spring AI ile Generative AI ve RAG Uygulamalar\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2025-09-09T13:30:25+00:00\",\"description\":\"Yapay zeka d\u00fcnyas\u0131nda h\u0131zla geli\u015fen Generative AI ve Retrieval Augmented Generation (RAG) teknolojileri, i\u015fletmelerin veri i\u015fleme ve bilgi eri\u015fim \u015fekillerini d\u00f6n\u00fc\u015ft\u00fcr\u00fcyor. Bu makalede, Spring AI \u00e7er\u00e7evesi kullan\u0131larak Generative AI ve RAG'\u0131n nas\u0131l uygulanaca\u011f\u0131n\u0131 ad\u0131m ad\u0131m, detayl\u0131 bir \u015fekilde ele alaca\u011f\u0131z. \u00d6rnek senaryolar ve kod par\u00e7ac\u0131klar\u0131yla zenginle\u015ftirilmi\u015f bu rehber, hem yeni ba\u015flayanlar hem de deneyimli geli\u015ftiriciler i\u00e7in de\u011ferli bilgiler sunuyor.\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Spring AI ile Generative AI ve RAG Uygulamalar\u0131\"}]},{\"@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":"Spring AI ile Generative AI ve RAG Uygulamalar\u0131","description":"Yapay zeka d\u00fcnyas\u0131nda h\u0131zla geli\u015fen Generative AI ve Retrieval Augmented Generation (RAG) teknolojileri, i\u015fletmelerin veri i\u015fleme ve bilgi eri\u015fim \u015fekillerini d\u00f6n\u00fc\u015ft\u00fcr\u00fcyor. Bu makalede, Spring AI \u00e7er\u00e7evesi kullan\u0131larak Generative AI ve RAG'\u0131n nas\u0131l uygulanaca\u011f\u0131n\u0131 ad\u0131m ad\u0131m, detayl\u0131 bir \u015fekilde ele alaca\u011f\u0131z. \u00d6rnek senaryolar ve kod par\u00e7ac\u0131klar\u0131yla zenginle\u015ftirilmi\u015f bu rehber, hem yeni ba\u015flayanlar hem de deneyimli geli\u015ftiriciler i\u00e7in de\u011ferli bilgiler sunuyor.","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\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/","og_locale":"tr_TR","og_type":"article","og_title":"Spring AI ile Generative AI ve RAG Uygulamalar\u0131","og_description":"Yapay zeka d\u00fcnyas\u0131nda h\u0131zla geli\u015fen Generative AI ve Retrieval Augmented Generation (RAG) teknolojileri, i\u015fletmelerin veri i\u015fleme ve bilgi eri\u015fim \u015fekillerini d\u00f6n\u00fc\u015ft\u00fcr\u00fcyor. Bu makalede, Spring AI \u00e7er\u00e7evesi kullan\u0131larak Generative AI ve RAG'\u0131n nas\u0131l uygulanaca\u011f\u0131n\u0131 ad\u0131m ad\u0131m, detayl\u0131 bir \u015fekilde ele alaca\u011f\u0131z. \u00d6rnek senaryolar ve kod par\u00e7ac\u0131klar\u0131yla zenginle\u015ftirilmi\u015f bu rehber, hem yeni ba\u015flayanlar hem de deneyimli geli\u015ftiriciler i\u00e7in de\u011ferli bilgiler sunuyor.","og_url":"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2025-09-09T13:30:25+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"7 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Spring AI ile Generative AI ve RAG Uygulamalar\u0131","datePublished":"2025-09-09T13:30:25+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/"},"wordCount":497,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/#respond"]}],"copyrightYear":"2025","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/","url":"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/","name":"Spring AI ile Generative AI ve RAG Uygulamalar\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2025-09-09T13:30:25+00:00","description":"Yapay zeka d\u00fcnyas\u0131nda h\u0131zla geli\u015fen Generative AI ve Retrieval Augmented Generation (RAG) teknolojileri, i\u015fletmelerin veri i\u015fleme ve bilgi eri\u015fim \u015fekillerini d\u00f6n\u00fc\u015ft\u00fcr\u00fcyor. Bu makalede, Spring AI \u00e7er\u00e7evesi kullan\u0131larak Generative AI ve RAG'\u0131n nas\u0131l uygulanaca\u011f\u0131n\u0131 ad\u0131m ad\u0131m, detayl\u0131 bir \u015fekilde ele alaca\u011f\u0131z. \u00d6rnek senaryolar ve kod par\u00e7ac\u0131klar\u0131yla zenginle\u015ftirilmi\u015f bu rehber, hem yeni ba\u015flayanlar hem de deneyimli geli\u015ftiriciler i\u00e7in de\u011ferli bilgiler sunuyor.","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/spring-ai-ile-generative-ai-ve-rag-uygulamalari\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Spring AI ile Generative AI ve RAG Uygulamalar\u0131"}]},{"@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\/29227","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=29227"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/29227\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=29227"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=29227"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=29227"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}