From a2fa76a41a842b34fa3256924cc91ba5e162b635 Mon Sep 17 00:00:00 2001 From: mAi Date: Thu, 21 May 2026 11:26:40 +0200 Subject: [PATCH] mAi: #4 - paperless-AI prompt: intra-scan dedup + short-brand prefix match Two prompt-only rules added to address follow-ups from #3: 1. Intra-scan dedup (new rule 4 in Correspondents section): when processing multiple docs from the same sender in one scan batch, reuse the correspondent name created earlier in the same session instead of letting each doc create a fresh alias. Triggered by paperless-AI creating 3 Praxis-Irle aliases in one batch (no native batch-context plumbing; best-effort via prompt). 2. Short-brand prefix match (extension of Fuzzy-Regel): if OCR name is a strict prefix of an existing correspondent (or vice-versa) and the first 2 brand tokens match, use the existing correspondent. Triggered by 'Hogan Lovells' creating a new correspondent despite 'Hogan Lovells International LLP' already existing. Deployed via push_system_prompt.py --apply, container restarted, both strings verified present in /app/data/.env (backup at .env.bak.20260521T092606). Effectiveness will be observed as multi-doc scans flow through. --- infra/paperless/SYSTEM_PROMPT.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/infra/paperless/SYSTEM_PROMPT.txt b/infra/paperless/SYSTEM_PROMPT.txt index 7c767f2..e32f593 100644 --- a/infra/paperless/SYSTEM_PROMPT.txt +++ b/infra/paperless/SYSTEM_PROMPT.txt @@ -31,10 +31,15 @@ Correspondents — WICHTIG, in dieser Reihenfolge: 3. Bevorzuge existierende Correspondents bei klarer semantischer Aehnlichkeit (Fuzzy-Regel unten). Wenn der OCR-Absender genuinely neu ist (z.B. ein neuer Versorger, Vermieter, Arzt, Dienstleister, Anwalt, Mandant, Versicherer), lege einen neuen Correspondent an, statt zwanghaft auf den naechsten existierenden Namen zu mappen. +4. INTRA-SCAN DEDUP: Bevor du einen neuen Correspondent anlegst, pruefe ob du in dieser Sitzung (gleicher Scan-Batch, gleicher Verarbeitungslauf) bereits einen Correspondent mit aehnlichem Namen angelegt hast — verwende dann den existierenden (denselben Namen unveraendert), statt eine weitere Variante anzulegen. Konkret: kommen in einem Scan mehrere Dokumente vom gleichen Sender vor (z.B. zwei Rechnungen derselben Arztpraxis, mehrere Schreiben desselben Versorgers), MUSS der Correspondent-Name bei jedem dieser Dokumente identisch sein. Im Zweifel waehle die laengste / vollstaendigste Form, die du in diesem Scan gesehen hast. + Fuzzy-Regel: Wenn der OCR-Absendername bis auf Kleinschreibung, Akzente, Tippfehler, Anrede ("Herr"/"Frau"/"Herrn"), Adresszusatz, Personenname als Ansprechpartner oder Rechtsform-Suffix (GmbH/AG/eG/e.V./LLP/KG/mbH/AG/VVaG) einem existierenden Correspondent entspricht, verwende den existierenden Namen UNVERAENDERT. Bei substantiell anderen Namen (anderer Stamm, andere Branche, andere Firmierung) lege einen neuen an. +Beim Vergleich gilt: Ist der OCR-Name ein striktes Praefix eines existierenden Correspondents (oder umgekehrt), und stimmen die ersten 2 Brand-Tokens ueberein (Token = Wort, das nicht Rechtsform-Suffix, Adresse oder Anrede ist), verwende den existierenden Correspondent. Das gilt sowohl fuer Kurzformen ohne Rechtsform-Suffix ("Hogan Lovells" -> "Hogan Lovells International LLP") als auch fuer den umgekehrten Fall, wenn die existierende Form kuerzer ist als die OCR-Form. + Beispiele: - "Hogan Lovells lnternational LLP" (OCR-Variante) -> "Hogan Lovells International LLP" (existiert) +- "Hogan Lovells" (Kurzform ohne Rechtsform) -> "Hogan Lovells International LLP" (existiert; OCR-Name ist Praefix, erste 2 Brand-Tokens stimmen) - "eprimo CmbH" -> "eprimo" (existiert) - "Helios Klinikum Duisburg GmbH" -> "Helios Klinikum Duisburg" (existiert) - "Kundenservice von eprimo" -> "eprimo" (existiert) @@ -42,6 +47,7 @@ Beispiele: - "ING-DiBa AG, Theodor-Heuss-Allee 2, 60486 Frankfurt am Main" -> "ING-DiBa AG" (existiert; Adresse weglassen) - "Vattenfall Europe Sales GmbH" -> "Vattenfall" (existiert; konsolidiere Konzernvarianten) - Brief von einem NEUEN Versorger "Stadtwerke XYZ" -> neu anlegen als "Stadtwerke XYZ" (NICHT auf "eprimo" oder "Vodafone" mappen, nur weil das der naechste existierende Versorger ist) +- Drei Dokumente einer neuen Praxis im selben Scan: erstes Dokument legt Correspondent "Praxis Dr. Mustermann" an, zweites und drittes Dokument verwenden GENAU diesen Namen, auch wenn der OCR "Dr. Mustermann" oder "Praxis fuer XYZ" liest (siehe Regel 4). Beim Anlegen neuer Correspondents: voller offizieller Name der Organisation/Person, KEINE Adresse, KEINE Anrede, KEINE Rechtsform-Suffixe in Reinform (GmbH/AG/etc. nur dann mit aufnehmen, wenn sie Teil der Markenidentitaet sind, z.B. "DKB Grund GmbH").