# Deduplikation von Graphitic RAG Evidence Segmenten in ***klar*RAG**

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

<!-- category -- C#, lucidRAG, Vector Search, Machine Learning, Knowledge Graphs -->
> **ANMERKUNG** Dies ist nicht ein herkömmlicher Blog-Artikel. **Technische Daten** geschrieben für ein konkretes Merkmal in ***klar*RAG**.
> I iterativ füttern dieses Dokument, um Code-- fokussierte LLMs während der Entwicklung zur Vernunft über den Handel - , validieren Annahmen -, und konvergieren auf einer rationalen Implementierung

Dieses Dokument beschreibt ein Teilsystem von ***klar*RAG**Ein Projekt, das I’®m aktiv entwickelt

Eine Kernanforderung von ***klar*RAG** ist die Fähigkeit zu extrahieren **Beweisstücke** ,, Absätze, Überschriften und Untertitel von , oder strukturierten Blöcken **dedupliziert** ohne das nützliche Signal zu zerstören.

***klar*RAG** Arbeiten durch Analyse und Extraktion der *am besten* verfügbare Belege aus Dokumenten, ,-Bildern und strukturierten Daten im Gegensatz zu den meisten RAG-Implementierungen **nicht** LLM---generierte Zusammenfassungen als primäres Artefakt speichern..- In vielen Fällen erfordert die Einnahme von LLM überhaupt keine LLM, obwohl man verwenden kann, wenn eine Eskalation gerechtfertigt ist.

Stattdessen ***klar*RAG** wendet eine breite Palette von deterministischen und probabilistischen Techniken auf .

* Segmente für Kandidaten extrahieren
* ihren Informationswert bewerten
* und nur die stärksten Vertreter behalten

**Deduplizieren ist ein kritischer Teil dieses Prozesses.**

Einfache Stringgleichheit ist nicht genug Das gleiche Konzept wird häufig mit unterschiedlichen Formulierungen ausgedrückt.,. Struktur oder Modalität. .. Die Behandlung als deutlich führt zu redundanten Speicher und schlechtes nachgeschaltetes Verhalten.

**Die Problemverbindungen zum Abrufzeitpunkt**

Wenn Ergebnisse abgerufen werden, um ein LLM-Multiple Segmente, die alle drücken die gleiche zugrunde liegende Idee produziert stumpfe ,... repetitive Antworten...

Um dies zu adressieren ***klar*RAG** behandelt Deduplikation als **Erste Zusammenstellungsproblem der --Klasse**Nicht ein Post- , -, HOC Filter, .,

Der Rest dieses Dokuments beschreibt, wie diese Deduplizierungsstrategie entworfen wurde. ['-Agile-Spezifikationen](https://www.mostlylucid.net/blog/writingfeaturespecs) angepasst an die Bedürfnisse von Code LLMS-.

Dies kristallisiert die unterschiedlichen Konzepte und zwingt das LLM, es zu dokumentieren.'s Gedankenprozesse Dies ist die erste Stufe der Gewährleistung des LLM *baut das Richtige auf*.

[Siehe mehr über ***klar*RAG** Hier ist .. ](https://www.lucidrag.com)

# Deduplikationsstrategie

***klar*RAG** verwendet eine zweiphasige Deduplikationsstrategie, um redundante Inhalte zu beseitigen und gleichzeitig wichtige Signale zu erhalten. **signal---Filter erhalten**Nicht inhaltliche Normalisierung

## Überblick

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

---


## Konstruktionsgarantien

Diese Invarianten werden durch das Deduplizierungssystem beibehalten.

Die Garantie wird von der zuständigen Behörde des Mitgliedstaats ausgestellt, in dem die Genehmigung erteilt wurde.
|-----------|-------------|
| **Auftragsbestand** Deduplizierung verändert nie die semantische Ordnung nach RRF-Ranking
| **Kein Begriffsverlust** Deduplizierung entfernt nie alle Instanzen eines Konzepts
| **Einhaltung der Dokumentengrenze** Deduplizierung überschreitet nie die Dokumentengrenzen bei der Einnahme.
| **Inhalt unveränderlich** Deduplizieren verändert niemals Einbettungen oder Textinhalte nur Auswahl und Salience-Scores.
| **Deterministisch** Bei identischen Eingängen und Konfigurationen erzeugt die Deduplizierung identische Ausgänge.

---


## Nicht-MSK-Ziele

Dieses System tut es ausdrücklich **nicht** Versuch, dies zu tun

- **Tatsachenwiderspruch erkennen** Zwei Segmente sagen, dass entgegengesetzte Dinge nicht dedupliziert sind
- **Die Wahrheit kanonisieren** Wir wählen eine korrekte Version für alle Quellen
- **Zusammenklappen von Paraphrasen über Dokumente bei der Einnahme** Jedes Dokument behält seine eigenen Segmente
- **Terminologie normalisieren** ", " und ", Machine Learning, MSC4, in verschiedenen Lehrbüchern werden separat aufbewahrt.
- **Auflösung des Unternehmens ersetzen** Dass die GraphRAG®'s Arbeit auf einer anderen Ebene arbeitet

---


## Determinismus - Reproduzierbarkeit

Deduplizieren ist vollständig deterministisch.

- **Einbettungen sind unveränderlich** einmal berechnet zur Extraktionszeit
- **Sortierung ist stabil** Segmente mit gleicher Salience erhalten ursprüngliche Ordnung
- **Keine Zufälligkeit** Keine Probenahmen keine ungefähren ANN , , keine probabilistischen Schwellenwerte
- **Kein externer Zustand** Dedup-Entscheidungen hängen nur vom aktuellen Segmentsatz ab

**Warum das so wichtig ist** Benutzer, die Retrieval-Ergebnisse debuggen können darauf vertrauen, dass das Re---Laufen mit den gleichen Eingängen die gleichen Ausgänge erzeugt. ***klar*RAG**''s breitere Fuzzi-Philosophie, die mit deterministischem Verhalten übereinstimmt

---


## Warum zwei Phasen?

### Phase der Verdauungsdeduplikation

**Ziel** Reduzieren Sie die Lagerung und verhindern Sie eine intra-Redundanz.

**Problemstellung** Dokumente enthalten oft wiederholte Inhalte

- Boilerplate text Kopfzeilen Fußzeilen Fusszeilen
- Copy---eingefügte Abschnitte
- Das gleiche Konzept erklärte mehrere Wege

**Lösung** Innerhalb jedes Dokuments vor der Indexierung deduplizieren

**Schlüsselinformationen** Nächstgelegene --Duplikate werden behandelt als *unabhängige Nachweise von Bedeutung*Wenn ein Autor erklärt, ein Konzept drei verschiedene Weisen, die Konzept wichtig sind, dass Konzept Wir erfassen dieses Signal durch Steigerung der Salience

### Phasendeduplikation des Retrievals

**Ziel** Verhindern, dass die LLM redundante Informationen über Dokumente hinweg erhält

**Problemstellung** Beim Abfragen über mehrere Dokumente können ähnliche Absätze in verschiedenen Quellen erscheinen.Das LLM sollte die gleiche Information mehrmals beschreiben.

**Lösung** Nach RRF-Ranking, das semantische Ähnlichkeiten verbindet, ,, Schlüsselwortmatch,, Salience, und Frische),, deduplizieren alle Dokumente, die das höchste Segment der - sind..

**Warum nach RRF-?** Die RRF-Score stellt das beste ganzheitliche Maß für Relevanz dar, bevor die Rangfolge dieses Signal verlieren würde.

### Warum sich Salience nur bei der Einnahme erhöht

Die Trennung ist beabsichtigt.

Was sie einfängt
|-------|------------------|
| **Zunahme der Einnahme** Autor betont, wie sehr das Dokument ein Konzept hervorhebt.
| **Rücklaufpunktzahl** Fragerelevanz des Inhalts zur Benutzer-Intent

Das Mischen dieser beim Retrieval würde die Dokument-Intent mit der Benutzer-Intetion verwickeln. *zu diesem Dokument*Nicht relevant *zu dieser Abfrage*Durch die Steigerung bei der Aufnahme ,,," bewahren wir den Autor, das Signal ohne Voreingenommenheit Abfrage-Ergebnisse ,MSC3"

---


## Phase der Verdauungsdeduplikation

### Standort

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

### Verfahren

`DeduplicateSegments()`

### Algorithmus

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

### Parameter

Standardmäßiger Parameter des Parameters |.
|-----------|---------|-------------|
| `similarityThreshold` Cosine Ähnlichkeit, über der Segmente als Duplikate gelten
| `salienceThreshold` ,| , , 0.05 , | , Mindest-Salience zu berücksichtigen , ( Filter Rauschen ,) ,
| `boostPerNearDuplicate` ,| , , 0.15 , | , Salience Boost per near , - , duplicate fusioniert ,(+15%) , und | ,

### Beispiele

**Exaktes Duplizieren**

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

**Naheanliegendes --Duplikat**

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

### Begründung für Schwellenwerte

- **Ähnlichkeiten mit der :** Basierend auf Forschungsergebnissen verwendet NVIDIA NeMo den Industriestandard für semantische Dedup.
- **WICHTIGSTE ENTWICKLUNG** Filter sehr niedrig .- , Wert Segmente unter Beibehaltung der meisten Inhalte
- **15%-Boost-Boost:** Sinnvolles Signal ohne überempfundene Konzepte

---


## Phasendeduplikation des Retrievals

### Standort

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

### Verfahren

`DeduplicateByEmbeddingPostRanking()`

### Algorithmus

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

### Parameter

Standardmäßiger Parameter des Parameters |.
|-----------|---------|-------------|
| `similarityThreshold` Cosine-Ähnlichkeitsschwelle für Kreuz---Doc-Dedup

### Warum Post---RRF-?

RRF RRF (-Reziprokaler Rang Fusion )- kombiniert vier Signale :-

1. **Dichte Punktzahl** Semantische Ähnlichkeit zur Abfrage
2. **BM-25-Score** Lexikalisches ,/"-Schlüsselwortspiel
3. **Salience Score-Wert** Bedeutung innerhalb des Dokuments
4. **Frischheitspunktzahl** Erhöhte Ruhezeiten

Deduplizieren von AFTER RRF bedeutet, dass wir das Segment behalten, das am besten mit der Abfrage über alle Dimensionen übereinstimmt.

### Beispiel

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

---


## Failure Modes Trade-Modalitäten

### Bekannte Einschränkungen

Fehler-Modus - Beschreibung - Milderung der |
|--------------|-------------|------------|
| **Falsch positives Ergebnis gegenüber -, nach oben** Zwei unterschiedliche, aber eng verwandte Konzepte können die Ähnlichkeit von 0.90 überschreiten.
| **Falsch negatives Ergebnis** Sehr kurze Segmente können schlecht einbetten.,. Fehlende semantische Ähnlichkeiten. |.
| **Einbettung von Drift** Änderungen von Einbettungsmodellen entkräften dedup-Annahmen
| **Auftragssensitivität** Die Auswahl von Greedy bedeutet, dass das erste High-Segment des Segments -'salience gewinnt.

### Akzeptierter Handel, --offs

- **Präzision über den Rückruf** Wir ziehen es vor, gelegentlich in der Nähe zu halten.-.dupliziert über versehentliches Entfernen unterschiedlicher Inhalte
- **Lagerung über Genauigkeit** Wir speichern Per---Dokument anstatt globale Dedup, um Quelle Attribution zu bewahren
- **Einfachheit über die Optimierung** Für typische Dokumentgrößen ist O-(-n.²)-annehmbar ,;-LSH fügt Komplexität hinzu

---


## Mehrsprachige Überlegungen

Deduplizierverhalten mit mehrsprachigen Inhalten

Szenarium: Verhalten
|----------|----------|-----------|
| **Gleiche Sprache** Normale Dedup-Anträge Einbetten erfassen semantische Ähnlichkeiten
| **Sprachliche Paraphrasen** Nicht dedupliziert |. Bewahrt Quelle -.Sprachvielfalt
| **Gemischtes --Sprachendokument** Einbetten von Ähnlichkeiten trennt natürlich Sprachen.

**Design-Wahl - :** Cross---lingual dedup wird explizit nicht unterstützt..- Dies bewahrt die Fähigkeit, die gleiche Tatsache in der bevorzugten Sprache des Benutzers abzurufen oder zu vergleichen, wie verschiedene Quellen Dinge formulieren.

Zukünftige Verbesserung: :-Cross---Lingual Dedup könnte bei Bedarf über Translation geschichtet werden.--invariante Einbettungen

---


## Sicherheitsaspekte

Das Deduplizierungssystem beinhaltet implizite Schutzvorkehrungen

Angriffs-Vektor (MSK) Schutz
|---------------|------------|
| **Salience Inflation durch Wiederholung** Beschleunigte Boost-Verschlüsse bei exakten Duplikaten, d.h.
| **Spam über Dokumente kopieren** |-Cross-Dedup beim Retrieval entfernt redundante Ergebnisse
| **Score-Manipulation durch doppelte Injektion** |-Dedup tritt auf AFTER-Ranking, ,-Verhinderung der Scoreinflation
| **Überflutung der Kesselplatte** Genaue Hash-Match-Detektionstropfen ohne Boost

**Anmerkung:** Deduplizierung ist nicht eine Sicherheitsgrenze..-Beleidigende Inhalte, die Ingestionsfilter passieren, werden indexiert..-Inhaltsfilterung sollte vorgelagert geschehen.

---


## Wechselwirkung mit GraphRAG

Deduplizieren und GraphRAG sind absichtlich orthogonal.

System Funktioniert auf dem Zweck
|--------|-------------|---------|
| **Deduplikation** Segmente _(_text stücks_)|_ Redundante Retrieval-Ergebnisse entfernen
| **GraphRAG** Datenverarbeitungs- und -bearbeitungssoftware

**Warum trennen?**

- Ein Segment, in dem das Unternehmen " erwähnt, kann als ähnlicher Text dedupe aber die gleiche Entität darstellen, die die Aufgabe von GraphRAG®' zu lösen hat.
- Dedup doesns.'.t Notwendigkeit Entität Bewusstsein ,;. es arbeitet rein auf semantische Ähnlichkeit
- Entity-Entity--®aware dedup könnte später als Erweiterung hinzugefügt werden.

---


## Beobachtbarkeit Metrics

### Aktuelle Protokollierung

Aufnahme-:

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

Retrieval-:

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

### Empfohlene Metrics

Für die Produktionsüberwachung ist das Tracking zu beachten.

Metrisches Messgerät Beschreibung Messgeräte Gesunder Bereich
|--------|-------------|---------------|
| `dedup_ratio_ingestion` Segmente, die bei der Aufnahme entfernt wurden
| `dedup_ratio_retrieval` Segmente, die beim Abruf entfernt wurden
| `avg_salience_boost` Durchschnittlicher Schub je Dokument
| `max_salience_boost` Höchster Schub in einem Dokument |.<.MS K3.(.else ein Konzept dominiert ).
| `dedup_by_doc_type` Abhängige Rate segmentiert nach Dokumenttyp

### Debugging Tipps

- **Hochingestions-Dedup** Dokument kann übermäßige Boilerplatte haben oder auto-generiert werden
- **Niedrige Ingestion dedup** Dokument hat unterschiedliche Inhalte oder Einbettungen sind schlecht
- **High Retrieval dedup .(>30%): .** Abfrage kann zu breit sein, oder Corpus hat viele ähnliche Dokumente
- **Salience nähert sich 1.0:** Das Konzept wurde stark betont.;-verifizieren Sie es. 's legitime nicht Spam.

---


## Einrichtung

Deduplizierung wird über `DocSummarizerConfig.Deduplication` Abschnitt in `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
      }
    }
  }
}
```

### Einstellung der Einnahme

Standardmäßiger Parameter des Parameters |.
|-----------|---------|-------------|
| `Enabled` | `true` Verdauliche Verdauungsdeduplikation aktivieren
| `SimilarityThreshold` | `0.90` Cosine-Ähnlichkeitsschwelle für Doppeldetektion
| `SalienceThreshold` | `0.05` Minimale Salience, um Geräusche von ( zu berücksichtigen
| `EnableSalienceBoost` | `true` Verbesserung der Salience für die Nähe von -
| `BoostPerNearDuplicate` | `0.15` |-Basisschub pro Nähe --Duplikat
| `MaxSalienceBoost` | `1.0` Maximale Salience-Kappe
| `BoostDecayMode` | `Logarithmic` | `Linear` oder `Logarithmic` Verweigerung
| `LogBase` | `2.0` Basis für logarithmischen Zerfall

### Retrieval-Konfiguration

Standardmäßiger Parameter des Parameters |.
|-----------|---------|-------------|
| `Enabled` | `true` Deduplizierung des Retrievals aktivieren
| `SimilarityThreshold` | `0.90` Cosine-Ähnlichkeitsschwelle
| `MinRelevanceScore` | `0.25` Mindestpunktzahl der RRF, um die | einzuschließen

### Konfiguration von Analysen

Standardmäßiger Parameter des Parameters |.
|-----------|---------|-------------|
| `EnableLogging` | `true` Log-Deduplikationsoperationen
| `EnableMetrics` | `true` Sammeln Sie Metriken für die Überwachung
| `HighIngestionDedupThreshold` | `0.50` Warnung, wenn bei der Einnahme dedupliziert
| `HighRetrievalDedupThreshold` | `0.30` Warnen Sie, wenn bei der Retrievaldedupliziert
| `HighSalienceBoostThreshold` | `0.60` Warnung, wenn der Boost höher ist

### Boost Decay-Modi

**Linearer Modus** Vorhersehbar

```
boost = boostPerNearDuplicate × count
```

Beispiel: 3, in der Nähe von -,dupes, ×, MKS4, MSC5, Boost

**Logarithmischer Modus** (-Diminishing kehrt zurück ,-Standard

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

Beispiel: 3, in der Nähe von -,dupes, →, MSC4, log, ₂(4), MCSK7, Boost

Der logarithmische Modus wird empfohlen, weil

- Erste paar Duplikate haben das stärkste Signal
- Viele Duplikate können bedeuten, dass Boilerplate nicht wichtig ist.
- Verhindert ausgelaufene Salience-Inflation

---


## Leistungsbeurteilungen

### Komplexität

Phase - Komplexität - Typische Größe - Auswirkungen - Auswirkungen
|-------|------------|--------------|--------|
|-Ingestionssegmente – |-Abschnitte –<- Segmente
|-Segmente für die Wiedereinführung von |-Signmenten (MSK)

### Skalierungspfad

Für sehr große Dokumente

1. **LSH - Lokalität - Sensitive Hassing - ):** Ungefähre Dedup
2. **Batch-Vergleich** Prozess in Brocken, um den Speicher zu reduzieren
3. **Frühe Filterung** aggressivere Salience-Schwelle

Die aktuelle Implementierung ist für typische Dokumentgrößen optimiert..-LSH fügt Komplexität ohne Nutzen für die meisten Anwendungsfälle hinzu.

---


## Vergleich mit Forschung

Annäherung an die Schwelle des Messwerts
|----------|-----------|--------|
Diese Implementierung
NVIDIA-NeMo-Kurator [SemDeDup docs](https://docs.nvidia.com/nemo/curator/latest/curate-text/process-data/deduplication/semdedup.html) |
|-MinHash LSH Standard-)-|-M0.80-Jaccard [Google-Papier](https://huggingface.co/blog/dedup) |
Semhash , Semshash , | , 0.90-0.95 ,| [GitHub](https://github.com/MinishLab/semhash) |

Unsere Schwelle von -0.90 ordnet sich mit den branchenbesten Praktiken für semantische Deduplizierung an

---


## Was ist nicht dedupliziert

Inhalt Typ: Grund:
|--------------|--------|
|-Cross---Dokument bei der Einnahme .|-Preservet per .--Quellauflösung und Zuordnung .
Der Gehalt an vergleichbarem Material ist semantisch ausgeprägt.
Unterschiedliche Segmenttypen (Segment-Typen) (Signment vs Absatz) haben unterschiedliche strukturelle Rollen (Sognition vs.
Sprachparaphrasen zur Erhaltung der sprachlichen Vielfalt

---


## Stand der Umsetzung

Beschreibung des Merkmals: Status Standort
|---------|--------|----------|
Konfigurierbare Schwellenwerte `DeduplicationConfig` Klasse „|"
Verstärkter Zerfall (-Log-Skala )-|-✅-Implementiert `BoostDecayMode.Logarithmic` |
|-Dedup-Analysen /-metrische Daten |-Implementiert |-Messungen `DeduplicationResult<T>` Datensatz
Integration von DI-Diensten `IDeduplicationService` |

## Künftige Verbesserungen

1. **Dedup-Analyse-Dashboard** Visuelle Verfolgung der Raten je Dokumenttyp
2. **Sprachenübergreifende Option„:"** Übersetzungsvarianten für mehrsprachige Dedup-Versionen
3. **RECHTSTRÄGER** GraphRAG-Entitäten als zusätzliches Signal verwenden
4. **Prometheus-/-OpenTelemetrie-:-** Exportmetriken für die Überwachung von Dashboards

---


## Zusammenfassung

Diese Deduplizierungsstrategie

- **Bewahrt Signal** --Near---dupliziert mehr Bedeutung, als verworfen zu werden
- **Achtung der Grenzen** Dokumente halten unabhängige Segmentsätze aufrecht
- **Ranks dann Filtern** Verwendet volles RRF-Signal vor cross.-.doc dedup
- **Fehler sicher** Bevorzugt das Halten von Inhalten über aggressive Entfernung
- **Bleibt deterministisch** Die gleichen Eingänge erzeugen immer dieselben Ausgänge