# ग्राफिक आरएजी प्रमाण खण्डों का दुगुनाकरण ***सुदृढ़*आरएजी**

<datetime class="hidden">2026-01-17T14:00</datetime>

<!-- category -- C#, lucidRAG, Vector Search, Machine Learning, Knowledge Graphs -->
> **नोट** यह एक पारंपरिक ब्लॉग लेख नहीं है **तकनीकी विवरण** में एक ठोस विशेषता के लिए लिखा गया ***सुदृढ़*आरएजी**.
> मैं बार-बार इस दस्तावेज को कोड के रूप में खिसकाता हूँ।

यह दस्तावेज़ से एक उपप्रणाली का वर्णन करता है ***सुदृढ़*आरएजी**एक परियोजना मैं सक्रिय रूप से विकसित कर रहा हूँ

एक मुख्य आवश्यकता ***सुदृढ़*आरएजी** बाहर निकालने की क्षमता है **साक्ष्यों के खंड** sentences **दुगुना** उपयोगी संकेत को नष्ट करने के बिना

***सुदृढ़*आरएजी** विश्लेषण और निकालने के द्वारा कार्य करता है *उत्तम* दस्तावेजों से उपलब्ध साक्ष्य **नहीं** LLM को भंडारित करें।

इसके बजाय ***सुदृढ़*आरएजी** निर्धारात्मक और संभाव्यतावादी तकनीकों का एक विस्तृत दायरा लागू करता है

* प्रत्याशित खंड निकालें
* उनके सूचनात्मक मूल्य का मूल्यांकन
* और केवल सबसे मजबूत प्रतिनिधियों को बनाए रखें

**डीडुप्लिकेट इस प्रक्रिया का एक महत्वपूर्ण हिस्सा है**

साधारण स्ट्रिंग समानता पर्याप्त नहीं है।

**पुनःप्राप्ति समय पर समस्या जटिल होती है**

जब परिणाम निकाले जाते हैं, तो SQL के माध्यम से (Vektor embeddings,BM\25,\ या हाइब्रिड्स\),\ LLM को एकाधिक खंडों का आहार देते हुए, जो सभी एक ही मूल विचार व्यक्त करते हैं, नीरसता उत्पन्न करता है।

इस को संबोधित करने के लिए ***सुदृढ़*आरएजी** दोहरेपन को एक के रूप में देखता है **प्रथम- वर्ग संकलन समस्या**एक पोस्ट नहीं है

इस दस्तावेज का बाकी वर्णन है कि कैसे उस डेड्यूप्लिकेशन रणनीति को डिजाइन किया गया था ['अजील स्पेक्टिंग](https://www.mostlylucid.net/blog/writingfeaturespecs) कोड LLMS. की आवश्यकताओं के लिए अनुकूल

यह विचारों को crystallize करता है-, different concepts and forces the LLM to document it *सही बात बनाता है*.

[इसके बारे में अधिक देखें ***सुदृढ़*आरएजी** यहाँ ](https://www.lucidrag.com)

# दोगुना करने की रणनीति

***सुदृढ़*आरएजी** महत्वपूर्ण संकेतों को सुरक्षित करते हुए अतिरिक्त सामग्री को समाप्त करने के लिए दो चरण द्वैतरण रणनीति का उपयोग करता है **सिग्नल-संरक्षित फिल्टर**सामग्री मानकीकरण नहीं है

## ऑवरव्यू

```
┌─────────────────────────────────────────────────────────────────────────────┐
│                           INGESTION (Per Document)                          │
│                                                                             │
│  Document → Extract → Embed → DEDUPE (intra-doc) → Index to Vector Store   │
│                                   │                                         │
│                                   ├─ Near-duplicates: boost salience        │
│                                   └─ Exact duplicates: drop (no boost)      │
└─────────────────────────────────────────────────────────────────────────────┘
                                    │
                                    ▼
┌─────────────────────────────────────────────────────────────────────────────┐
│                          RETRIEVAL (Cross Document)                         │
│                                                                             │
│  Query → Search → Rank (RRF) → DEDUPE (cross-doc) → Top K → LLM Synthesis  │
│                                   │                                         │
│                                   └─ Keep segment with highest RRF score    │
└─────────────────────────────────────────────────────────────────────────────┘
```

---


## डिजाइन गारंटी

इन असमानताओं को डेड्यूप्लिकेशन सिस्टम द्वारा रखा जाता है

गारंटी
|-----------|-------------|
| **क्रमादेश सुरक्षित** RRF रैंकिंग के बाद अर्थक्रम में कभी भी परिवर्तन नहीं होता है
| **कोई अवधारणा हानि नहीं** | डिड्यूप्लिकेशन कभी भी एक अवधारणा के सभी उदाहरणों को हटाता नहीं है
| **दस्तावेज़ सीमा का पालन किया गया** | डीड्यूप्लिकेशन कभी भी प्रविष्ट होने पर दस्तावेज़ सीमाओं को पार नहीं करता है
| **अपरिवर्तनीय सामग्री** | डीड्यूप्लिकेशन कभी भी एम्बेडिंग या पाठ सामग्री को बदलता नहीं है
| **निर्णायक** दिए जाने वाले समान इनपुट और कॉन्फ़िगरेशन के साथ , डुप्लीकेट एक ही आउटपुट उत्पन्न करता है

---


## गैर

यह प्रणाली स्पष्ट रूप से करता है **नहीं** को कोशिश करें

- **तथ्यात्मक विरोधाभास पहचानें** - दो खंड जो विपरीत बातें कहते हैं दोहरा नहीं है
- **सत्य को कैनानिकल करना** - हम नहीं ' स्रोतों के बीच एक "correct" संस्करण चुनते हैं
- **इनग्रास पर दस्तावेज़ों के बीच पैराफ्रेज को संक्षिप्त करें** - प्रत्येक दस्तावेज अपने ही खंड रखता है
- **सामान्यीकरण शब्दावली** भिन्न डक में - "ML" और \"मेंशिकी सीखनेM SK4 को अलग से सुरक्षित किया जाता है
- **इकाई रिजोल्यूशन बदलें** - That's GraphRAGMSC2s jobM SK3 operating at a different level

---


## निर्धारिता & पुनरावृत्तिशीलता

दुरूपण पूर्ण रूप से निर्णायक है

- **एम्बेडिंग अपरिवर्तनीय हैं** एक बार निकालने के समय पर संगणित
- **क्रमबद्ध स्थिर है** - समान सारिता के साथ खंड मूल क्रम बनाए रखें
- **कोई अनियमितता नहीं** - नमूनाकरण नहीं
- **कोई बाहरी स्थिति नहीं** - कटौती निर्णय केवल मौजूदा खंड सेट पर निर्भर करते हैं

**यह क्यों महत्वपूर्ण है** उपयोगकर्ता त्रुटिमोचन पुनःप्राप्ति परिणाम यह विश्वास कर सकते हैं कि re-सही इनपुटों के साथ चलाने से समान आउटपुट उत्पन्न करता है ***सुदृढ़*आरएजी**अधिक व्यापक "सीमित अस्पष्टता

---


## क्यों दो चरण

### चरण 1: इंजेक्शन डिडुप्लिकेट

**लक्ष्य** भंडारण को कम करें और दस्तावेज़ में अतिरिक्तता को रोकें

**समस्या:** दस्तावेजों में अक्सर बार-बार अंतर्वस्तु होती है

- बॉयलप्लेट पाठ
- प्रतिलिपि बनाएँ
- एक ही संकल्पना कई तरीके से समझा गया

**समाधान** अनुक्रमण करने से पहले प्रत्येक दस्तावेज के भीतर प्रतिलिपि बनाएँ

**कुंजी अंतर्दृष्टि** लगभग-डुप्लीकेट को इस रूप में माना जाता है *महत्व का स्वतंत्र प्रमाण*redundancy नहीं

### चरण 2: पुनःप्राप्ति डुप्लिकेटेशन

**लक्ष्य** दस्तावेजों में अतिरिक्त सूचना प्राप्त करने से एलएलएम को रोकें

**समस्या:** जब अनेक दस्तावेजों के बीच क्वेरी किया जाता है, समान अनुच्छेद विभिन्न स्रोतों में प्रकट हो सकते हैं

**समाधान** आरआरएफ द्वारा रैंकिंग के बाद (जो अर्थिक समानता को संयोजन करता है, शब्दकुञ्जी मिलानM SK2 प्रासंगिकता

**आरआरएफ के बाद क्यों** आरआरएफ अंक प्रासंगिकता का सर्वोत्तम समग्र मापन है

### केवल खुराक पर क्यों सलीन्स को बढ़ाया जाता है

विभाजन जानबूझकर है

चरण | क्या यह ग्रहण करता है
|-------|------------------|
| **आgestion boost** | लेखक बल देता है
| **पुनःप्राप्ति अंक** Query relevance - how well content matches user intent

इन को पुनर्प्राप्ति पर मिलाना दस्तावेज़ अभिप्राय के साथ उपयोगकर्ता अभिप्रेत से बंधा जाएगा *उस दस्तावेज़ में*, लेकिन प्रासंगिक नहीं हो सकता *इस क्वेरी में*. इंजेक्शन में वृद्धि करते हुए , हम बिना क्वेरी परिणामों को पक्षपात करने के लेखक की सिग्नल को सुरक्षित रखते हैं

---


## चरण 1: इंजेक्शन डिडुप्लिकेट

### स्थान

`src/Mostlylucid.DocSummarizer.Core/Services/BertRagSummarizer.cs`

### विधि

`DeduplicateSegments()`

### एल्गोरिथम

```
1. Filter segments by minimum salience threshold (0.05)
2. Sort by salience score (highest first)
3. For each segment:
   a. If no embedding → keep (can't compare)
   b. Check cosine similarity against all selected segments
   c. If similarity >= 0.90:
      - If same ContentHash → exact duplicate, drop silently
      - If different ContentHash → near-duplicate, boost kept segment's salience
   d. If no match → add to selected list
4. Apply salience boosts: +15% per near-duplicate merged
5. Cap salience at 1.0 to prevent any single concept from dominating
```

### पैरामीटर

पैरामीटर
|-----------|---------|-------------|
| `similarityThreshold` कोसाइन समानता जिसके ऊपर से खंडों को दुरूपित माना जाता है
| `salienceThreshold` विचार करने के लिए न्यूनतम भेदभाव
| `boostPerNearDuplicate` | | 0.15 | || | समीप के लिए सलायन बढ़ाता है।

### उदाहरण

**यथार्थ प्रतिलिपि (नहीं Boost**

```
Segment A: "Contact us at support@example.com" [hash: abc123]
Segment B: "Contact us at support@example.com" [hash: abc123]  ← same hash
Result: Keep A, drop B, no boost (likely boilerplate)
```

**निकट-डुप्लीकेट (बॉस्ट लागू**

```
Segment A: "Machine learning models require training data" [hash: abc123]
Segment B: "ML systems need data for training" [hash: def456]  ← different hash, 0.92 similarity
Segment C: "Training data is essential for ML" [hash: ghi789]  ← different hash, 0.91 similarity
Result: Keep A with +30% salience boost (concept emphasized 3 ways)
```

### थ्रेसहोल्ड के लिए तर्क

- **समानता** अनुसंधान के आधार पर (NVIDIA NeMo सेमेटिक डेड्यूप के लिए उद्योग मानक का प्रयोग करता है
- **0.05** अधिकतर सामग्री बनाए रखने के दौरान बहुत कम मूल्य खंड फ़िल्टर करता है
- **वृद्धि** अर्थपूर्ण संकेत बिना अधिक -weighting बार-बार अवधारणाओं के

---


## चरण 2: पुनःप्राप्ति डुप्लिकेटेशन

### स्थान

`src/LucidRAG.Core/Services/AgenticSearchService.cs`

### विधि

`DeduplicateByEmbeddingPostRanking()`

### एल्गोरिथम

```
1. Receive ranked results (already sorted by RRF or dense score)
2. For each segment (in score order):
   a. If no embedding → keep
   b. Check cosine similarity against all selected segments
   c. If similarity >= 0.90 → skip (higher-scored duplicate already selected)
   d. If no match → add to selected list
3. Return deduplicated list (maintains score ordering)
```

### पैरामीटर

पैरामीटर
|-----------|---------|-------------|
| `similarityThreshold` क्रॉस के लिए कोसाइन समानता दहेज

### क्यों पोस्ट

आरआरएफ (प्रतिस्परिक रैंक फ्यूजन) चार संकेतों को संयोजित करता है

1. **घनत्व प्राप्ताङ्क** क्वेरी के लिए वैचारिक समानता
2. **प्राप्ताङ्क** शब्दकोश match
3. **सलिंस स्कोर** दस्तावेज़ के भीतर महत्व
4. **ताज़ाता प्राप्ताङ्क** ग्राह्य वृद्धि

RRF के बाद डुप्लिकेट करने का अर्थ है कि हम सभी आयामों में क्वेरी से बेहतर अनुरूप सेगमेंट बनाए रखें

### उदाहरण

```
Query: "How do I configure authentication?"

Results before dedup:
1. [Doc A] "Authentication is configured via config.yaml..." (RRF: 0.052)
2. [Doc B] "Configure auth using the config.yaml file..." (RRF: 0.048, similarity to #1: 0.93)
3. [Doc A] "Set the API key in environment variables..." (RRF: 0.041)

Results after dedup:
1. [Doc A] "Authentication is configured via config.yaml..." (RRF: 0.052)
2. [Doc A] "Set the API key in environment variables..." (RRF: 0.041)

Doc B's similar paragraph dropped - Doc A's version had higher RRF score.
```

---


## विफल मोड & व्यापार

### ज्ञात सीमाएं

विफल मोड | विवरण
|--------------|-------------|------------|
| **गलत सकारात्मक (over** दो अलग-अलग लेकिन घनिष्ठ रूप से संबंधित संकल्पनाओं को समानता से अधिक हो सकता है 0.90 अनुरूपता
| **गलत ऋणात्मक (under** Very short segments may embed poorly
| **एम्बेडिंग ड्रिफ्ट** | एम्बेडिंग मॉडलों को बदलने से डेड्यूप आकलन अमान्य हो जाता है
| **क्रम संवेदनशीलता** | घृणापूर्ण चयन का अर्थ होता है, पहला उच्च होता है।

### स्वीकृत व्यापार

- **रिकार्ड पर यथार्थता** हम कभी-कभी अलग-अलग सामग्री को दुर्घटनावश हटाने के बजाय प्रतिलिपिओं के निकट रखना पसंद करते हैं
- **शुद्धता से अधिक भंडारण** हम स्रोत आtribution को सुरक्षित रखने के लिए वैश्विक डेड्यूप की बजाय per- दस्तावेज़ भंडारित करें
- **अनुकूलन पर सरलता** O(n²) सामान्य दस्तावेज़ आकारों के लिए स्वीकार्य है

---


## बहुभाषीय विचार

बहुभाषीय सामग्री के साथ डुप्लिकेट व्यवहार

Scenario | Behavior | Rationale
|----------|----------|-----------|
| **एक ही भाषा** सामान्य डेड्यूप लागू होता है
| **Cross-language paraphrases** | न डुप्लिकेट किया गया नहीं है।
| **मिश्रित भाषा दस्तावेज़** भाषा समूहों के भीतर डेड्यूप | सम्मिलित समानता प्राकृतिक रूप से भाषाओं को अलग करती है

**डिजाइन विकल्प** क्रॉस-भाषिक डेड्यूप स्पष्ट रूप से समर्थित नहीं है।

भावी वृद्धि: क्रॉस-लिंगिक डिड्यूप अनुवाद के माध्यम से परतित किया जा सकता है

---


## सुरक्षा & प्रतिद्वंद्वी विचार

डिडुप्लिकेट सिस्टम में अप्रत्यक्ष संरक्षण शामिल हैं

| आक्रामक भेक्टर
|---------------|------------|
| **पुनरावृत्ति के माध्यम से सूक्ष्म मुद्रास्फीति** exactly duplicates don't boost |
| **दस्तावेज़ों में स्पैम को नक़ल करें** पुनर्प्राप्ति पर डॉक डेड्यूप अतिरिक्त परिणामों को हटाता है
| **डुप्लीकेट इंजेक्शन के माध्यम से प्राप्ताङ्क परिचालन** | रैंकिंग के बाद कटौती होती है
| **बॉयलप्लेट बाढ़** | सही हैश मैच पता लगाने में तेजी के बिना गिरता है

**नोट** डिडुप्लिकेट एक सुरक्षा सीमा नहीं है

---


## GraphRAG के साथ परस्पर क्रिया

गुणन और ग्राफ आर ए जी जानबूझकर आयतीय हैं

| प्रणाली | उद्देश्य पर कार्य करता है
|--------|-------------|---------|
| **दुगुना** सेगमेंट्स
| **ग्राफ आर ए जी** | इकाइयां | & | रिश्ताएं || | ज्ञान ग्राफ बनाना |

**क्यों अलग करें**

- एक खंड जो "Apple" और दूसरा खंड जिसमें "the companyM SK3 उल्लिखित करता है, समान पाठ के रूप में अपवाद कर सकता है लेकिन वही इकाई को दर्शाता है कि
- डेड्यूप को इकाई जागरूकता की जरूरत नहीं है-' यह सिर्फ सेमेटिक समानता पर कार्य करता है
- Entity-aware dedup को एक वृद्धि के रूप में बाद में जोड़ा जा सकता है

---


## प्रेक्षणता & मापन

### मौजूदा लॉगिंग

इंजेक्शन

```
[dim]Deduplication: 150 → 98 segments[/]
```

पुनःप्राप्ति

```
Post-ranking deduplication: 50 → 42 segments (removed 8 cross-doc duplicates)
```

### सिफारिशित मापन

उत्पादन मॉनिटरिंग के लिए

| मीट्रिक | विवरण | स्वस्थ रेंज S|
|--------|-------------|---------------|
| `dedup_ratio_ingestion` इंजेक्शन पर हटाए गए खंड
| `dedup_ratio_retrieval` प्रतिप्राप्ति पर हटाए गए खंड
| `avg_salience_boost` प्रति दस्तावेज़ लागू औसत वृद्धि
| `max_salience_boost` एक दस्तावेज में सबसे अधिक वृद्धि
| `dedup_by_doc_type` दस्तावेज़ प्रकार के अनुसार खंडित कटौती दर

### त्रुटिमोचन टिप

- **उच्च इंजेक्शन डिड्यूप (>50%):** दस्तावेज़ में अधिक बॉयलप्लेट हो सकता है या स्वचालित रूप से उत्पन्न किया जा सकता है
- **कम इंजेक्शन डिड्यूप (<5%):** दस्तावेज़ में विविध अंतर्वस्तु है (goodM SK1 या अंतःकरण खराब हैं
- **उच्च पुनर्प्राप्ति डिड्यूप (>30%):** Query may be too broad, or corpus has many similar documents
- **सलिन्स approaching 1.0:** संकल्पना को बहुत जोर दिया गया था; यह सत्यापित करें' वैध है

---


## कॉन्फ़िगरेशन

डिडुप्लिकेट के माध्यम से कॉन्फ़िगर किया गया है `DocSummarizerConfig.Deduplication` खंड में `appsettings.json`:

```json
{
  "DocSummarizer": {
    "Deduplication": {
      "Ingestion": {
        "Enabled": true,
        "SimilarityThreshold": 0.90,
        "SalienceThreshold": 0.05,
        "EnableSalienceBoost": true,
        "BoostPerNearDuplicate": 0.15,
        "MaxSalienceBoost": 1.0,
        "BoostDecayMode": "Logarithmic",
        "LogBase": 2.0
      },
      "Retrieval": {
        "Enabled": true,
        "SimilarityThreshold": 0.90,
        "MinRelevanceScore": 0.25
      },
      "Analytics": {
        "EnableLogging": true,
        "EnableMetrics": true,
        "HighIngestionDedupThreshold": 0.50,
        "HighRetrievalDedupThreshold": 0.30,
        "HighSalienceBoostThreshold": 0.60
      }
    }
  }
}
```

### इंजेक्शन कॉन्फ़िगरेशन

पैरामीटर
|-----------|---------|-------------|
| `Enabled` | `true` सक्षम करें
| `SimilarityThreshold` | `0.90` दोहरा पता लगाने के लिए कोसाइन समानता थ्रेसहोल्ड
| `SalienceThreshold` | `0.05` | विचार करने के लिए न्यूनतम salience
| `EnableSalienceBoost` | `true` | निकट के लिए उत्कर्षण बढ़ाता है
| `BoostPerNearDuplicate` | `0.15` | बेस boost per near-duplicate
| `MaxSalienceBoost` | `1.0` अधिकतम salience cap |
| `BoostDecayMode` | `Logarithmic` | `Linear` या `Logarithmic` पतन |
| `LogBase` | `2.0` लघुगणकीय विघटन के लिए आधार

### पुनःप्राप्ति कॉन्फ़िगरेशन

पैरामीटर
|-----------|---------|-------------|
| `Enabled` | `true` सक्षम करें
| `SimilarityThreshold` | `0.90` कोसाइन समानता थ्रेसहोल्ड
| `MinRelevanceScore` | `0.25` न्यूनतम आरआरएफ अंक को शामिल करने के लिए |

### विश्लेषण कॉन्फ़िगरेशन

पैरामीटर
|-----------|---------|-------------|
| `EnableLogging` | `true` लॉग डिडुप्लिकेट ऑपरेशन्स
| `EnableMetrics` | `true` मॉनिटरिंग के लिए मापदंड एकत्रित करें
| `HighIngestionDedupThreshold` | `0.50` | चेतावनी दें यदि
| `HighRetrievalDedupThreshold` | `0.30` चेतावनी दें यदि >30% पुनःप्राप्ति पर दोहराया गया है
| `HighSalienceBoostThreshold` | `0.60` | चेतावनी दें यदि वृद्धि से अधिक है

### विफलता मोड बढ़ाएँ

**रेखीय मोड** (simple

```
boost = boostPerNearDuplicate × count
```

उदाहरण-: 3 near - dupes

**लघुगणकीय मोड** (ह्रास के परिणाम

```
boost = boostPerNearDuplicate × log₂(1 + count)
```

उदाहरण

लघुगणकीय मोड सिफारिश की जाती है क्योंकि

- पहले कुछ अनुकरणों में सबसे मजबूत संकेत है
- कई प्रतिलिपि बोयलप्लेट इंगित कर सकते हैं
- बहती हुई सलायंस मुद्रास्फीति को रोकता है

---


## निष्पादन विचार

### जटिलता

चरण | जटिलता
|-------|------------|--------------|--------|
प्रवेश खंड
पुनःप्राप्ति

### स्केलिंग पथ

बहुत बड़े दस्तावेजों के लिए (10,000+ खंड

1. **LSH (LocalityM SK1Sensitive Hashing):** O(nM SK1 अनुमानित कटौती
2. **बैच तुलना** स्मृति को कम करने के लिए खंडों में प्रक्रिया करें
3. **आरंभिक फिल्टरिंग** अधिक आक्रामक साइज थ्रेसहोल्ड

वर्तमान क्रियान्वयन विशिष्ट दस्तावेज़ आकारों के लिए अनुकूलित है

---


## अनुसंधान के साथ तुलना

दृष्टिकोण
|----------|-----------|--------|
| lucidRAG
एनवीडीया नेमो क्यूरेटर [SemDeDupdocs](https://docs.nvidia.com/nemo/curator/latest/curate-text/process-data/deduplication/semdedup.html) |
MinHash LSH [गूगल C4, GPT-3 कागज](https://huggingface.co/blog/dedup) |
| SemHash [जिटहब](https://github.com/MinishLab/semhash) |

हमारे शून्य 0.90 सेंटिकल डेड्यूप्लिकेशन के लिए उद्योग के सर्वोत्तम प्रथाओं के अनुरूप है

---


## क्या डुप्लीकेट नहीं है

सामग्री क़िस्म
|--------------|--------|
अभिग्रहण पर | क्रॉस | - | दस्तावेज || | प्रति स्रोत रिजोल्यूशन और आबंटन को सुरक्षित करता है
कम
भिन्न खंड प्रकार | शीर्षक और अनुच्छेद में भिन्न संरचनात्मक भूमिकाएं हैं
| क्रॉस

---


## क्रियान्वयन की स्थिति

विशेषता | स्थिति
|---------|--------|----------|
कॉन्फ़िगर योग्य थ्रेसहोल्ड्स `DeduplicationConfig` श्रेणी |
| बौस्ट डेसी | ( | लॉग स्केल |) | `BoostDecayMode.Logarithmic` |
डेडप विश्लेषण `DeduplicationResult<T>` रिकार्ड |
| डीआई सेवा एकीकरण `IDeduplicationService` |

## भावी संवर्धन

1. **डेड्यूप विश्लेषण डैशबोर्ड** प्रति दस्तावेज़ प्रकार की दरों का दृश्य ट्रैकिंग
2. **क्रॉस** अनुवाद-बहुभाषीय डेड्यूप के लिए अपरिवर्तनीय अंतःस्थापित
3. **Entity-informed dedup:** GraphRAG इकाइयों को अतिरिक्त संकेत के रूप में उपयोग करें (बदल नहीं करता है
4. **प्रोमेथ्यूस** मॉनिटरिंग डैशबोर्ड के लिए निर्यात माप

---


## सारांश

यह गुणन रणनीति

- **संकेत को सुरक्षित करता है** - Near-duplicates boost importance rather than being discarded
- **सीमाओं का सम्मान करता है** - दस्तावेज़ स्वतंत्र खण्ड सेट बनाए रखें
- **दर्जे फिर फ़िल्टर करता है** - क्रॉस से पहले पूर्ण आरआरएफ संकेत का उपयोग करता है
- **सुरक्षित रूप से असफल** - आक्रामक हटाने के बजाय सामग्री को रखना पसंद करता है
- **स्थिरतावादी बना रहता है** - एक ही इनपुट हमेशा एक ही आउटपुट का उत्पादन करता है