Autopdftagger ist ein Python-Tool für eine effiziente Organisation für die Heim-Office-Organisation, die sich auf die Digitalisierung und Organisation von digitalen und papierbasierten Dokumenten konzentriert. Durch die Automatisierung des Markierens von PDF-Dateien, einschließlich bildreicher Dokumente und Scans unterschiedlicher Qualität, soll die Organisation digitaler Archive optimiert werden.
Im fortschreitenden digitalen Zeitalter werden jetzt viele Dokumente digital geliefert, und doch erhebliche Dokumente kommen häufig in Papierform an. Mit Blick auf eine digitale Zukunft wird die Konsolidierung dieser Dokumente in ein einheitliches digitales Archiv immer wertvoller. Ein einfaches Scannen mit Smartphone -Kameras hat dies praktisch gemacht. Die Zuverlässigkeit vorhandener OCR-Technologien und deren begrenzte Fähigkeit, nicht-textuelle Inhalte wie Zeichnungen oder Fotos effektiv zu indizieren, behindert die Suchbarkeit dieser Dokumente. Autopdftagger zielt darauf ab, diese Lücke zu schließen, indem sie eine AI-unterstützte Analyse und Organisation von PDF-Dateien anbietet und ihre Suchbarkeit und Organisation mit einem mit dem menschlichen Anstrengung vergleichbaren Niveau verbessern.
Derzeit gibt es einen funktionellen Prototyp in Form eines Terminalprogramms mit einem Python -Modul, das seine Funktionalität demonstriert und für mich bereits beeindruckende Ergebnisse erzielt hat. Für eine breitere Anwendung sind sicherlich viele detaillierte Verbesserungen erforderlich, insbesondere bei Tests, Promtoptimierung, Fehlerbehandlung und Dokumentation.
Wenn Sie dieses Tool hilfreich finden und Ideen haben, um es zu verbessern, können Sie gerne einen Beitrag leisten. Obwohl ich kein Vollzeitprogrammierer bin und überhaupt nicht professionell fühle, sind Vorschläge oder Verbesserungen willkommen. Senden Sie Fehlerberichte, Feature -Anfragen oder ein anderes Feedback. Danke, dass du vorbeischaust!
$ pip install git+https://github.com/Uli-Z/autoPDFtaggerErstellen Sie die Konfigurationsdatei und speichern Sie sie in ~/.autopdftagger.conf :
; Configuration for autoPDFtagger
[DEFAULT]
language = {YOUR LANGUAGE}
[OPENAI-API]
API-Key = {INSERT YOUR API-KEY}Das Programm ist grundlegend wie folgt strukturiert:
file analysis )text analysis )image analysis )tag analysis )Hinweis: Vor allem (fast) sind alle Optionen kombiniert. Die Reihenfolge der einzelnen Schritte ist jedoch festgelegt; Sie werden in der oben genannten Reihenfolge verarbeitet. Stattdessen wird die Verwendung von Rohrleitungen im Terminal ausdrücklich berücksichtigt, sodass der Status der Datenbank an eine andere Instanz des Programms übergeben wird. Dadurch können Sie jeden Schritt überprüfen und ändern (z. B., erste Textanalyse, dann nach Qualität filtern, gefolgt von Bildanalyse, dann neu filterieren und schließlich die PDF-Dateien exportieren). Mit JSON-Output können die Ergebnisse des Programms direkt zu einer anderen Instanz des Programms geleitet werden.
$ autoPDFtagger --help
usage: autoPDFtagger [-h] [--config-file CONFIG_FILE] [-b [BASE_DIRECTORY]] [-j [JSON]] [-s [CSV]] [-d {0,1,2}] [-f] [-t] [-i] [-c] [-e [EXPORT]] [-l]
[--keep-above [KEEP_ABOVE]] [--keep-below [KEEP_BELOW]] [--calc-stats]
[input_items ...]
Smart PDF-analyzing Tool
positional arguments:
input_items List of input PDFs and folders, alternativly you can use a JSON- or CSV-file
options:
-h , --help show this help message and exit
--config-file CONFIG_FILE
Specify path to configuration file. Defaults to ~ /.autoPDFtagger.conf
-b [BASE_DIRECTORY], --base-directory [BASE_DIRECTORY]
Set base directory
-j [JSON], --json [JSON]
Output JSON-Database to stdout. If filename provided, save it to file
-s [CSV], --csv [CSV]
Output CSV-Database to specified file
-d {0,1,2}, --debug {0,1,2}
Debug level (0: no debug, 1: basic debug, 2: detailed debug)
-f , --file-analysis Try to conventionally extract metadata from file, file name and folder structure
-t , --ai-text-analysis
Do an AI text analysis
-i, --ai-image-analysis
Do an AI image analysis
-c , --ai-tag-analysis
Do an AI tag analysis
-e [EXPORT], --export [EXPORT]
Copy Documents to a target folder
-l, --list List documents stored in database
--keep-above [KEEP_ABOVE]
Before applying actions, filter out and retain only the documents with a confidence index greater than or equal to a specific
value (default: 7).
--keep-below [KEEP_BELOW]
Analogous to --keep-above. Retain only document with an index less than specified.
--calc-stats Calculate statistics and (roughly ! ) estimate costs for different analysesLesen Sie alle PDF-Dateien aus einem Ordner pdf_archive , führen Sie eine grundlegende Dateianalyse (-F) durch und speichern Sie Informationen in einem json-database- Dateien.json (-J [Dateiname]):
$ autoPDFtagger ./pdf_archive --file-analysis --json allfiles.jsonLesen Sie eine frühere erstellte JSON-DATABASE und eine AI-Textanalyse, die die Ergebnisse in einer neuen JSON-Datei speichert
$ autoPDFtagger allfiles.json --ai-text-analysis --json textanalysis.jsonFühren Sie eine AI-Image-Analyse für alle Dateien mit geschätzten Metadaten mit geringer Qualität durch.
$ autoPDFtagger textanalysis.json --keep-below --ai-image-analysis --json imageanalysis.jsonErinnern Sie sich alle zusammen, analysieren und organisieren Sie Tags
$ autoPDFtagger textanalysis.json imageanalysis.json --ai-tag-analysis --json final.jsonKopieren Sie die Dateien in einen neuen Ordner New_archive Einstellen neuer Metadaten und Zuweisen neuer Dateinamen. Die ursprüngliche Ordnerstruktur bleibt unverändert.
$ autoPDFtagger final.json -e ./new_archiveMachen Sie alles auf einmal:
$ autoPDFtagger pdf_archive -ftic -e new_archivemain.py : Die Terminalschnittstelle für die Anwendung.autoPDFtagger.py : Verwaltet die Kernfunktionalitäten des Tools.AIAgents.py : Basisklassen für AI Agent Management, einschließlich OpenAI -API -Kommunikation.AIAgents_OPENAI_pdf.py : Spezifische AI -Agenten, die der Analyse von Text, Bild und Tag gewidmet sind.PDFDocument.py : Verarbeitet einzelne PDF -Dokumente, Verwaltung von Metadaten Lesen und Schreiben.PDFList.py : Beaufsichtigt eine Datenbank mit PDF -Dokumenten, deren Metadaten, und bietet Exportfunktionen.config.py : Verwaltet Konfigurationsdateien.autoPDFtagger_example_config.conf : Ein Beispielkonfigurationsdatei, das die API -Schlüsselanlage und andere Einstellungen umrichtet. GPL-3