# تقلل من Segments Graphitic RAG Evidence في ***وضوح*RAG**

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

<!-- category -- C#, lucidRAG, Vector Search, Machine Learning, Knowledge Graphs -->
> **ملاحظة:** هذه ليست مقالة مدونة تقليدية. إنها **الوصفات التقنية** مكتوبة لصفة معينة في ***وضوح*RAG**.
> أقوم بتوصيل هذا الوثيقة بشكل مكرر لبرمجة - "focused LLMs during development to reason about trade" - "offs" , " validate assumptions" و "M SK3" "converge on a rational implementation" .

هذا документ يصف نظام فرعي من ***وضوح*RAG**, مشروع أقوم بتطويره

أحد المتطلبات الأساسية ***وضوح*RAG** هو القدرة على استخراج **أجزاء من الأدلة** - جملةM SK1 فقرات, مخطوطات , عنوانات, إطارات , أو بلاكات بنائية - وتأكد من أن تلك الأجزاء **تقليد** دون تدمير الإشارة المفيدة.

***وضوح*RAG** يعمل من خلال تحليل و استخراج *أفضل* الدليل المتوفر من الوثائق, الصور, الصوتM SK2 وبيانات هيكلية . خلاف معظم تطبيقات RAG **لا** تخزين LLM-توليد الإحصائيات كجزء أولي . في كثير من الحالات , لا تحتاج إلى LLM على الإطلاق ( رغم أنه يمكن استخدامه عندما يكون التسارع قابلاً للاستعمال

بدلاً من ذلك, ***وضوح*RAG** يطبق مجموعة واسعة من التقنيات الإفتراضية والإحتمالية على :

* استخراج أجزاء مرشحة
* تقييم قيمة المعلومات
* ويحافظون على أقوى ممثلين فقط

**المحاكاة هي جزء هام من هذه العملية.**

المساواة في الأوتار البسيطة لا تكفي.

**تتضاعف المشكلة عند وقت الترقب.**

عندما يتم الحصول على النتائج (باستخدام SQL, مداخلات векторيةM SK2 BM 25, أو الهجيناتMSC4 تغذي جزء LLM متعددة التي جميعها تعبر عن نفس الفكرة الكامنة تنتج إجابات مملةMST5 متكررةM ST6 خمسة بالقرب منM st7 قطع متطابقة من दस्तावेज مختلفة لا تضيف وضوحاً |M st8 | إنهم يذيبونها | M st9

لمعالجة هذا, ***وضوح*RAG** يتعامل مع تقليل النسبة كـ **مشكلة kompilation لفئة first-**, ليس بريداً-صفر شاكM SK2

ما تبقى من هذا الوثيقة يصف كيف تم تصميم تلك الاستراتيجية للتفكيك ['Agile Speccing'](https://www.mostlylucid.net/blog/writingfeaturespecs) ملائمة لمتطلبات الرمز LLMS.

هذا يشكّل الأفكار المختلفة , ويدفع الـ LLM إلى توثيقها | ' | |' | العمليات الفكرية | МSK3 | هذا هو المرحلة الأولى لإيجاد الـ *يبني الشيء الصحيح*.

[رؤية المزيد عن ***وضوح*RAG** هنا. ](https://www.lucidrag.com)

# استراتيجية تقليل النسبة

***وضوح*RAG** يستخدم استراتيجية ثنائية -phase deduplication لإزالة المحتوى الفائق بينما يحافظ على الإشارات الهامة. هذا هو **إشارة -محافظة المرشح**, ليس قياس المحتوى.

## الرسم البياني

```
┌─────────────────────────────────────────────────────────────────────────────┐
│                           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    │
└─────────────────────────────────────────────────────────────────────────────┘
```

---


## ضمانات التصميم

هذه الثوابت تم الحفاظ عليها بواسطة نظام تقليل

|Garantie  |Description |
|-----------|-------------|
| **تم حفظ الطلبات** | تقليل لا يغيّر ترتيب الدلالية بعد تصنيف RRF |
| **لا يفقد مفهومه** | تفكيك لا يزيل أبداً كل الأمثلة لمفهوم |
| **تم إحترام الحدود للوثيقة** | ال重複 لا يتجاوز أبداً الحدود للوثيقة عند الإدخال |
| **المحتوى غير قابل للتغيير** | تقليل لا يغيّر أبداً المداخلات أو المحتوى النصي, فقط علامات الانتقاء والتميز |
| **إختبارية** | given identical inputs and config, deduplication produces identical outputs |

---


## غير الأهداف

هذا النظام يقوم بوضوح **لا** محاولة :

- **إكتشاف تناقض واقعي** - مقطعين يقولون اشياء متعارضة لا تتقلص
- **تشريح الحقيقة** - نحن لا نختار ' نسخة "correct" عبر المصادر
- **Collapse paraphrases across documents at ingestion** - كل سند يحتفظ بأجزاءه الخاصة
- **تعميم المصطلحات** - "ML" و "التعلم الآليM SK4 في دوكات مختلفة يتم حفظها منفصلاً
- **استبدال حل الكيان** - ذلك' GraphRAG ' وظيفتهM SK3 تعمل على مستوى مختلف

---


## التفاضل والتكامل & قابلة للتكاثر

تقليل هو محدد بالكامل:

- **المداخلات غير قابلة للتغيير** بمجرد حسابها في وقت الإستخراج
- **الفرز مستقر** أجزاء - ذات أهمية متساوية تحافظ على ترتيب أصلي
- **لا عشوائية** - لا نأخذ العينات, لا تقريباً ANN , لا حد إفتراضي
- **ليس هناك حالة خارجية** - القرارات في الخصم تعتمد فقط على مجموعة القطع الحالية

**لماذا يهم هذا؟** يمكن للمستخدمين أن يثقوا في نتائج البحث عن الأخطاء البرمجية بأن تشغيل re- مع نفس المدخلات ينتج نفس المخرجات ***وضوح*RAG**'أوسع "محدود الغموض" الفلسفة - تطابق الغمض مع السلوك المعرفيM SK4

---


## لماذا Phases ?

### المرحلة 1: تقليل نسبة الاستهلاك

**الهدف:** تقلل من تخزين وتجنب إفراط intra-document

**مشكلة:** غالباً ما تحتوي الوثائق على محتوى مكرر:

- نص لوحة ال boiler (headers, footerM SK2 disclaimers )
- النسخ -أجزاء مسدودة
- نفس المفهوم يفسر عدة طرق

**الحل:** تقليد داخل كل وثيقة قبل التصنيف.

**رؤية مهمة:** تقريباً - تُعامل المحاكاة ك *دليل على أهمية مستقلة*, ليس الإفراط. إذا أشرح مؤلف مفهوماً بثلاث طرق مختلفة , ذلك مفهوم مهم . نحن نلتقط هذا الإشارة عن طريق زيادة الوضوح

### مرحلة 2: استخلاص تقليل

**الهدف:** منع LLM من الحصول على معلومات إضافية عبر الوثائق

**مشكلة:** عندما تقوم بالبحث عبر عدة وثائق, يمكن أن تظهر فقرات مماثلة في مصادر مختلفة. لا يجب على LLMM SK2 وصف نفس المعلومات عدة مرات

**الحل:** بعد التصنيف من قبل RRF (which combines semantic similarity, keyword matchM SK2 salience , and freshnessMSC4 deduplicate across documents keeping the highestMST5scoring segmentM ST6

**لماذا بعد RRF?** تقييم الـ RRF يمثل أفضل قياس ملموس للأهمية . تقليل قبل التصنيف سيفقد هذا الإشارة .

### لماذا يعزز ال Salience فقط عند الإ ingestation

ان الانقسام هو متعمد

| المرحلة | ما يلتقطه |
|-------|------------------|
| **تحفيز التغذية** | يركز الكاتب - كم تركز الوثيقة على مفهوم
| **تقييم البحث** | أهمية الشؤة - مدى تطابق المحتوى مع إهتمام المستخدم |

مزج هذه في عملية البحث قد يربط الرغبة في दस्तावेज مع رغبة المستخدم *للوثيقة*, لكن قد لا تكون ذات أهمية *إلى هذا السؤال*. بتحفيز عند الإمتصاصM SK1 نحافظ على إشارة المؤلف' دون تضخيم نتائج البحث

---


## المرحلة 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
```

### العوامل

| پارامتر | تلقائي | وصف S|
|-----------|---------|-------------|
| `similarityThreshold` | ≥0.90 | شبيهة الجسيمات فوق التي تعتبر أجزاء متكررة | |
| `salienceThreshold` | 0.05 \| الأهمية المحدودة لأخذها بعين الاعتبار | | ( | ضوضاء التصفية |
| `boostPerNearDuplicate` | 0.15 ≥| زيادة الشجاعة على قرب-مزيج تقليدي (+15%) |

### أمثلة

**تقليد بالضبط (لا تحسن )**

```
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)
```

### المنطق بالنسبة للحدود

- **0.90 شبيهة:** بناء على الأبحاث (NVIDIA NeMo يستخدم 0.90-0.92, معيار صناعي للتفكيك الدلالي)
- **0.05 الأهمية:** يحرك أجزاء ذات قيمة منخفضة جداً من - بينما يحافظ على معظم المحتوى
- **15% تحسن  :** إشارة ذات مغزى بدون زيادة -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)
```

### العوامل

| پارامتر | تلقائي | وصف S|
|-----------|---------|-------------|
| `similarityThreshold` | 0.90 ≥| حد شبيهة الجسيمات بالنسبة للخط الcross-doc dedup

### لماذا أرسل

RRF (Reciprocal Rank Fusion) combines four signalsM SK2

1. **النتيجة الكثيفة:** تشابه لغوي للبحث
2. **BM25 النتيجة:** كلمة قاموس match
3. **درجة الشفقة:** Importance within document
4. **تقييم الطابع:** تحفيز الإلتفاف

تقليل الـ AFTER 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.
```

---


## اشكال الفشل & التجارة-أف

### الحدود المعروفة

| حالت الفشل | الوصف | التخفيض |
|--------------|-------------|------------|
| **الايجابية الخاطئة (overM SK1dedup)** | إثنين من المبادئ المتباينة لكنها مرتبطة ببعضها البعض يمكن أن تتجاوز 0.90 التشابه | | | Trade Accepted |- | Off favouring reduced redundancy | ; | threshold is tunable
| **السلبية الخاطئة (بالأسفل-منخفضة )** | Segments very short may embed poorlyM SK1 missing semantic similarity | Hash-based exact duplicate detection catches identical text |
| **دمج الهبوط** | تغيير نماذج الدمج يعترض افتراضات الاستبعاد | يتطلب إعادة الدمج الكاملة
| **الحساسية للترتيب** | الخيار الجشع يعني أول أعلى - يفوز الجزء العادي | يتخفف عن طريق الفرز المستقر; أعلى ً- جزء العادي يتم الحفاظ عليه ||

### التجارة المقبولة

- **الدقة فوق recall:** نحن نفضّل في بعض الأحيان الإبقاء بالقرب من - نسخ أكثر من حذف محتويات مختلفة بشكل عشوائي
- **تخزين فوق الدقة:** نقوم بتخزينdocument per- بدلاً من التراجع العالمي للحفاظ على أصل المصدر
- **البساطة فوق التحسين:** O(n²) هو مقبول بالنسبة للحجمات النموذجية للوثائقM SK2 LSH يضيف تعقيدا

---


## وجهات النظر متعددة اللغات

سلوك تقليل مع محتويات متعددة اللغات:

| سيناريو | السلوك | المنطق |
|----------|----------|-----------|
| **نفس اللغة** | يطبق الإنخفاض العادي | تُلتقط المداخلات شبيهة الدلالية |
| **الاقتباسات اللغوية المتقاطعة** | لا تقلل | يحافظ على المصدر- تنوع اللغة |
| **وثيقة لغة المزج** | تفكيك داخل مجموعات اللّغة | تماثل الدمج يفصل اللّغام بشكل طبيعي |

**إختيار التصميم:** کراس- لا يتم دعم الاستبعاد اللغوي بشكل واضح. هذا يحافظ على القدرة على استخلاص نفس الحقائق في اللغة المفضلة لـ' أو مقارنة كيف أن مختلف مصادر الجملة الأشياء

تحسينات مستقبلية: مداخلة- يمكن أن يطبق الخصم اللغوي من خلال الترجمة - دمجات غير متغيرة إذا احتجنا إلى ذلك

---


## الأمن & وجهات النظر المعارضة

نظام المحاكاة يحتوي على حماية ضمنية:

| вектор الهجمة | الحماية |
|---------------|------------|
| **إنخفاض نسبة اللعاب عن طريق التكرار** | تكافئ عند 1.0; نسخ متكررة دقيقة don' لا تكافح |
| **Kopi-paste spam across documents** | Cross-doc dedup عند استرجاع يزيل النتائج الإفراطية |
| **تلاعب بالدرجات من خلال حقنة متكررة** | إنخفاض يحدث بعد التصنيف , يمنع التضخم في المرتبة
| **إنفجار لوح ال boilerplate** | تسقط إكتشاف التصادم المقطعي بالضبط بدون دفع |

**ملاحظة:** التفكيك ليس حدوداً أمنياً. المحتوى السيئ الذي يمر عبر مرشحات الإمتصاص سيتم индексته. تصفية المحتوى يجب أن تحدث في المسار العلوي

---


## التفاعل مع GraphRAG

المحاكاة و GraphRAG متعامدة بشكل مقصود:

| النظام | يعمل على | الهدف S|
|--------|-------------|---------|
| **تقليل النسبة** | Segments (text chunks) | Remove redundant retrieval results
| **GraphRAG** | الكيانات & العلاقات | رسم بياني بناء المعرفة , مرجع حل |

**لماذا نفصل**

- جزء يشير إلى " "Apple" " وجزء آخر يشير الى" شركة" يمكن أن ينحرف كنص متشابه ولكن يمثل نفس الكيان "M SK4" الذي يجب حله في "GraphRAG"
- Dedup لا يحتاج ' إلى إدراك الكيان ; إنه يعمل فقط على شبيهة الدلالية
- Entity-aware dedup could be added later as an enhancement, not a replacement

---


## قابلية الملاحظة & قياسات

### السجل الحالي

الإدخال:

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

استrufen:

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

### قياسات مقترحة

للمراقبة الإنتاجية, تأخذ في الإعتبار المتابعة:

| Metric | Description | Healthy Range S|
|--------|-------------|---------------|
| `dedup_ratio_ingestion` | % أجزاء تم إزالتها عند الإمتصاص
| `dedup_ratio_retrieval` | % أزيلت Segments at retrieval
| `avg_salience_boost` | متوسط الإرتفاع applied per document | 0.05-0.20 ||
| `max_salience_boost` | أعلى إرتفاع في الوثيقة |
| `dedup_by_doc_type` | معدل الخصم تم تقسيمه حسب نوع الوثائق | إختلافات МSK2

### نصيحة لحل الأخطاء

- **تخفيض التغذية العالي (>50%):** يمكن أن يكون للوثيقة لوحة حوضية مفرطة أو أن تكون ناتجة عن طريق الـ -
- **انخفاض نسبة الاستهلاك (<5%):** يحتوي على محتويات متنوعة (goodM SK1 أو أن المداخلات ضعيفة (investigate)
- **استبعاد عالي للبحث (>30%):** السؤال قد يكون واسعاً جداً , أو corpus لديه العديد من الوثائق المشابهة
- **اللعاب يقترب من 1.0:** لقد تم تسليط الضوء على مفهوم ; وتحقق من صحته ' وشرعيته "M SK2" وليس spam

---


## الإعداد

يتم إعداد المحاكاة من خلال `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
      }
    }
  }
}
```

### إعدادات الإمتصاص

| پارامتر | تلقائي | وصف S|
|-----------|---------|-------------|
| `Enabled` | `true` | أُمكن / يُمكن تقليل التدخين في الإمتصاص
| `SimilarityThreshold` | `0.90` | حد مقاربة الكوسين للكشف عن التكرار |
| `SalienceThreshold` | `0.05` | النقطة المحدودة التي يجب أخذها بعين الاعتبار
| `EnableSalienceBoost` | `true` | تحسن الوضوح لقرب-تقليدات |
| `BoostPerNearDuplicate` | `0.15` | الإرتفاع الأساسي لكل تقريبا- نسخة متكررة (+15%) |
| `MaxSalienceBoost` | `1.0` |
| `BoostDecayMode` | `Logarithmic` | `Linear` أو `Logarithmic` التآكل |
| `LogBase` | `2.0` | قاعدة للتحلل لوغاريتمي |

### إعداد البحث

| پارامتر | تلقائي | وصف S|
|-----------|---------|-------------|
| `Enabled` | `true` | أُمكن / يُمكن استبعاد تفكيك |
| `SimilarityThreshold` | `0.90` | حد مقاربة الكوسين |
| `MinRelevanceScore` | `0.25` | نقاط RRF المحدودة لتشمل |

### إعدادات التحليل

| پارامتر | تلقائي | وصف S|
|-----------|---------|-------------|
| `EnableLogging` | `true` | عمليات تقليل الملاحظات |
| `EnableMetrics` | `true` | جمع القياسات للمراقبة |
| `HighIngestionDedupThreshold` | `0.50` | أحذركم إذا >50% تم تقليله عند الإمتصاص
| `HighRetrievalDedupThreshold` | `0.30` | أحذرك إذا >30% تم تقليله عند الترقب |
| `HighSalienceBoostThreshold` | `0.60` | أحذركم إذا تجاوزت الإرتفاع 60% |

### تحفيز اشكال الخسارة

**الطريقة الخطية** (simpleM SK1predicable):

```
boost = boostPerNearDuplicate × count
```

مثال: M SK1 بالقرب من-dupes × | | 0.15 |

**الطريقة المنطقية** (عودة منخفضة,លំនាំដើមM SK2

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

مثال: M SK1 بالقرب من-dupes → | | 0.15 \ × log |

يُوصي بنظام ال로그 لأن :

- أول بعض النسخات لديها المؤشر الأقوى (تركيز المؤلف)
- العديد من النسخات يمكن أن تشير إلى لوحة ال boiler, ليست مهمة
- يمنع إنخفاض الجاذبية المنتشرة

---


## وجهات النظر في الأداء

### التعقيد

| المرحلة | التعقيد | الحجم الطبيعي | التأثير |
|-------|------------|--------------|--------|
| التدخين | O(nM SK3 | | | |50-500 | أجزاء |
| إستخراج | O(mM SK3 | | | |20-100 | أجزاء |

### قياس الطريق

للوثائق الكبيرة جداً (10,000+ أجزاء):

1. **LSH (LocalityM SK1Sensitive Hashing):** O(n) تقليل تقريبي
2. **مقارنة بالمجموعات:** عملية في قطع لتقليل الذاكرة
3. **التصفية المبكرة:** حد الجاذبية الأكثر عدوانية

التنفيذ الحالي مُحسناً لصور مستندات نموذجية. LSH يضيف تعقيداً دون فائدة لأغلب الحالات المستخدمة.

---


## مقارنة بالبحث

| المقاربة
|----------|-----------|--------|
| lucidRAG
| م Curator NVIDIA NeMo [دليل SemDeDup](https://docs.nvidia.com/nemo/curator/latest/curate-text/process-data/deduplication/semdedup.html) |
| MinHash LSH (standard) | ≥0.80 Jaccard MSC5 [paper Google C4, GPT-3 paper](https://huggingface.co/blog/dedup) |
| SemHash | 0.90-0.95 ≥| [GitHub](https://github.com/MinishLab/semhash) |

حدنا 0.90 يتوافق مع أفضل الممارسات في مجال المحاكاة الدلالية

---


## ما لا يتم تقليله

| نوع المحتوى | السبب |
|--------------|--------|
| متقاطعةM SK1document at ingestion | Preserves per-source resolution and attribution |
|LowM SK1Content of similarity (<0.90) | Considered semantically distinct |
| أنواع مختلفة من الأجزاء | الرؤوس مقابل الفقرة لها دورات هيكلية مختلفة |
| Cross-إقتباسات لغة | يحافظ على تنوع اللغة |

---


## وضعية تنفيذ

| الميزة | الحالة | | | موقع ||
|---------|--------|----------|
| مراحل قابلة للضبط | | | ✅ | تطبيق | `DeduplicationConfig` श्रेणी |
| تضخيم التدهور ( مقياس الملاحظات) | ♫✅ تم تنفيذه ♫ | `BoostDecayMode.Logarithmic` |
| التحليلات المنقطعة/ القياسات | | | ✅ المطبقة | `DeduplicationResult<T>` سجل |
| إدماج خدمة الإتصال بالإنترنت | MSC2 تم تنفيذه MSC3 `IDeduplicationService` |

## تحسينات مستقبلية

1. **لوحة البيانات التحليلية :** تتبع بصري معدلات لكل نوع من الوثائق
2. **کراس-إختيار لغوي:** الترجمة-مداخلات غير متغيرة للمغامرة متعددة
3. **المؤسسة-التراجع المُخبر:** إستخدم وحدات GraphRAG كإشارة إضافية (لا استبدال)
4. **Prometheus/OpenTelemetry:** إخراج القياسات لأنظمة مراقبة لوحات المفاتيح

---


## الخلاصة

هذه الاستراتيجية للتفكيك:

- **يحافظ على الإشارة** - قريبة- تعزز النسخ أهمية بدلاً من أن يتم التخلص منها
- **يحترم الحدود** - مستندات تحافظ على مجموعات القطع المستقلة
- **ثم تصفر الدرجات** - يستخدم إشارة RRF كاملة قبل القطع
- **فشل بشكل آمن** - يفضل الحفاظ على المحتوى أكثر من الإزالة العدوانية
- **يظل محددا** - نفس المدخلات دائماً تنتج نفس المخرجات