
![]()
Selam! Bugün biraz heyecanlı bir konuya giriyoruz. RAG (Retrieval-Augmented Generation) dünyası son bir yılda öyle bir patladı ki, klasik “vektör veritabanından chunk çek, LLM’e ver” mantığı çoktan ilkokul seviyesinde kaldı. Turing Post’un derlediği listede karşımıza çıkan 16 farklı yeni RAG çeşidini[1] tek tek inceleyeceğiz, sonra da “Peki ben bunları LangGraph ya da LangChain ile yapabilir miyim?” sorusuna cevap arayacağız.
RAG Neden Bu Kadar Çeşitlendi?
Klasik RAG’ın iki temel derdi vardı: ya yanlış parçaları getiriyordu, ya da getirdiği doğru parçaları LLM düzgün kullanamıyordu. Araştırmacılar son bir yılda bu iki probleme farklı açılardan saldırdı; kimi geri getirme (retrieval) tarafını agresifleştirdi, kimi LLM’in karar verme yeteneğini öne çıkardı, kimi de “neden sadece metin? videodan, görüntüden, zaman serisinden de bilgi çekelim” dedi. Şimdi 16’sını sırayla göreceğiz.
1) HtmlRAG — HTML’i Düz Metne Çevirmeden Saklamak
Geleneksel RAG, bir web sayfasını çekince HTML’i atıp düz metne çeviriyor ve başlık-tablo gibi yapısal bilgileri çöpe atıyor. HtmlRAG ise “HTML doğrudan kullanılabilir ve çoğu LLM HTML’i çok iyi anlar” diyor[2]. Tabii HTML’in kendine has bir derdi var: etiketler, JavaScript ve CSS gereksiz token yaratıyor. Bu yüzden HtmlRAG, blok-ağaç temelli bir budama yöntemiyle HTML’i temizliyor ve sadece soruyla ilgili kısmı bırakıyor[2]. Altı farklı QA veri setinde düz metne göre daha iyi sonuç verdiği gösterilmiş[2].
2) FastRAG — Yapılandırılmış Veriler İçin Süper Hızlı RAG
FastRAG, ağ verileri gibi yarı-yapılandırılmış (semi-structured) verilerle çalışmak için tasarlandı[3]. İşin sırrı şema öğrenme (schema learning) ve script öğrenme (script learning) ile veriyi LLM’e tamamen göndermeden işlemek. Metin araması ile bilgi grafiği (knowledge graph) sorgulamasını birleştiriyor[3]. Sonuç? GraphRAG’a kıyasla zamanda %90, maliyette %85 iyileşme[3]. Yani aynı işi yapıyor ama on kat daha hızlı ve ucuz.
3) Auto-RAG — Kendi Kendine Karar Veren RAG
Auto-RAG’ın dehası şurada: LLM’i sadece üretici (generator) olarak değil, “ne zaman ve neyi arayacağına” karar veren bir ajan olarak kullanıyor[4]. Sistem retriever ile çok turlu bir diyalog kuruyor; her turda “yeterli bilgim var mı, yoksa tekrar arayayım mı?” diye soruyor[4]. En güzeli, sorunun zorluğuna göre kaç tur arama yapacağına kendisi karar veriyor — kolay sorularda bir aramayla yetiniyor, zor sorularda gerekirse beş-altı tur döndürüyor[4].
4) CORAG — Monte Carlo Ağaç Araması ile Optimum Chunk Seçimi
Geleneksel RAG’ın gözden kaçırdığı üç gerçek var: chunk’lar birbirinden bağımsız değildir, “ne kadar çok chunk o kadar iyi” doğru değildir (bazen fazla chunk performansı düşürür) ve her sorgu farklı bir stratejiye ihtiyaç duyar. CORAG bu üç problemi de çözmek için Monte Carlo Ağaç Araması (Monte Carlo Tree Search – MCTS) kullanıyor[5]. Sistem chunk’lar arasındaki korelasyonları dikkate alarak en iyi kombinasyonu sıralı bir şekilde buluyor[5]. NaiveRAG ve RAPTOR gibi yöntemlere göre yaklaşık %25 iyileşme sağlıyor[5].
5) MemoRAG — Uzun Süreli Belleği Olan RAG
MemoRAG çift sistemli (dual-system) bir mimari kullanıyor[6]. Bir tarafta hafif ama uzun bağlam kapasiteli bir LLM veritabanının “global hafızasını” oluşturuyor; soru gelince taslak bir cevap üretip retriever’a ipucu veriyor. Diğer tarafta ise pahalı ama güçlü bir LLM, getirilen bilgilerle nihai cevabı üretiyor[6]. Bu mimarinin marifeti şu: belirsiz, zımni bilgi gerektiren ya da çok parçalı (multi-hop) sorularda klasik RAG çuvallarken MemoRAG insan beynine benzer bir biçimde “şu konuyla ilgili bir şey hatırlıyorum” diyerek doğru yere bakıyor[6].
6) RAG-Thief — RAG’a Karşı Saldırı Aracı (Evet, Saldırı)
Bu biraz farklı bir kategori. RAG-Thief bir RAG çeşidi değil, RAG sistemlerine karşı geliştirilmiş ajan tabanlı bir gizlilik saldırısı[7]. Sistem önce bir saldırgan sorgu üretiyor, dönen cevaplardan veri parçaları topluyor, sonra topladıklarına bakarak yeni saldırgan sorgular geliştiriyor[7]. Yerel makineye kurulu RAG uygulamalarından ve hatta OpenAI GPTs ile ByteDance Coze gibi gerçek platformlardan özel bilgi tabanlarının %70’inden fazlasını sızdırabildiği gösterilmiş[7]. Yani aslında RAG-Thief bizim için bir “kendi sistemimi nasıl koruyacağıma dair tehdit modeli” olarak okunmalı.
7) AssistRAG — Asistanlı RAG Mimarisi
AssistRAG, ana LLM’i sabit (static) tutup yanına eğitilebilir bir “akıllı bilgi asistanı” koyuyor[8]. Bu asistan hafıza yönetimi, araç kullanımı, eylem planlama ve not alma gibi görevleri üstleniyor. Eğitim iki aşamalı: önce Müfredatlı Asistan Öğrenmesi (Curriculum Assistant Learning), sonra Pekiştirmeli Tercih Optimizasyonu (Reinforced Preference Optimization)[8]. Bu yaklaşımın güzelliği şurada: ana LLM değiştiğinde her şeyi sıfırdan eğitmek gerekmiyor, sadece asistanı taşıyorsun.
8) LaB-RAG — Etiketlerle Güçlendirilmiş RAG (Radyoloji İçin)
LaB-RAG (Label Boosted RAG) tıbbi görüntü altyazılama (image captioning) için tasarlandı, özellikle de göğüs röntgeni raporları üretmek için[9]. Püf noktası şu: LLM’e röntgen görüntüsünü hiç göstermiyor. Önce basit sınıflandırıcılar X-ray’lerden kategorik etiketler çıkarıyor, sonra bu etiketler klasik RAG sürecini güçlendirmek için kullanılıyor[9]. Ne LLM eğitiliyor ne de görüntü kodlayıcı (image encoder) değiştiriliyor — yine de fine-tune edilmiş modellerle yarışan sonuçlar veriyor[9].
9) Video-RAG — Uzun Videoları Anlamak İçin RAG
Büyük video-dil modelleri (Large Video-Language Models – LVLMs) uzun videolarda zorlanıyor çünkü bağlam pencereleri yetersiz. Video-RAG bu sorunu eğitimsiz (training-free) bir yöntemle çözüyor[10]. Açık kaynak araçlarla videodan OCR (Optical Character Recognition), ASR (Automatic Speech Recognition) ve nesne tespiti (object detection) gibi metinsel bilgiler çıkarıyor, sonra bu metinleri “auxiliary text” olarak LVLM’e ekliyor[10]. Tek turlu bir geri getirme yaptığı için hafif kalıyor ve 72B parametrelik açık kaynak modelle GPT-4o ile Gemini 1.5 Pro’yu geçtiği gösterilmiş[10].
10) RAF — Zaman Serisi Tahmini için RAG
Retrieval-Augmented Forecasting (RAF), Chronos gibi Zaman Serisi Temel Modellerini (Time-Series Foundation Models – TSFMs) güçlendirmek için tasarlandı[11]. Mantık çok zekice: yeni bir zaman serisi tahmin etmeden önce, geçmişte benzer örüntüleri olan zaman serilerini geri getirip modele “bak, böyle bir şey daha önce şöyle devam etmişti” diyor[11]. Özellikle dağılım dışı (out-of-domain) veri setlerinde, yani modelin daha önce hiç görmediği alanlarda tahmin doğruluğunu ciddi şekilde artırıyor[11].
11) RuAG — Mantık Kuralları ile Güçlendirilmiş RAG
RuAG’ın yaklaşımı diğerlerinden çok farklı. Hem in-context learning hem de RAG’ın bağlam penceresi sınırı problemi var; bilgiyi sıkıştırmak gerekiyor. RuAG, büyük miktarda offline veriyi yorumlanabilir birinci dereceden mantık kurallarına (first-order logic rules) dönüştürüyor ve bu kuralları LLM prompt’una enjekte ediyor[12]. Önce LLM kendi sağduyusuyla yüklem (predicate) tanımlıyor, sonra Monte Carlo Ağaç Araması ile veri içinden mantık kurallarını keşfediyor, son olarak bu kurallar doğal dile çevrilip prompt’a ekleniyor[12]. ICLR 2025’te yayınlandı ve Microsoft’un açık kaynak deposunda mevcut[13].
12) MMed-RAG — Tıbbi Görüntü-Dil Modelleri için Çok Modlu RAG
MMed-RAG, tıbbi büyük görüntü-dil modellerindeki (Medical Large Vision-Language Models) gerçeklik halüsinasyonunu (factual hallucination) azaltmak için geliştirildi[14]. Üç yenilik getiriyor: alana duyarlı geri getirme mekanizması (domain-aware retrieval), getirilen bağlamları adaptif olarak seçme ve RAG tabanlı tercih ince ayarı (preference fine-tuning)[14]. Radyoloji, oftalmoloji ve patoloji içeren beş tıbbi veri setinde gerçeklik doğruluğunu ortalama %43.8 artırmış[14].
13) Path-RAG — Patoloji Görüntülerinde Bölge Bazlı Geri Getirme
Path-RAG, açık uçlu patoloji görsel soru cevaplama (Open-ended Pathology Visual Question Answering) için tasarlandı[15]. HistoCartography adlı bir araçla patoloji görüntülerinden ilgili alan bilgisi çıkarıyor ve doğru yamaları (patches) seçiyor[15]. Yani sisteme “tüm görüntüye bak” demek yerine “şu hücre yapısı şurada, şu doku tipi burada” diye işaret ediyor. LLaVA-Med’in doğruluğunu %38’den %47’ye çıkarmış, H&E boyalı görüntülerde %28’lik artış sağlamış[15].
14) Multi-Reranker — Birden Fazla Reranker’la Maksimum Performans
Multi-Reranker, ACM-ICAIF ’24 FinanceRAG yarışması için geliştirilmiş finans odaklı bir RAG sistemi[16]. Püf noktası: tek bir reranker yerine birden fazla reranker modelini birleştiriyor[16]. Ayrıca uzun bağlam yönetimi için yenilikçi bir yöntem getiriyor ki bu sayede LLM çok uzun girdilerle bile potansiyelini kaybetmiyor[16]. Yarışma odaklı geliştirilmiş olsa da finansal RAG sistemleri için somut bir referans uygulama.
15) G-RAG — Graf Tabanlı Yeniden Sıralama
Klasik RAG, belgeler arasındaki bağlantıları göremez. G-RAG bu boşluğu Graf Sinir Ağları (Graph Neural Networks – GNNs) ile dolduruyor[17]. Retriever ile reader arasına yerleşip belgeler arası bağlantıları ve semantik bilgiyi (Soyut Anlam Temsili – Abstract Meaning Representation grafları aracılığıyla) birleştirip bağlama duyarlı bir sıralama yapıyor[17]. PaLM 2’yi reranker olarak kullanmaktan bile daha iyi sonuç verdiği, hatta çok daha küçük hesap maliyetiyle bunu yaptığı gösterilmiş[17]. Yani büyük LLM ile rerank yapmak her zaman doğru cevap değilmiş.
16) RAGDiffusion — Difüzyon Modelleri İçin RAG
Son olarak görsel üretim dünyasından bir örnek: RAGDiffusion, standart kıyafet (clothing asset) görüntüleri üretmek için tasarlandı[18]. Stable Diffusion gibi modeller bu işte kaybolmuş kıyafet detayları, yapısal bozulmalar ve halüsinasyonlar üretebiliyor[18]. RAGDiffusion, dil modellerinden ve harici veritabanlarından bilgi asimile ederek bu yapısal bütünlüğü sağlıyor ve halüsinasyonları azaltıyor[18]. ICCV 2025’te yayınlandı.
Şimdi En Heyecanlı Kısım: LangGraph ve LangChain ile Hangilerini Yapabiliriz?
Şimdi gerçek dünyaya inelim. Hepsini tek tek değerlendireceğiz.
Doğrudan Yapılabilir Olanlar
HtmlRAG kesinlikle yapılabilir. LangChain’in BSHTMLLoader, UnstructuredHTMLLoader ve WebBaseLoadergibi yükleyicileri zaten HTML belgeleri işliyor[19]. BeautifulSoupTransformer ile etiket bazlı çıkarım yapabiliyoruz[20]. HtmlRAG’ın budama mantığını LangChain üzerine kendimiz yazmamız gerekiyor ama altyapı hazır.
Auto-RAG LangGraph için adeta biçilmiş kaftan. LangGraph zaten döngüsel (cyclic) iş akışları için tasarlandı[21]; LLM’in çok turlu olarak retriever ile konuşması ve “yeterli bilgim var mı?” diye karar vermesi tam LangGraph mantığı. Resmi LangChain dokümantasyonunda agentic RAG örneği zaten bunu anlatıyor[22].
MemoRAG’ın ana mantığı (iki LLM, biri taslak/ipucu üreten hafif olan, biri nihai cevabı üreten güçlü olan) LangGraph’ta iki düğüm (node) olarak modellenebilir. Hafıza katmanı için LangChain’in çeşitli hafıza primitive’leri var; LangGraph’ın MemorySaver ve checkpoint mekanizması da işe yarıyor[23].
AssistRAG’ın asistan + ana LLM mimarisi LangGraph’ta alt-graf (subgraph) olarak rahatlıkla kurulabilir. Asistan kendi araçlarını (knowledge extraction, note-taking, query decomposition) çağıran bir ajan olarak modellenebilir; ana LLM ise saf üretici olarak kalır. AssistRAG’ın kendi açık kaynak deposu var ama mimari LangGraph’a doğrudan uyuyor[24].
G-RAG prensip olarak yapılabilir ama biraz iş gerektirir. LangChain’in retriever ve reranker arayüzleri var; AMR grafiklerini ve GNN’i kendin entegre etmen gerekir. Yani LangChain altyapısı uyumlu ama hazır bir G-RAG bileşeni yok[17].
Multi-Reranker birebir yapılabilir. LangChain ContextualCompressionRetriever ve EnsembleRetriever gibi yapılarla birden fazla reranker’ı zincirleyebiliyorsun[16]. Reciprocal Rank Fusion (RRF) zaten LangChain ekosisteminde yaygın bir desen.
Video-RAG yapılabilir. LangChain’in çoklu modlu (multimodal) RAG şablonları, video transkriptleri için yükleyicileri ve MultiVectorRetriever mevcut[25]. OCR, ASR ve nesne tespiti gibi araçları LangChain’den çağırıp çıktıları metin olarak embed etmek standart bir multimodal RAG iş akışı[25].
Kısmen veya Dolaylı Yapılabilir Olanlar
CORAG’ın MCTS kısmı LangChain’de hazır değil. MCTS algoritmasını kendin yazıp LangChain retriever’ları üzerinde bir orkestrasyon katmanı kurman gerekir. LangGraph’ın graf yapısı buna uygun zemin sağlıyor ama bileşen hazır değil.
RuAG da benzer şekilde — mantık kuralı çıkarma (rule mining) ve MCTS LangChain’de yok. Microsoft’un kendi açık kaynak deposunu kullanıp LangChain’in prompt yönetimiyle birleştirmek mantıklı[13]. Yani RuAG’ı LangChain üzerine “monte etmek” mümkün ama sıfırdan inşa zor.
MMed-RAG ve Path-RAG alana özgü (domain-specific) sistemler. LangChain multimodal RAG altyapısı var ve BiomedCLIP gibi modelleri çağırabiliyorsun, ama HistoCartography veya tıbbi alan etiketleme gibi parçaları kendin entegre etmen gerekir. Yani çekirdek RAG iş akışı LangGraph’ta kurulur ama tıbbi özel modeller harici kalır.
LaB-RAG‘ı LangChain ile yapmak da benzer mantıkta — etiket çıkarma için BioViL-T gibi modelleri ayrı çağırırsın, sonra etiket-augmented retrieval’ı LangChain’de döndürürsün.
Yapılması Çok Zor veya Anlamsız Olanlar
FastRAG semi-structured network verilerine özel; bilgi grafiği sorgu dili (Graph Query Language – GQL) üzerinde çalışıyor. LangChain’in GraphCypherQAChain gibi graf sorgulama bileşenleri var ama FastRAG’ın schema/script learning kısmını sıfırdan inşa etmek gerekir.
RAF zaman serisi modelleri için. LangChain’in özünde LLM odaklı olduğu için Chronos gibi TSFM’lere doğrudan bağlanmak için hazır primitive’i yok. Yapılabilir ama “LangGraph ile yapılır” demek biraz zorlama.
RAGDiffusion difüzyon modelleri için. LangChain text-to-image üretiminde merkezi rol oynamıyor; RAGDiffusion’ı yapmak için PyTorch ve diffusers kütüphaneleriyle çalışman daha mantıklı.
RAG-Thief zaten bir RAG çeşidi değil, saldırı aracı. LangChain ile bir RAG sistemi kurarsın ama RAG-Thief’i implement etmek LangChain işi değil; ajan tabanlı saldırı mantığını LangGraph’ta modelleyebilirsin teorik olarak ama bu pek de etik bir egzersiz değil.
Özet Tablo Yerine Kısa Bir Sentez
LangGraph aslında bu listenin yarısından fazlası için fevkalade bir orkestrasyon zemini sunuyor. Özellikle Auto-RAG, MemoRAG, AssistRAG gibi çok turlu, kararlı ve döngülü sistemler için LangGraph’ın durum makinesi (state machine) yaklaşımı tam yerine oturuyor[26]. Self-RAG ve Corrective RAG için zaten resmi tutorial’lar mevcut[27][28], bunlar da listemizdeki birçok yöntemin (özellikle Auto-RAG, MMed-RAG’daki adaptive selection) yapı taşı niteliğinde.
LangChain ise belge yükleme, embedding, vector store entegrasyonu ve reranker katmanlarıyla altyapı sağlıyor. Yani çoğu RAG çeşidinde “veri tarafı” hazır, “akış tarafı” için LangGraph devreye giriyor. İhtiyacın olan şey alana özgü modeller (tıbbi, video, zaman serisi) ve özel algoritmalar (MCTS, GNN reranking, kural çıkarımı) için kendi kodunu yazmak veya ilgili açık kaynak depolarını entegre etmek.
Yani şöyle düşünebiliriz: LangGraph + LangChain bize bir mutfak veriyor. 16 yemekten 9-10 tanesini bu mutfakta rahatlıkla pişirebiliriz, 4-5 tanesi için “özel malzeme” getirmemiz gerek, geri kalan ikisi (RAGDiffusion ve RAF) farklı bir mutfağa ait. Ama önemli olan şu: LangGraph’ı öğrenirsen bu 16 yöntemin altında yatan ortak mantığı — döngüsel akış, durum yönetimi, ajan tabanlı karar verme — kavramış oluyorsun. Geri kalanı sadece “hangi modeli/algoritmayı çağıracağım” detayı.
Bu konularda uygulamalı olarak kendini geliştirmek istiyorsan VBO AILLM Bootcamp tam sana göre.
İyi kodlamalar, sevgiyle kal.
Kaynaklar
[1] Turing Post — 16 New Types of Retrieval-Augmented Generation (RAG): https://www.turingpost.com/p/16-new-types-of-rag
[2] Tan, J. et al. — HtmlRAG: HTML is Better Than Plain Text for Modeling Retrieved Knowledge in RAG Systems, arXiv:2411.02959: https://arxiv.org/pdf/2411.02959
[3] Abane, A. et al. — FastRAG: Retrieval Augmented Generation for Semi-structured Data, arXiv:2411.13773: https://arxiv.org/abs/2411.13773
[4] Yu, T., Zhang, S., Feng, Y. — Auto-RAG: Autonomous Retrieval-Augmented Generation for Large Language Models, arXiv:2411.19443: https://arxiv.org/abs/2411.19443
[5] CARROT (CORAG): A Learned Cost-Constrained Retrieval Optimization System for RAG, arXiv:2411.00744: https://arxiv.org/abs/2411.00744
[6] Qian, H. et al. — MemoRAG: Boosting Long Context Processing with Global Memory-Enhanced Retrieval Augmentation, arXiv:2409.05591: https://arxiv.org/abs/2409.05591
[7] Jiang, C. et al. — RAG-Thief: Scalable Extraction of Private Data from Retrieval-Augmented Generation Applications with Agent-based Attacks, arXiv:2411.14110: https://arxiv.org/abs/2411.14110v1
[8] Zhou, Y., Liu, Z., Dou, Z. — AssistRAG: Boosting the Potential of Large Language Models with an Intelligent Information Assistant, arXiv:2411.06805 (NeurIPS 2024): https://arxiv.org/abs/2411.06805
[9] Song, S. et al. — LaB-RAG: Label Boosted Retrieval Augmented Generation for Radiology Report Generation, arXiv:2411.16523: https://arxiv.org/abs/2411.16523
[10] Luo, Y. et al. — Video-RAG: Visually-aligned Retrieval-Augmented Long Video Comprehension, arXiv:2411.13093 (NeurIPS 2025): https://arxiv.org/abs/2411.13093
[11] Yang, K. et al. — Retrieval Augmented Time Series Forecasting (RAF), arXiv:2411.08249: https://arxiv.org/abs/2411.08249
[12] Zhang, Y. et al. — RuAG: Learned-rule-augmented Generation for Large Language Models, arXiv:2411.03349 (ICLR 2025): https://arxiv.org/abs/2411.03349
[13] Microsoft RuAG GitHub repository: https://github.com/microsoft/RuAG
[14] Xia, P. et al. — MMed-RAG: Versatile Multimodal RAG System for Medical Vision Language Models, arXiv:2410.13085: https://arxiv.org/abs/2410.13085
[15] Naeem, A. et al. — Path-RAG: Knowledge-Guided Key Region Retrieval for Open-ended Pathology Visual Question Answering, arXiv:2411.17073: https://arxiv.org/abs/2411.17073v1
[16] Choi, J. et al. — Multi-Reranker: Maximizing performance of retrieval-augmented generation in the FinanceRAG challenge, arXiv:2411.16732: https://arxiv.org/pdf/2411.16732
[17] Dong, J. et al. — Don’t Forget to Connect! Improving RAG with Graph-based Reranking (G-RAG), arXiv:2405.18414: https://arxiv.org/abs/2405.18414
[18] Tan, X. et al. — RAGDiffusion: Faithful Cloth Generation via External Knowledge Assimilation, arXiv:2411.19528 (ICCV 2025): https://arxiv.org/abs/2411.19528
[19] LangChain HTML document loaders documentation: https://python.langchain.com/v0.1/docs/modules/data_connection/document_loaders/html/
[20] LangChain BeautifulSoup integration documentation: https://docs.langchain.com/oss/python/integrations/document_transformers/beautiful_soup
[21] LangChain — Self-Reflective RAG with LangGraph (official blog): https://www.langchain.com/blog/agentic-rag-with-langgraph
[22] LangChain — Build a custom RAG agent with LangGraph (official docs): https://docs.langchain.com/oss/python/langgraph/agentic-rag
[23] Rodrigues, W. — Building an Agentic RAG with LangGraph: A Step-by-Step Guide: https://medium.com/@wendell_89912/building-an-agentic-rag-with-langgraph-a-step-by-step-guide-009c5f0cce0a
[24] AssistRAG official code repository (NeurIPS 2024): https://github.com/smallporridge/AssistRAG
[25] Redis — Explore the new Multimodal RAG template from LangChain and Redis: https://redis.io/blog/explore-the-new-multimodal-rag-template-from-langchain-and-redis/
[26] Qdrant — Agentic RAG with LangGraph tutorial: https://qdrant.tech/documentation/tutorials-build-essentials/agentic-rag-langgraph/
[27] DataCamp — Self-RAG: A Guide With LangGraph Implementation: https://www.datacamp.com/tutorial/self-rag
[28] DataCamp — Corrective RAG (CRAG) Implementation With LangGraph: https://www.datacamp.com/tutorial/corrective-rag-crag
[29] LangGraph official tutorial — Adaptive RAG: https://langchain-ai.github.io/langgraph/tutorials/rag/langgraph_adaptive_rag/
[30] Video-RAG official implementation (NeurIPS 2025): https://github.com/Leon1207/Video-RAG-master
[31] Kapak Görseli: Photo by Steve A Johnson on Unsplash