| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente |
| informatique:ai_lm:ai_vision [10/04/2026 09:40] – [GLM-OCR] cyrille | informatique:ai_lm:ai_vision [21/04/2026 08:52] (Version actuelle) – [GLM-OCR] cyrille |
|---|
| * [[https://maproulette.org/browse/challenges/54636|Challenge maproulette]] <html><img src="https://tools.comptoir.net/maproulette-completion-badge/badge.php?id=54636" height="25"/></html> | * [[https://maproulette.org/browse/challenges/54636|Challenge maproulette]] <html><img src="https://tools.comptoir.net/maproulette-completion-badge/badge.php?id=54636" height="25"/></html> |
| |
| ===== GLM-OCR ===== | ===== OCR ===== |
| | |
| | ==== LiteParse ==== |
| | |
| | A fast, local PDF parsing with spatial text parsing, OCR, and bounding boxes. Open-source document parser from [[https://developers.llamaindex.ai/liteparse/|LlamaIndex]] |
| | |
| | https://github.com/run-llama/liteparse |
| | |
| | ==== GLM-OCR ==== |
| |
| Avec llama.cpp et le modèle [[https://huggingface.co/ggml-org/GLM-OCR-GGUF|GLM-OCR-f16.gguf]] avec son fichier mmproj-GLM-OCR-Q8_0.gguf | Avec llama.cpp et le modèle [[https://huggingface.co/ggml-org/GLM-OCR-GGUF|GLM-OCR-f16.gguf]] avec son fichier mmproj-GLM-OCR-Q8_0.gguf |
| |
| <code> | <code> |
| Avec CPU i7 | Avec CPU i7-1360P 13thGen |
| real 0m47,583s, 0m32,031s | real 0m47,583s, 0m32,031s |
| user 0m0,112s, 0m0,110s | user 0m0,112s, 0m0,110s |
| La page 8 est un tableau et les données dans les cellules sont très bien extraites, les phrases sur plusieurs lignes dans une cellule sont bien extraites. | La page 8 est un tableau et les données dans les cellules sont très bien extraites, les phrases sur plusieurs lignes dans une cellule sont bien extraites. |
| |
| Avec le prompt : "Extrais le texte de cette image en préservant la structure (titres, listes, paragraphes). Corrigé les erreurs d'OCR si nécessaire. Réponds avec LE FORMAT MARKDOWN." la page 8 donne du Markdown alors que la page 9 donne du HTML ... | Avec le prompt : "''Extrais le texte de cette image en préservant la structure (titres, listes, paragraphes). Corrigé les erreurs d'OCR si nécessaire. Réponds avec LE FORMAT MARKDOWN.''" la page 8 donne du Markdown alors que la page 9 donne du HTML ... |
| | |
| | Alors qu'avec le prompt : "''Extract the text from this image, preserving the structure (headings, lists, paragraphs). Correct any OCR errors where necessary. Please reply in MARKDOWN FORMAT.''" les pages 8 et 9 sont bien en Markdown. Comme quoi **le modèle comprends mieux l'anglais**. |
| | |
| | Les tables sont bien extraites mais **pas toujours bien rendues** dans la réponse. Après quelques essais le prompt qui fonctionne mieux : "''Extract the text from this image, preserving the structure (headings, lists, paragraphs) and make sure you KEEP THE TABLES in good condition. Correct any OCR errors where necessary. Fine Reply in MARKDOWN FORMAT.''" |
| | |
| | 😩 voilà qu'après plusieurs usages il n'y a plus de Markdown pour les titres ... |
| | |
| | 👌 J'ai changé de stratégie: ne plus extraire la mise en forme, mais seulement le texte page par page, avec extraction de quelques entités comme "auteur", "date", "sujet" et un "résumé". Là le model GLM-OCR-f16 est très efficace. |
| | |
| | ==== Qwen2.5-VL-7B-Instruct ==== |
| | |
| | https://huggingface.co/unsloth/Qwen2.5-VL-7B-Instruct-GGUF |
| | |
| | Bien meilleurs résultats pour la structure en Markdown mais beaucoup plus gourmand en mémoire et donc plus lent à cause de l'usage du CPU, même avec du Q4. 😩 |
| | |
| | <code> |
| | ~/Code/bronx/AI_Coding/llama.cpp-86/build/bin/llama-server --port 8012 \ |
| | -m ~/Data/AI_ModelsOCR/Qwen2.5-VL-7B-Instruct-UD-Q4_K_XL.gguf \ |
| | --mmproj ~/Data/AI_ModelsOCR/mmproj-F16.gguf -ngl 20 |
| | |
| | real 0m39,938s, 0m45,901s |
| | user 0m0,116s, 0m0,105s |
| | sys 0m0,024s, 0m0,027s |
| | </code> |
| | |
| | ==== DeepSeek-OCR-GGUF ==== |
| | |
| | [[https://huggingface.co/ggml-org/DeepSeek-OCR-GGUF|ggml-org/DeepSeek-OCR-GGUF]] |
| |
| Alors qu'avec le prompt : "Extract the text from this image, preserving the structure (headings, lists, paragraphs). Correct any OCR errors where necessary. Please reply in MARKDOWN FORMAT." les pages 8 et 9 sont bien en Markdown. Comme quoi **le modèle comprends mieux l'anglais**. | Tient dans la VRAM de la RTX3060. |
| |
| Les tables sont bien extraites MAIS pas toujours bien rendues dans la réponse. Après quelques essais le prompt qui fonctionne mieux : "Extract the text from this image, preserving the structure (headings, lists, paragraphs) and make sure you KEEP THE TABLES in good condition. Correct any OCR errors where necessary. Fine Reply in MARKDOWN FORMAT." | Gère bien le Markdown, mais les résultats sont alléatoires ... Et de nombreuses allucinations 😩 |
| |
| |