À propos du projet
paperless-paddle-ocr intègre PaddleOCR PP-OCRv6 à paperless-ngx en tant que worker externe. Il interroge l'API paperless pour les documents correspondant à un tag d'entrée configurable, les revendique avec un tag de traitement, télécharge les fichiers, rend les pages PDF en images à l'aide de PyMuPDF, exécute l'OCR, puis PATCH le texte extrait dans le contenu du document. Les documents terminés reçoivent un tag de sortie, tandis que les échecs reçoivent un tag d'erreur.
Le projet est conçu pour une utilisation sur CPU et propose les backends PaddlePaddle, ONNX Runtime et OpenVINO en option pour le matériel Intel. La configuration est fournie via des variables d'environnement, notamment l'URL paperless et le token API, la langue OCR, le niveau de modèle, le DPI, l'intervalle d'interrogation, le nombre de threads, les tags de traitement, le comportement de retraitement et le mode dry-run. Il peut fonctionner en continu comme daemon ou effectuer une seule passe.
Le déploiement est documenté avec Docker Compose et une commande Docker simple. L'image s'exécute en tant qu'utilisateur non-root, inclut un health check et prend en charge linux/amd64 et linux/arm64. Les workflows de développement local couvrent le linting Ruff, la vérification de types mypy et pytest avec les dépendances OCR lourdes simulées.
Le worker communique avec paperless-ngx uniquement via son API HTTP et n'embarque pas le code source de paperless-ngx ni de PaddleOCR. Il est conçu pour fonctionner uniquement sur CPU, n'a pas été testé en charge avec de très grands ensembles de documents correspondants, et les résultats OCR dépendent de la qualité du scan, du niveau de modèle et des paramètres DPI. Le dépôt est sous licence MIT.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.