From 2b279476dd00ab2eb82d8e53b3adcb72e8a50a73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=27=C3=A9lectron=20rare?= <108685187+electron-rare@users.noreply.github.com> Date: Mon, 16 Mar 2026 23:15:40 +0100 Subject: [PATCH] =?UTF-8?q?docs:=20=C3=A9tat=20de=20l'art=20Document=20AI?= =?UTF-8?q?=20mars=202026?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Recherche complète extraction/analyse fichiers: - OCR: GLM-OCR (0.9B, TOP PICK), OCRFlux-3B, olmOCR, PaddleOCR - Pipelines: Docling (97.9% tables), MinerU, Marker, Unstructured - VLMs documents: GLM-4.5V, Qwen2.5-VL-72B, DeepSeek-VL2 - Recommandation: Docling remplace pdf-parse, GLM-OCR pour scannés - Pipeline futur: indexer documents uploadés dans le RAG Co-Authored-By: Claude Opus 4.6 (1M context) --- docs/DOCUMENT_AI_STATE_OF_ART_2026.md | 116 ++++++++++++++++++++++++++ 1 file changed, 116 insertions(+) create mode 100644 docs/DOCUMENT_AI_STATE_OF_ART_2026.md diff --git a/docs/DOCUMENT_AI_STATE_OF_ART_2026.md b/docs/DOCUMENT_AI_STATE_OF_ART_2026.md new file mode 100644 index 0000000..f5a7834 --- /dev/null +++ b/docs/DOCUMENT_AI_STATE_OF_ART_2026.md @@ -0,0 +1,116 @@ +# État de l'art — Import & Analyse de Fichiers (Mars 2026) + +Recherche sur les meilleures solutions open source locales pour l'extraction +et l'analyse de documents dans KXKM_Clown. + +--- + +## 1. Modèles OCR / Vision-Document + +### Top picks (petits, locaux) + +| Modèle | Taille | Description | Pertinence KXKM | +| --- | --- | --- | --- | +| **GLM-OCR** | 0.9B | OCR multimodal (CogViT 0.4B + GLM 0.5B), 94.6 OmniDocBench, tables, formules, KIE | **TOP PICK** — ultra-léger, tourne sur CPU | +| **OCRFlux-3B** | 3B | Fine-tune Qwen2.5-VL-3B, PDF→Markdown clean, tourne sur GTX 3090 | Excellent rapport taille/qualité | +| **Qwen3.5:9b** | 5.5B | Vision native, bon en documents (déjà installé) | Déjà en place, polyvalent | +| **olmOCR** | variable | Allen AI, PDF→texte haute fidélité, tables, équations, manuscrit | Très précis, open source | + +### Grands modèles (référence, si VRAM suffisante) + +| Modèle | Taille | Description | +| --- | --- | --- | +| **GLM-4.5V** | 106B (12B actifs, MoE) | SOTA 41 benchmarks multimodaux | +| **Qwen2.5-VL-72B** | 72B | 131K context, extraction structurée, factures | +| **DeepSeek-VL2** | variable | Layout, tables, graphiques, ~100 langues | + +--- + +## 2. Pipelines d'extraction de documents + +### Comparatif des outils + +| Outil | Type | Tables | Vitesse | Local | Recommandation | +| --- | --- | --- | --- | --- | --- | +| **Docling** (IBM) | Pipeline Python | 97.9% tables simples | 28s/doc | ✅ | **TOP PICK local** — DataFrames natifs | +| **MinerU** | Pipeline hybride VLM+OCR | Bon | Moyen | ✅ | 109 langues, multi-format | +| **Marker** | Pipeline Surya | Bon layout | 6min/doc | ✅ | Meilleur quand Docling échoue | +| **Unstructured.io** | Pipeline complet | 0.844 score | Rapide | ✅ | Meilleur score tables complexes | +| **LlamaParse** | Cloud API | Meilleure précision | 17s/doc | ❌ | Cloud requis | +| **PaddleOCR** | OCR toolkit | PP-StructureV3 | Rapide | ✅ | Multilingue, formules, manuscrit | +| **Reducto** | Cloud API | Excellent | Rapide | ❌ | API payante | + +### Pipeline recommandé pour KXKM + +``` +Fichier uploadé + │ + ├── PDF → Docling (tables, layout, DataFrames) + │ fallback: MinerU ou Marker + │ + ├── Image → Qwen3.5:9b (vision native, déjà en place) + │ ou GLM-OCR pour extraction texte pure + │ + ├── Word/Excel/PPT → python-docx/openpyxl/python-pptx (déjà en place) + │ + ├── Audio → faster-whisper (déjà en place) + │ + └── Texte/code → UTF-8 direct (déjà en place) +``` + +--- + +## 3. Améliorations recommandées + +### Court terme (immédiat) + +1. **Installer Docling** (`pip install docling`) pour remplacer pdf-parse + - Extraction tables structurées en DataFrames + - Layout analysis supérieur + - Support OCR pour PDFs scannés + +2. **Pull GLM-OCR** sur Ollama (`ollama pull glm-ocr` si dispo, sinon HF) + - 0.9B = ultra-rapide + - OCR + KIE (Key Information Extraction) + +### Moyen terme + +3. **Intégrer MinerU** pour les documents complexes multi-pages + - Pipeline hybride VLM + OCR traditionnel + - 109 langues + +4. **Utiliser Qwen3.5:9b** directement pour l'analyse de documents visuels + - Déjà installé, vision native + - Peut décrire des layouts, charts, diagrammes + +### Long terme + +5. **PaddleOCR** pour les cas edge (manuscrit, formules mathématiques) +6. **Pipeline RAG documentaire** : indexer les documents uploadés dans le RAG + pour que les personas puissent s'y référer dans les conversations futures + +--- + +## 4. Comparaison avec l'état actuel KXKM + +| Fonctionnalité | Actuel | Recommandé | +| --- | --- | --- | +| PDF texte | pdf-parse (basique) | **Docling** (tables, layout, OCR) | +| PDF scanné | Non supporté | Docling + OCR ou GLM-OCR | +| Images → texte | minicpm-v / qwen3-vl | **qwen3.5:9b** (déjà fait) | +| Tables Excel | openpyxl (OK) | OK, garder | +| Word | python-docx (OK) | OK, garder | +| Audio | faster-whisper (OK) | OK, garder | +| Indexation RAG | Non (fichiers jetés après analyse) | **Indexer dans le RAG** | + +--- + +Sources: +- [MinerU - PDF→LLM-ready markdown](https://github.com/opendatalab/MinerU) +- [olmOCR - Allen AI](https://olmocr.allenai.org/) +- [GLM-OCR 0.9B](https://www.marktechpost.com/2026/03/15/zhipu-ai-introduces-glm-ocr-a-0-9b-multimodal-ocr-model-for-document-parsing-and-key-information-extraction-kie/) +- [Best Multimodal Models for Documents 2026](https://www.siliconflow.com/articles/en/best-multimodal-models-for-document-analysis) +- [Docling vs LlamaParse vs Unstructured](https://llms.reducto.ai/document-parser-comparison) +- [PDF Table Extraction Benchmark](https://procycons.com/en/blogs/pdf-data-extraction-benchmark/) +- [Best Open Source OCR Tools 2026](https://unstract.com/blog/best-opensource-ocr-tools/) +- [LLMs for OCR and PDF Parsing](https://www.cradl.ai/posts/llm-ocr)