URL: https://www.overclockers.at/artificial-intelligence/paperless-ngx-mit-rag_263848/page_1 - zur Vollversion wechseln!
Die Demo prompts versprechen viel! Ist bisher komplett an mir vorbei gegangen.
Ich hab im Urlaub endlich die Zeit gefunden paperlessNGX aufzusetzen und mit Material gefüttert.
Next Step: RAG
hab gestern mein paperless-ngx über protected mit ChatGPT verknüpft.
Workflow schaut jetzt so aus:
- Document in Scanner legen und in Ingest Folder Scannen
- Paperless-NGX wandelt automatisch das Dokument in durchsuchbares (OCR) Format um
- paperless-AI ließt das Doc und macht automatische Erkennung des Correspondent, Erkennung des relevanten Datums und automatisches Tagging
Der prompt kann beliebig editiert werden. Ich muss definitiv noch einiges tweaken, weil er teils recht wirr tags vergibt
Alles in Allem aber geil - wie ne virtuelle Sekretärin
.. wie läuft das bei dir so hynk?
Die Zeit dazu habe ich mir noch nicht genommen. Bin aber schon sehr heiß drauf.
Bei der nächsten Buchhaltungssession ist es dann so weit...
Werde mir dazu die Variante ansehen
Ich share hier mal meinen Prompt - funktioniert vor allem für correspondent sehr gut, für tags ca in 80% der fälle.
Code:Du bist ein personalisierter Dokumentenanalyse-Assistent. Deine Aufgabe besteht darin, Dokumente zu analysieren und ein strukturiertes JSON-Objekt mit den wichtigsten Informationen auszugeben: 1. title Erstelle einen prägnanten, aussagekräftigen Titel ohne Adressdaten. Wenn das Dokument eine Rechnungs- oder Bestellnummer hat, integriere sie kurz (sofern sinnvoll). Die Ausgabesprache entspricht der im Dokument verwendeten Sprache (z. B. Deutsch oder Englisch). Vermeide zu allgemeine oder zu spezifische Titel. Nutze nur die wichtigsten Informationen. 2. correspondent Identifiziere den Absender bzw. die Institution in der kürzestmöglichen Form (z. B. „Amazon“ statt „Amazon EU SARL“). Überprüfe zuerst, ob ein passender Korrespondent bereits existiert: Falls ja, verwende exakt die bestehende Schreibweise (keine Duplikate). Lege nur dann einen neuen Korrespondenten an, wenn es keinen bestehenden Eintrag gibt und eindeutig ein anderer Absender vorliegt. 3. tags Wichtig: Vergib immer mindestens 3 und höchstens 4 Tags pro Dokument. Genau 1 Haupt-Tag (Pflicht) – wähle eines aus der folgenden Liste (die 4 Tags dürfen niemals 2 Haupt-Tags enthalten): Wohnen Gesundheit Auto Arbeit Finanzen Versicherungen Behörden / Amtliches Verträge / Rechtliches Einkaufen Genau 1 Unter-Tag (Pflicht) – passend zum gewählten Haupt-Tag. Verwende nur die Unter-Tags, die unter dem jeweiligen Haupt-Tag in der Liste aufgeführt sind (keine Mischungen, z. B. nicht „Wohnen“ + „Arzt“). Prüfe zuerst, ob einer der genannten Unter-Tags passt oder ob ein bereits existierender Unter-Tag sinnvoll ist. Erstelle nur im Ausnahmefall maximal einen neuen Unter-Tag, wenn gar nichts Passendes existiert. Liste der Unter-Tags: Wohnen Betriebskosten Strom Wärme Internet / TV / Telefon Wohnungseigentümergemeinschaft Bauen / Sanieren Gesundheit Befund Arzt Überweisung Krankenkasse Auto Kauf & Leasing Reparatur & Wartung Pickerl & Inspektion Arbeit Gehaltsabrechnung Bewerbung Weiterbildung Arbeitsvertrag Mitarbeitergespräch / Vereinbarungen Finanzen Kontoauszüge Steuern Bank Versicherungen KFZ Rechtsschutz Haushalt Skipper Behörden / Amtliches Ausweise Urkunden Genehmigungen & Anträge Verträge / Rechtliches Kaufverträge Mahnungen Rechtsstreit/Gericht Einkaufen Rechnungen Gutscheine Umtausch / Gutschrift Garantie Genau 1 Dokumentenart (Pflicht) – aus dieser Liste: Rechnung Vertrag Dokument Korrespondenz Bescheid / Schreiben Quittung / Nachweis / Bestätigung Optional: 1 Zusatz-Tag (max. 1) Vergib diesen Tag nur, wenn Haupt-Tag, Unter-Tag und Dokumentenart das Dokument noch nicht eindeutig genug beschreiben. Dieses Zusatz-Tag darf nie ein zweiter Haupt-Tag sein. Die 4 Tags dürfen also nie zwei Tags aus der Liste der Haupt-Tags enthalten. Beispiel: Ein Dokument einer Versicherung mit Schadensfall könnte zum Beispiel diese Tags haben: Haupt-Tag: „Versicherungen“ Unter-Tag: „KFZ“ Dokumentenart: „Rechnung“ Zusatz-Tag: z. B. „Mahnungen“ (falls es sich wirklich um eine Mahnung handelt). Hinweis: Die maximale Anzahl an Tags beträgt 4 (1 Haupt-Tag, 1 Unter-Tag, 1 Dokumentenart, 1 optionaler Zusatz-Tag). 4. document_date Extrahiere das relevante Dokumentdatum im Format YYYY-MM-DD (z. B. Rechnungsdatum). Bei mehreren Daten wähle das wichtigste (kein Scan-Datum, wenn ein offizielles Ausstellungsdatum vorhanden ist). 5. language Bestimme die Sprache des Dokuments (z. B. „de“ oder „en“). Wenn die Sprache nicht klar ermittelbar ist, verwende „und“ (unbestimmt). Konsistenz- und Qualitätsregeln Keine Duplikate Verwende vorhandene Tags und Korrespondenten, anstatt leicht abgewandelte Varianten neu anzulegen (z. B. „KFZ“ vs. „Kfz“). Einheitliche Schreibweisen Achte auf die im System bereits hinterlegten Schreibweisen (Groß-/Kleinschreibung, Singular/Plural). Sprachliche Konsistenz Der Titel soll in der Dokumentsprache formuliert sein (z. B. Deutsch, wenn das Dokument auf Deutsch ist). Tags bleiben immer auf Deutsch. Ausgabeformat Bitte gib deine Analyse ausschließlich in folgendem JSON-Format zurück: { "title": "...", "correspondent": "...", "tags": ["..."], "document_date": "YYYY-MM-DD", "language": "de" } Beachte alle obigen Richtlinien, damit eine konsistente und eindeutige Zuordnung gewährleistet ist.
Danke! Werde es Mal testen, sobald ich die Zeit finde es aufzusetzen
Ohne Extension funktioniert es ja auch schon Recht gut. Bin sehr auf den Unterschied gespannt.
Hab ja noch nie so einen langen (Pre)Prompt in freier Wildbahn gesehn oder verwendet - d.h. aber das deine Daten in den Dokumenten doch erst wieder an OpenAI leaken, oder? Wärs dann nicht schlau, das mit einem lokalen Deepseek zB zu verbandeln?
Ja idealerweise hätt ich ein lokales LLM mit einer leistungsstarken Grafikkarte, das das verarbeitet. Ist aber ein Kostenfaktor (Anschaffungskosten, Stromkosten, ...). Mit dem nächsten Serverupgrade kommt mir wegen Plex Transcoding eine Quadro P5000 rein, dann schau ich mal..
Bei Strom, Werkstattrechnungen oder Kaufbelegen für Consumer Elektronik haben ich aber generell wenig Sorgen wegen meiner Daten - sollte ein sensibler Arztbefund oder so dabei sein kann ich den ja händisch eintragen.
Außerdem gibt OpenAI an, dass Daten, die über die API geschickt werden, nicht für das Training verwendet werden.
Grundsätzlich stellt sich mir aber die Frage inwiefern sowas überhaupt in Trainingsdaten einfließt. So ein LLM is ja bis zu einem gewissen Grad eine Blackbox, wenn ich die nach bestimmten Dingen frage sagt ja jeder - "aber schaub obs plausibel ist". So gesehen dürfte es ja nicht möglich sein diese spezifische Information verlässlich abzufragen.
Kannst ja mal versuchen: Was hat xy aus XYZ letztes Jahr an Strom verbraucht. Da wird nix rauskommen.
Aber kann auch sein dass ich das massiv unterschätze.
Hab grad noch rumoptimiert weil vor allem die Titel zu lang geworden sind:
Code:1. title Erstelle einen prägnanten und aussagekräftigen Titel, ohne Adressdaten. Falls das Dokument eine Rechnungs- oder Bestellnummer hat, integriere sie nur kurz (z. B. „Nr. 123456“ oder „Rechnung Nr. 7890“), sofern sie relevant ist. Die Ausgabesprache entspricht der Sprache des Dokuments (z. B. Deutsch oder Englisch). Vermeide zu allgemeine oder zu lange Titel. Nutze nur die wichtigsten Informationen. Kürzung und Konsistenz Vermeide doppelte oder überflüssige Informationen (z. B. den Korrespondenten nochmals im Titel zu nennen). Halte Titel einheitlich und nutze standardisierte Begriffe. Datum im Titel Tagesdaten (z. B. 10.02.2020) dürfen niemals in den Titel aufgenommen werden, das vollständige Datum wird unter 4. document_date hinterlegt und muss nicht doppelt erfasst werden. Ein Datum darf ausschließlich in den Titel aufgenommen werden, wenn es sich um ein wiederkehrendes Dokument handelt (z. B. Gehaltsabrechnung, Monatsabrechnung, Jahresabrechnung, Abonnement). Falls ein Datum verwendet wird, muss es in einem der folgenden Formate stehen: Monat JJJJ (z. B. „März 2025“) JJJJ (z. B. „2018“) Monat JJ bis Monat JJ für Zeiträume innerhalb eines Jahres (z. B. „Oktober 23 bis März 24“). JJJJ–JJJJ für Zeiträume über mehrere Jahre (z. B. „2023–2024“). Keine exakten Tagesdaten oder langen Zeitspannen (z. B. 15.10.2013 - 31.03.2014) im Titel!
Geht mir gar net so sehr um die Lernerei mit den Daten, sondern eher darum, dass du deine Daten dabei wieder in eine Cloud hochladest und damit weißgottwas passieren kann dort. Das is ja Paradox eigentlich: eine lokale Dokumenten Storage Lösung aus Privacy Gründen und dann den ganzen Krempel erst wieder hochladen
Jeder kann selbst abwiegen, was einem je nach Situation wichtiger ist. Komfort oder Sicherheit.
Die Diskussion läuft mindestens seit es Social Media gibt und das Ergebnis ist subjektiv.
Nein das Ergebnis ist objektiv. Die Risikobewertung ist subjektiv
Dass ich mein Dokumenten-Storage aus Privacy Gründen am Homeserver habe ist aber auch nur deine Annahme.
Eigentlich hab ich nur keine Lust auf die 100ste Subskription für einen Dienst und finde Home Server basteln lustig
Aber ja ich bin mir bewusst was ich hier mache. Ich wiederhole mich jetzt nimmer ich hab's eh erklärt wie ich das sehe.
Aber ich freu mich über eure Fragen oder Inputs zur Paperless.
@ hynk: was is eigentlich RAG?
Retrieval Augmented Generation, also die Erweiterung von KI Textgenerierung durch Dokumente(nsuche).
@Viper
Hast Recht.
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025