ReadOnce: I wanted less rereading, so I kept the model's mistake visible
Описание и применение
ReadOnce – веб‑приложение, сравнивающее старые и новые заметки, выявляющее возможные повторения с помощью эмбеддингов и лексических фильтров, сохраняя исходный текст.
Задача
Users need to detect repeated or paraphrased content in new notes without losing the original text or relying on external APIs.
Результат
In 4/4 calibration and 12/12 held‑out synthetic cases, ReadOnce matched expectations, outperforming an exact‑only baseline (0/4 and 10/12). One role‑swap miss was documented and retained for transparency.
Рабочий процесс
- Load current and earlier notes into the two input boxes
- The app tokenizes each note and generates 384‑dimensional vectors via Xenova/all-MiniLM-L6-v2
- Compute cosine similarity between each current note and all earlier notes
- Apply lexical guards (quantity, date, negation, status words, uppercase identifiers) to filter false positives
- Flag notes with cosine ≥0.82, runner‑up gap ≥0.06, and equal protected lexical facts as "possible repeat"
- Render all current notes with reference links and reasons
- Export audit JSON containing original text, references, scores, reasons, settings and timings
Доказательства
ReadOnce takes a smaller job: compare an earlier set of notes with a current one and suggest which lines might repeat earlier meaning. It keeps every current line, its earlier reference, the actual model score and a reason. Nothing is deleted or rewritten.
The final actual browser-model run matched the authored expectations in 4/4 calibration cases and 12/12 held-out cases.
The matching rule is deliberately visible: cosine at least 0.82, a best-versus-runner-up gap of at least 0.06, and equal protected lexical facts.
- Дата записи: 2026-10-21T13:56:18.669Z