Find duplicate evidence before it fills your context window.

Paste a query and its retrieved chunks. ContextDeduper estimates lexical overlap, identifies likely near-duplicates, and prepares a compact draft for human review.

This is a lexical preflight, not semantic truth. Similar wording can carry different meaning, and paraphrases can evade lexical checks.

Input workbench

Used only to prioritize chunks with matching terms.
Separate every chunk with a line containing ---. Use 2–100 chunks per analysis.
0 chunks 0 tokens

Analysis & results

LEXICAL / LOCAL
Add at least two chunks, then run the preflight. Results stay in this tab.

How the preflight works

  1. Text is normalized into lexical terms inside your browser.
  2. Every chunk pair receives Jaccard and term-frequency cosine scores.
  3. A query-aware greedy pass keeps distinct chunks and flags high-overlap candidates.
  4. The tool estimates removed context and composes an editable draft.

What it cannot decide

  • Whether a paraphrase carries the same claim.
  • Whether a source is correct, current, or trustworthy.
  • Whether domain jargon makes useful chunks look repetitive.
  • Whether the cleaned context improves model answers.

Frequently asked questions

Does ContextDeduper use embeddings or an LLM?

No. The current version uses local lexical token overlap and term-frequency cosine similarity. That makes it fast and private, but it cannot detect every semantic duplicate.

Is the token count exact?

No. It is a rough character-based estimate across languages. Use your model provider's tokenizer for billing or hard context limits.

Can I paste confidential retrieved text?

The current tool processes inputs in your browser and does not send them to our server. Still follow your organization's device and data-handling policy.

Should every flagged chunk be removed?

No. Review each recommendation. Similar language may contain a distinct date, exception, source, or claim that the lexical analysis cannot understand.