Soha85 commited on
Commit
e6b91d3
·
verified ·
1 Parent(s): 4f6ff3a

Update index.html

Browse files
Files changed (1) hide show
  1. index.html +312 -71
index.html CHANGED
@@ -376,6 +376,44 @@
376
  font-size: 0.85em;
377
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
378
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
379
  </style>
380
  </head>
381
  <body>
@@ -385,6 +423,7 @@
385
  <div class="tabs">
386
  <button class="tab active" onclick="switchTab('rag')">RAG</button>
387
  <button class="tab" onclick="switchTab('chunking')">Chunking</button>
 
388
  </div>
389
 
390
  <!-- RAG TYPES TAB -->
@@ -484,6 +523,205 @@
484
  </div>
485
  </div>
486
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
487
  </div>
488
 
489
  <script>
@@ -522,15 +760,15 @@
522
  paperUrl: "https://arxiv.org/abs/2407.21059"
523
  },
524
  {
525
- type: "Graph RAG",
526
  year: 2024,
527
- category: "Structural & Modular",
528
- indexing: "Preprocessing → Entity/Relation ExtractionStore in Knowledge Graph (KG) & Vector DB",
529
- inference: "User Query → Embedding/KG QuerySimultaneous Retrieval (Vector + KG Path) Concatenation → LLM Generate",
530
- benefits: "Resolves complex, multi-hop queries by leveraging factual relationships; Improves interpretability and fact consistency.",
531
- challenges: "High indexing complexity (KG construction); Expensive maintenance for rapidly changing data; Retrieval latency can be high.",
532
- references: "Barry, M., et al. (2025). GraphRAG: Leveraging Graph-Based Efficiency to Minimize Hallucinations in LLM-Driven RAG. GenAIK Workshop.",
533
- paperUrl: "https://aclanthology.org/2025.genaik-1.6/"
534
  },
535
  {
536
  type: "MultiModal RAG",
@@ -543,6 +781,17 @@
543
  references: "Gao, Y., et al. (2024). Retrieval-Augmented Multimodal Language Modeling. CVPR 2024.",
544
  paperUrl: "https://arxiv.org/abs/2211.12561"
545
  },
 
 
 
 
 
 
 
 
 
 
 
546
  {
547
  type: "Recursive RAG",
548
  year: 2024,
@@ -555,15 +804,15 @@
555
  paperUrl: "https://arxiv.org/abs/2405.10627"
556
  },
557
  {
558
- type: "Cache RAG",
559
  year: 2024,
560
- category: "Modular",
561
- indexing: "Preprocessing → Standard Chunking → Embedding → Vector DB Storage",
562
- inference: "User Query → Cache LookupIf Hit: Return Cached AnswerIf Miss: Standard Retrieval → LLM GenerateCache Store",
563
- benefits: "Dramatically improves latency and reduces LLM cost for repeated or highly similar queries.",
564
- challenges: "Complex cache invalidation logic; Requires robust query similarity and hashing functions.",
565
- references: "Jin, C., et al. (2024). RAGCache: Efficient Knowledge Caching for Retrieval-Augmented Generation. ACM TOCS.",
566
- paperUrl: "https://arxiv.org/abs/2404.12457"
567
  },
568
  {
569
  type: "Corrective RAG",
@@ -576,17 +825,6 @@
576
  references: "Yan, S.-Q., et al. (2024). Corrective Retrieval Augmented Generation. arXiv:2401.15884",
577
  paperUrl: "https://arxiv.org/abs/2401.15884"
578
  },
579
- {
580
- type: "Multi-Hop RAG",
581
- year: 2024,
582
- category: "Structural & Modular",
583
- indexing: "Preprocessing → Chunking/Entity Extraction → Embedding → Structured Storage (Vector DB + Optional KG)",
584
- inference: "User Query → Query Decomposition → Hop 1 Retrieval → Iterative Reasoning → Hop 2 Retrieval → Final Evidence Aggregation → LLM Generate",
585
- benefits: "Solves questions requiring reasoning across multiple independent documents or retrieval steps.",
586
- challenges: "Prone to error propagation (if one hop fails); Significantly higher latency; Requires generation of accurate intermediate queries.",
587
- references: "Tang, B., & Yang, Y. (2024). MultiHop-RAG: Benchmarking Retrieval-Augmented Generation for Multi-Hop Queries. COLM 2024.",
588
- paperUrl: "https://arxiv.org/abs/2401.15391"
589
- },
590
  {
591
  type: "Agentic RAG",
592
  year: 2024,
@@ -634,15 +872,6 @@
634
  ];
635
 
636
  const chunkingData = [
637
- {
638
- type: "Fixed-size Chunking",
639
- year: 2001,
640
- category: "Size-based",
641
- workflow: "Input Document → Split by Fixed Token/Word Count (200-500 tokens) → Create Chunks → Output Chunks",
642
- description: "Splits text into chunks based on a fixed number of tokens/words (e.g., 200-500 tokens). Simple but may break semantic boundaries.",
643
- references: "Collobert, R., et al. (2011). Natural language processing (almost) from scratch. Journal of Machine Learning Research 12:2493-2537.",
644
- paperUrl: "https://www.jmlr.org/papers/volume12/collobert11a/collobert11a.pdf"
645
- },
646
  {
647
  type: "Sliding Window Chunking",
648
  year: 1998,
@@ -651,24 +880,24 @@
651
  description: "Uses a fixed chunk size plus overlap (e.g., chunk size 300, overlap 100). Maintains context continuity across chunks.",
652
  references: "Carbonell, J. & Goldstein, J. (1998). The use of MMR, diversity-based reranking for reordering documents. SIGIR 1998.",
653
  paperUrl: "https://dl.acm.org/doi/10.1145/290941.291025"
654
- },
655
  {
656
- type: "Semantic Chunking",
657
- year: 2024,
658
- category: "Semantic-based",
659
- workflow: "Input Document → Analyze Topic Shifts/Semantic Boundaries Split at Semantic Breaks → Create Semantically Coherent Chunks → Output Chunks",
660
- description: "Chunks based on topic shifts or semantic boundaries rather than size. Preserves meaning and context.",
661
- references: "LangChain (2024). Semantic chunker. Accessed 2024-09-14.",
662
- paperUrl: "https://python.langchain.com/docs/how_to/semantic-chunker/"
663
  },
664
  {
665
- type: "Sentence-based Chunking",
666
- year: 2024,
667
- category: "Structure-based",
668
- workflow: "Input Document → Split by Sentences Group Sentences (Optional) → Create Sentence Chunks → Output Chunks",
669
- description: "Splits text by sentences. Maintains grammatical integrity and natural language boundaries.",
670
- references: "Dong, K., et al. (2024). Multi-view content-aware indexing for long document retrieval. arXiv:2404.15103",
671
- paperUrl: "https://arxiv.org/abs/2404.15103"
672
  },
673
  {
674
  type: "Paragraph-based Chunking",
@@ -688,6 +917,24 @@
688
  references: "Latif, S., et al. (2025). The Chunking Paradigm: Recursive Semantic for RAG. ICNLSP 2025.",
689
  paperUrl: "https://aclanthology.org/2025.icnlsp-1.16/"
690
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
691
  {
692
  type: "Hybrid Chunking",
693
  year: 2024,
@@ -697,15 +944,6 @@
697
  references: "Kamradt, G. (2024). 5 levels of text splitting.",
698
  paperUrl: ""
699
  },
700
- {
701
- type: "Discourse-aware Chunking",
702
- year: 2005,
703
- category: "Semantic-based",
704
- workflow: "Input Document → Identify Discourse Markers (however, in contrast, therefore) → Detect Conceptual Shifts → Split at Discourse Boundaries → Output Discourse Chunks",
705
- description: "Uses discourse markers (e.g., 'however', 'in contrast', 'therefore') to detect conceptual shifts and chunk accordingly.",
706
- references: "Sporleder, C. & Lapata, M. (2005). Discourse Chunking and its Application to Sentence Compression. HLT 2005.",
707
- paperUrl: "https://aclanthology.org/H05-1033/"
708
- },
709
  {
710
  type: "Embedding-similarity-based Chunking",
711
  year: 2024,
@@ -715,15 +953,6 @@
715
  references: "Kamradt, G. (2024). 5 levels of text splitting.",
716
  paperUrl: ""
717
  },
718
- {
719
- type: "Metadata-based Chunking",
720
- year: 2025,
721
- category: "Structure-based",
722
- workflow: "Input Document → Extract Metadata (headers, bullets, sections) → Split Using Metadata Structure → Create Metadata-aware Chunks → Output Chunks",
723
- description: "Splits text using document metadata (e.g., headers, bullets). Preserves document structure and hierarchy.",
724
- references: "Zhao, J., et al. (2025). MoC: Mixtures of Text Chunking Learners for Retrieval-Augmented Generation. ACL 2025.",
725
- paperUrl: "https://aclanthology.org/2025.acl-long.1/"
726
- },
727
  {
728
  type: "Page-based Chunking",
729
  year: 2024,
@@ -741,6 +970,15 @@
741
  description: "Tailored to content type (e.g., legal documents by sections, medical records by encounters, code by functions).",
742
  references: "Allamraju, A., et al. (2024). Breaking It Down: Domain-Aware Semantic Segmentation for Retrieval Augmented Generation. arXiv:2512.00367",
743
  paperUrl: "https://arxiv.org/abs/2512.00367"
 
 
 
 
 
 
 
 
 
744
  }
745
  ];
746
 
@@ -769,11 +1007,14 @@
769
  if (tabName === 'rag') {
770
  tabs[0].classList.add('active');
771
  document.getElementById('rag-content').classList.add('active');
772
- } else {
773
  tabs[1].classList.add('active');
774
  document.getElementById('chunking-content').classList.add('active');
775
  initChunkingVisualizations();
776
- }
 
 
 
777
  }
778
 
779
  function getCategoryBadgeClass(category) {
 
376
  font-size: 0.85em;
377
  box-shadow: 0 2px 4px rgba(0,0,0,0.1);
378
  }
379
+ .rag-table {
380
+ width: 100%;
381
+ border-collapse: collapse;
382
+ margin-bottom: 2rem;
383
+ font-size: 0.95rem;
384
+ }
385
+
386
+ .rag-table th,
387
+ .rag-table td {
388
+ border: 1px solid #ddd;
389
+ padding: 8px;
390
+ vertical-align: top;
391
+ color: #666;
392
+ font-size: 0.9em;
393
+ font-style: italic;
394
+ margin-bottom: 10px;
395
+ line-height: 1.5;
396
+ }
397
+
398
+ .rag-table th {
399
+ background-color: #5b6ee1;
400
+ color: #fff;
401
+ text-align: left;
402
+ }
403
+
404
+ .rag-table tr:nth-child(even) {
405
+ background-color: #f5f6fa;
406
+ }
407
+
408
+ .rag-table a {
409
+ color: #1a4cff;
410
+ text-decoration: none;
411
+ font-weight: 500;
412
+ }
413
+
414
+ .rag-table a:hover {
415
+ text-decoration: underline;
416
+ }
417
  </style>
418
  </head>
419
  <body>
 
423
  <div class="tabs">
424
  <button class="tab active" onclick="switchTab('rag')">RAG</button>
425
  <button class="tab" onclick="switchTab('chunking')">Chunking</button>
426
+ <button class="tab" onclick="switchTab('indexing-db')">Indexing & Vector DB</button>
427
  </div>
428
 
429
  <!-- RAG TYPES TAB -->
 
523
  </div>
524
  </div>
525
  </div>
526
+
527
+ <!-- INDEXING TAB -->
528
+ <div id="indexing-db" class="tab-content">
529
+ <div class="grid">
530
+ <div class="card">
531
+ <h4>🧮 Indexing Techniques (Algorithmic Level)</h4>
532
+ <p>Algorithmic methods for organizing and searching vectors efficiently. These are the core algorithms that determine how vectors are structured and retrieved (e.g., Flat Index, ANN, IVF, HNSW, PQ/OPQ).</p>
533
+ </div>
534
+ <div class="card">
535
+ <h4>💾 Vector Databases (System Level)</h4>
536
+ <p>Complete systems/engines that implement indexing techniques along with additional features like persistence, metadata support, distributed architecture, and APIs. They are the production-grade platforms (e.g., FAISS, Milvus, Pinecone, Weaviate).</p>
537
+ </div>
538
+ </div>
539
+ <!-- ---------- INDEXING TECHNIQUES TABLE ---------- -->
540
+ <div class="card">
541
+ <table class="rag-table">
542
+ <thead>
543
+ <tr>
544
+ <th>Indexing Technique</th>
545
+ <th>Description</th>
546
+ <th>Workflow</th>
547
+ <th>Pros</th>
548
+ <th>Cons</th>
549
+ <th>Peer-Reviewed Reference</th>
550
+ </tr>
551
+ </thead>
552
+ <tbody>
553
+ <tr>
554
+ <td>Flat Index (Brute-Force)</td>
555
+ <td>Exact similarity search over all vectors using distance metrics.</td>
556
+ <td>
557
+ Embed documents → store vectors → compare query with all vectors → return top-k
558
+ </td>
559
+ <td>Exact results<br>Simple implementation</td>
560
+ <td>Not scalable<br>High latency & memory cost</td>
561
+ <td class="timeline-reference">
562
+ <a href="https://proceedings.neurips.cc/paper_files/paper/2020/file/6b493230205f780e1bc26945df7481e5-Paper.pdf" target="_blank">
563
+ Lewis, P., Perez, E., Piktus, A., Petroni, F., Karpukhin, V., Goyal, N., Küttler, H., Lewis, M., Yih, W., Rocktäschel, T., Riedel, S., & Kiela, D. (2020). Retrieval‑augmented generation for knowledge‑intensive NLP tasks. In H. Larochelle, M. Ranzato, R. Hadsell, M. F. Balcan, & H. T. Lin (Eds.), Advances in Neural Information Processing Systems, 33, 9459–9474. Curran Associates, Inc.
564
+ </a>
565
+ </td>
566
+ </tr>
567
+
568
+ <tr>
569
+ <td>ANN (Approximate Nearest Neighbor)</td>
570
+ <td>Fast similarity search with controlled approximation.</td>
571
+ <td>
572
+ Embed documents → build ANN structure → retrieve approximate neighbors
573
+ </td>
574
+ <td>Fast retrieval<br>Scales to millions/billions</td>
575
+ <td>Approximate (not exact)</td>
576
+ <td class="timeline-reference">
577
+ <a href="https://simg.baai.ac.cn/paperfile/25a43194-c74c-4cd3-b60f-0a1f27f8b8af.pdf" target="_blank">
578
+ Gao, Y., Xiong, Y., Gao, X., Jia, K., Pan, J., Bi, Y., Dai, Y., Sun, J., Wang, M., & Wang, H. (2024). Retrieval‑Augmented Generation for Large Language Models: A Survey (arXiv:2312.10997). arXiv Preprint. https://doi.org/10.48550/arXiv.2312.10997
579
+ </a>
580
+ </td>
581
+ </tr>
582
+
583
+ <tr>
584
+ <td>IVF (Inverted File Index)</td>
585
+ <td>Partitions vector space into clusters; searches only relevant partitions.</td>
586
+ <td>
587
+ K-means clustering → assign vectors → query nearest clusters → search inside
588
+ </td>
589
+ <td>Good speed-accuracy trade-off<br>Scalable</td>
590
+ <td>Requires tuning<br>Cluster-quality sensitive</td>
591
+ <td class="timeline-reference">
592
+ <a href="https://arxiv.org/pdf/1702.08734" target="_blank">
593
+ Johnson, J., Douze, M., & Jégou, H. (2019). Billion‑scale similarity search with GPUs. IEEE Transactions on Big Data, 7(3), 535–547. https://doi.org/10.1109/TBDATA.2019.2921572
594
+ </a>
595
+ </td>
596
+ </tr>
597
+
598
+ <tr>
599
+ <td>HNSW</td>
600
+ <td>Graph-based ANN using hierarchical proximity graphs.</td>
601
+ <td>
602
+ Build layered graph → incremental insertion → top-down graph traversal
603
+ </td>
604
+ <td>Very fast<br>High recall<br>Dynamic updates</td>
605
+ <td>High memory usage<br>Complex construction</td>
606
+ <td class="timeline-reference">
607
+ <a href="https://arxiv.org/abs/1603.09320" target="_blank">
608
+ Malkov, Y. A., & Yashunin, D. A. (2020). Efficient and robust approximate nearest neighbor search using hierarchical navigable small world graphs. IEEE Transactions on Pattern Analysis and Machine Intelligence, 42(4), 824–836. https://doi.org/10.1109/TPAMI.2018.2889473
609
+ </a>
610
+ </td>
611
+ </tr>
612
+
613
+ <tr>
614
+ <td>PQ / OPQ</td>
615
+ <td>Compresses vectors into short codes for memory-efficient ANN.</td>
616
+ <td>
617
+ Subspace split → quantization → store codes → approximate distance
618
+ </td>
619
+ <td>Memory efficient<br>Enables billion-scale RAG</td>
620
+ <td>Lossy compression<br>Lower recall if misconfigured</td>
621
+ <td class="timeline-reference">
622
+ <a href="https://www.irisa.fr/texmex/people/jegou/papers/jegou_searching_with_quantization.pdf" target="_blank">
623
+ Jégou, H., Douze, M., & Schmid, C. (2011). Product quantization for nearest neighbor search. IEEE Transactions on Pattern Analysis and Machine Intelligence, 33(1), 117–128. https://doi.org/10.1109/TPAMI.2010.57
624
+ </a>
625
+ </td>
626
+ </tr>
627
+ </tbody>
628
+ </table>
629
+ </div>
630
+ <!-- ---------- VECTOR DATABASES TABLE ---------- -->
631
+ <div class="card">
632
+ <table class="rag-table">
633
+ <thead>
634
+ <tr>
635
+ <th>Vector DB</th>
636
+ <th>Description</th>
637
+ <th>Underlying Index</th>
638
+ <th>Pros</th>
639
+ <th>Cons</th>
640
+ <th>Peer-Reviewed Reference</th>
641
+ </tr>
642
+ </thead>
643
+ <tbody>
644
+ <tr>
645
+ <td>FAISS</td>
646
+ <td>Research-oriented vector similarity library widely used in RAG.</td>
647
+ <td>Flat, IVF, HNSW, PQ, OPQ</td>
648
+ <td>Highly optimized<br>Flexible ANN<br>Academic standard</td>
649
+ <td>Not a full DBMS<br>Limited metadata</td>
650
+ <td class="timeline-reference">
651
+ <a href="https://simg.baai.ac.cn/paperfile/25a43194-c74c-4cd3-b60f-0a1f27f8b8af.pdf" target="_blank">
652
+ Gao, Y., Xiong, Y., Gao, X., Jia, K., Pan, J., Bi, Y., Dai, Y., Sun, J., Wang, M., & Wang, H. (2024). Retrieval‑Augmented Generation for Large Language Models: A Survey (arXiv:2312.10997). arXiv Preprint. https://doi.org/10.48550/arXiv.2312.10997
653
+ </a>
654
+ </td>
655
+ </tr>
656
+
657
+ <tr>
658
+ <td>Milvus</td>
659
+ <td>Distributed open-source vector database for large-scale RAG.</td>
660
+ <td>HNSW, IVF-PQ</td>
661
+ <td>Scalable<br>Distributed<br>Open-source</td>
662
+ <td>Deployment complexity<br>Operational overhead</td>
663
+ <td class="timeline-reference">
664
+ <a href="https://ijaibdcms.org/index.php/ijaibdcms/article/view/257?utm_source=chatgpt.com" target="_blank">
665
+ Rusum, G. P., & Anasuri, S. (2025). Vector databases in modern applications: Real‑time search, recommendations, and retrieval‑augmented generation (RAG). International Journal of AI, BigData, Computational and Management Studies, 5(4), Article 113. https://doi.org/10.63282/3050‑9416.IJAIBDCMS‑V5I4P113
666
+ </a>
667
+ </td>
668
+ </tr>
669
+
670
+ <tr>
671
+ <td>Pinecone</td>
672
+ <td>Fully managed vector database for production RAG systems.</td>
673
+ <td>Proprietary ANN (HNSW-like)</td>
674
+ <td>Fully managed<br>High availability<br>Scalable</td>
675
+ <td>Closed-source<br>Opaque indexing</td>
676
+ <td class="timeline-reference">
677
+ <a href="https://simg.baai.ac.cn/paperfile/25a43194-c74c-4cd3-b60f-0a1f27f8b8af.pdf" target="_blank">
678
+ Gao, Y., Xiong, Y., Gao, X., Jia, K., Pan, J., Bi, Y., Dai, Y., Sun, J., Wang, M., & Wang, H. (2024). Retrieval‑Augmented Generation for Large Language Models: A Survey (arXiv:2312.10997). arXiv Preprint. https://doi.org/10.48550/arXiv.2312.10997
679
+ </a>
680
+ </td>
681
+ </tr>
682
+
683
+ <tr>
684
+ <td>Weaviate</td>
685
+ <td>Open-source vector DB with schema & metadata-aware retrieval.</td>
686
+ <td>HNSW</td>
687
+ <td>Simple API<br>Schema support</td>
688
+ <td>High memory usage<br>Limited ANN tuning</td>
689
+ <td class="timeline-reference">
690
+ <a href="https://ijaibdcms.org/index.php/ijaibdcms/article/view/257?utm_source=chatgpt.com" target="_blank">
691
+ Rusum, G. P., & Anasuri, S. (2025). Vector databases in modern applications: Real‑time search, recommendations, and retrieval‑augmented generation (RAG). International Journal of AI, BigData, Computational and Management Studies, 5(4), Article 113. https://doi.org/10.63282/3050‑9416.IJAIBDCMS‑V5I4P113
692
+ </a>
693
+ </td>
694
+ </tr>
695
+
696
+ <tr>
697
+ <td>Elasticsearch (Vector)</td>
698
+ <td>Hybrid sparse-dense retrieval using BM25 + vectors.</td>
699
+ <td>HNSW + BM25</td>
700
+ <td>Hybrid retrieval<br>Mature ecosystem</td>
701
+ <td>Higher latency<br>Slower pure vector search</td>
702
+ <td class="timeline-reference">
703
+ <a href="https://simg.baai.ac.cn/paperfile/25a43194-c74c-4cd3-b60f-0a1f27f8b8af.pdf" target="_blank">
704
+ Gao, Y., Xiong, Y., Gao, X., Jia, K., Pan, J., Bi, Y., Dai, Y., Sun, J., Wang, M., & Wang, H. (2024). Retrieval‑Augmented Generation for Large Language Models: A Survey (arXiv:2312.10997). arXiv Preprint. https://doi.org/10.48550/arXiv.2312.10997
705
+ </a>
706
+ </td>
707
+ </tr>
708
+
709
+ <tr>
710
+ <td>Chroma</td>
711
+ <td>Lightweight developer-focused vector store for prototyping.</td>
712
+ <td>HNSW (ANN backends)</td>
713
+ <td>Easy integration<br>Fast prototyping</td>
714
+ <td>Limited scalability<br>Not enterprise-grade</td>
715
+ <td>
716
+ <a href="https://simg.baai.ac.cn/paperfile/25a43194-c74c-4cd3-b60f-0a1f27f8b8af.pdf" target="_blank">
717
+ Gao, Y., Xiong, Y., Gao, X., Jia, K., Pan, J., Bi, Y., Dai, Y., Sun, J., Wang, M., & Wang, H. (2024). Retrieval‑Augmented Generation for Large Language Models: A Survey (arXiv:2312.10997). arXiv Preprint. https://doi.org/10.48550/arXiv.2312.10997
718
+ </a>
719
+ </td>
720
+ </tr>
721
+ </tbody>
722
+ </table>
723
+ </div>
724
+ </div>
725
  </div>
726
 
727
  <script>
 
760
  paperUrl: "https://arxiv.org/abs/2407.21059"
761
  },
762
  {
763
+ type: "Cache RAG",
764
  year: 2024,
765
+ category: "Modular",
766
+ indexing: "Preprocessing → Standard ChunkingEmbedding Vector DB Storage",
767
+ inference: "User Query → Cache LookupIf Hit: Return Cached AnswerIf Miss: Standard Retrieval → LLM Generate → Cache Store",
768
+ benefits: "Dramatically improves latency and reduces LLM cost for repeated or highly similar queries.",
769
+ challenges: "Complex cache invalidation logic; Requires robust query similarity and hashing functions.",
770
+ references: "Jin, C., et al. (2024). RAGCache: Efficient Knowledge Caching for Retrieval-Augmented Generation. ACM TOCS.",
771
+ paperUrl: "https://arxiv.org/abs/2404.12457"
772
  },
773
  {
774
  type: "MultiModal RAG",
 
781
  references: "Gao, Y., et al. (2024). Retrieval-Augmented Multimodal Language Modeling. CVPR 2024.",
782
  paperUrl: "https://arxiv.org/abs/2211.12561"
783
  },
784
+ {
785
+ type: "Graph RAG",
786
+ year: 2024,
787
+ category: "Structural & Modular",
788
+ indexing: "Preprocessing → Entity/Relation Extraction → Store in Knowledge Graph (KG) & Vector DB",
789
+ inference: "User Query → Embedding/KG Query → Simultaneous Retrieval (Vector + KG Path) → Concatenation → LLM Generate",
790
+ benefits: "Resolves complex, multi-hop queries by leveraging factual relationships; Improves interpretability and fact consistency.",
791
+ challenges: "High indexing complexity (KG construction); Expensive maintenance for rapidly changing data; Retrieval latency can be high.",
792
+ references: "Barry, M., et al. (2025). GraphRAG: Leveraging Graph-Based Efficiency to Minimize Hallucinations in LLM-Driven RAG. GenAIK Workshop.",
793
+ paperUrl: "https://aclanthology.org/2025.genaik-1.6/"
794
+ },
795
  {
796
  type: "Recursive RAG",
797
  year: 2024,
 
804
  paperUrl: "https://arxiv.org/abs/2405.10627"
805
  },
806
  {
807
+ type: "Multi-Hop RAG",
808
  year: 2024,
809
+ category: "Structural & Modular",
810
+ indexing: "Preprocessing → Chunking/Entity Extraction → Embedding → Structured Storage (Vector DB + Optional KG)",
811
+ inference: "User Query → Query DecompositionHop 1 Retrieval Iterative Reasoning Hop 2 Retrieval → Final Evidence Aggregation LLM Generate",
812
+ benefits: "Solves questions requiring reasoning across multiple independent documents or retrieval steps.",
813
+ challenges: "Prone to error propagation (if one hop fails); Significantly higher latency; Requires generation of accurate intermediate queries.",
814
+ references: "Tang, B., & Yang, Y. (2024). MultiHop-RAG: Benchmarking Retrieval-Augmented Generation for Multi-Hop Queries. COLM 2024.",
815
+ paperUrl: "https://arxiv.org/abs/2401.15391"
816
  },
817
  {
818
  type: "Corrective RAG",
 
825
  references: "Yan, S.-Q., et al. (2024). Corrective Retrieval Augmented Generation. arXiv:2401.15884",
826
  paperUrl: "https://arxiv.org/abs/2401.15884"
827
  },
 
 
 
 
 
 
 
 
 
 
 
828
  {
829
  type: "Agentic RAG",
830
  year: 2024,
 
872
  ];
873
 
874
  const chunkingData = [
 
 
 
 
 
 
 
 
 
875
  {
876
  type: "Sliding Window Chunking",
877
  year: 1998,
 
880
  description: "Uses a fixed chunk size plus overlap (e.g., chunk size 300, overlap 100). Maintains context continuity across chunks.",
881
  references: "Carbonell, J. & Goldstein, J. (1998). The use of MMR, diversity-based reranking for reordering documents. SIGIR 1998.",
882
  paperUrl: "https://dl.acm.org/doi/10.1145/290941.291025"
883
+ },
884
  {
885
+ type: "Fixed-size Chunking",
886
+ year: 2001,
887
+ category: "Size-based",
888
+ workflow: "Input Document → Split by Fixed Token/Word Count (200-500 tokens) → Create Chunks → Output Chunks",
889
+ description: "Splits text into chunks based on a fixed number of tokens/words (e.g., 200-500 tokens). Simple but may break semantic boundaries.",
890
+ references: "Collobert, R., et al. (2011). Natural language processing (almost) from scratch. Journal of Machine Learning Research 12:2493-2537.",
891
+ paperUrl: "https://www.jmlr.org/papers/volume12/collobert11a/collobert11a.pdf"
892
  },
893
  {
894
+ type: "Discourse-aware Chunking",
895
+ year: 2005,
896
+ category: "Semantic-based",
897
+ workflow: "Input Document → Identify Discourse Markers (however, in contrast, therefore) → Detect Conceptual ShiftsSplit at Discourse Boundaries → Output Discourse Chunks",
898
+ description: "Uses discourse markers (e.g., 'however', 'in contrast', 'therefore') to detect conceptual shifts and chunk accordingly.",
899
+ references: "Sporleder, C. & Lapata, M. (2005). Discourse Chunking and its Application to Sentence Compression. HLT 2005.",
900
+ paperUrl: "https://aclanthology.org/H05-1033/"
901
  },
902
  {
903
  type: "Paragraph-based Chunking",
 
917
  references: "Latif, S., et al. (2025). The Chunking Paradigm: Recursive Semantic for RAG. ICNLSP 2025.",
918
  paperUrl: "https://aclanthology.org/2025.icnlsp-1.16/"
919
  },
920
+ {
921
+ type: "Semantic Chunking",
922
+ year: 2024,
923
+ category: "Semantic-based",
924
+ workflow: "Input Document → Analyze Topic Shifts/Semantic Boundaries → Split at Semantic Breaks → Create Semantically Coherent Chunks → Output Chunks",
925
+ description: "Chunks based on topic shifts or semantic boundaries rather than size. Preserves meaning and context.",
926
+ references: "LangChain (2024). Semantic chunker. Accessed 2024-09-14.",
927
+ paperUrl: "https://python.langchain.com/docs/how_to/semantic-chunker/"
928
+ },
929
+ {
930
+ type: "Sentence-based Chunking",
931
+ year: 2024,
932
+ category: "Structure-based",
933
+ workflow: "Input Document → Split by Sentences → Group Sentences (Optional) → Create Sentence Chunks → Output Chunks",
934
+ description: "Splits text by sentences. Maintains grammatical integrity and natural language boundaries.",
935
+ references: "Dong, K., et al. (2024). Multi-view content-aware indexing for long document retrieval. arXiv:2404.15103",
936
+ paperUrl: "https://arxiv.org/abs/2404.15103"
937
+ },
938
  {
939
  type: "Hybrid Chunking",
940
  year: 2024,
 
944
  references: "Kamradt, G. (2024). 5 levels of text splitting.",
945
  paperUrl: ""
946
  },
 
 
 
 
 
 
 
 
 
947
  {
948
  type: "Embedding-similarity-based Chunking",
949
  year: 2024,
 
953
  references: "Kamradt, G. (2024). 5 levels of text splitting.",
954
  paperUrl: ""
955
  },
 
 
 
 
 
 
 
 
 
956
  {
957
  type: "Page-based Chunking",
958
  year: 2024,
 
970
  description: "Tailored to content type (e.g., legal documents by sections, medical records by encounters, code by functions).",
971
  references: "Allamraju, A., et al. (2024). Breaking It Down: Domain-Aware Semantic Segmentation for Retrieval Augmented Generation. arXiv:2512.00367",
972
  paperUrl: "https://arxiv.org/abs/2512.00367"
973
+ },
974
+ {
975
+ type: "Metadata-based Chunking",
976
+ year: 2025,
977
+ category: "Structure-based",
978
+ workflow: "Input Document → Extract Metadata (headers, bullets, sections) → Split Using Metadata Structure → Create Metadata-aware Chunks → Output Chunks",
979
+ description: "Splits text using document metadata (e.g., headers, bullets). Preserves document structure and hierarchy.",
980
+ references: "Zhao, J., et al. (2025). MoC: Mixtures of Text Chunking Learners for Retrieval-Augmented Generation. ACL 2025.",
981
+ paperUrl: "https://aclanthology.org/2025.acl-long.1/"
982
  }
983
  ];
984
 
 
1007
  if (tabName === 'rag') {
1008
  tabs[0].classList.add('active');
1009
  document.getElementById('rag-content').classList.add('active');
1010
+ } else if (tabName === 'chunking') {
1011
  tabs[1].classList.add('active');
1012
  document.getElementById('chunking-content').classList.add('active');
1013
  initChunkingVisualizations();
1014
+ } else if (tabName === 'indexing-db') {
1015
+ tabs[2].classList.add('active');
1016
+ document.getElementById('indexing-db').classList.add('active');
1017
+ }
1018
  }
1019
 
1020
  function getCategoryBadgeClass(category) {