Guide de Configuration — PaddleOCR

juin 2026 · 4 min de lecture

Guide de Configuration — PaddleOCR

Transforme n'importe quelle image ou PDF en données structurées lisibles par ton IA. 100+ langues supportées. GitHub : https://github.com/PaddlePaddle/PaddleOCR


Prérequis

  • Python ≥ 3.8 (3.9+ pour les fonctions avancées)
  • pip à jour : pip install --upgrade pip
  • GPU optionnel (NVIDIA CUDA pour accélération)

1. Installation — CPU (standard)

# Installation de base (OCR général + pré-traitement d'images)
pip install paddleocr

# Installation complète (parsing de documents, traduction, extraction d'infos)
pip install "paddleocr[all]"

2. Installation — GPU (optionnel, pour gros volumes)

# CUDA 11.8
pip install paddlepaddle-gpu==3.2.0 -i https://www.paddlepaddle.org.cn/packages/stable/cu118/

# CUDA 12.6
pip install paddlepaddle-gpu==3.2.1 -i https://www.paddlepaddle.org.cn/packages/stable/cu126/

# Puis installer PaddleOCR
pip install paddleocr

3. Premier test — CLI

# OCR sur une image locale
paddleocr --image_dir ./mon_image.jpg --lang fr --use_gpu false

# OCR avec détection d'angle (documents scannés inclinés)
paddleocr --image_dir ./scan.jpg --use_angle_cls true --lang fr --use_gpu false

# OCR sur un PDF
paddleocr --image_dir ./document.pdf --lang fr

Langues disponibles : fr, en, ch (chinois), german, korean, japan, et 95+ autres.


4. Utilisation en Python

OCR basique sur une image

from paddleocr import PaddleOCR

ocr = PaddleOCR(use_angle_cls=True, lang='fr')
result = ocr.ocr('mon_image.jpg', cls=True)

for line in result[0]:
    print(line[1][0])  # Texte extrait
    print(line[1][1])  # Score de confiance

Extraction depuis un PDF

from paddleocr import PaddleOCR

ocr = PaddleOCR(use_angle_cls=True, lang='fr')
result = ocr.ocr('document.pdf', cls=True)

for page_num, page in enumerate(result):
    print(f"--- Page {page_num + 1} ---")
    for line in page:
        print(line[1][0])

Résultat structuré (JSON)

import json
from paddleocr import PaddleOCR

ocr = PaddleOCR(lang='fr')
result = ocr.ocr('facture.jpg')

# Extraire uniquement le texte
textes = [line[1][0] for line in result[0]]
print(json.dumps(textes, ensure_ascii=False, indent=2))

5. Intégration avec un LLM (pipeline complet)

from paddleocr import PaddleOCR
from openai import OpenAI

# 1. Extraire le texte de l'image
ocr = PaddleOCR(lang='fr')
result = ocr.ocr('contrat.jpg')
texte_extrait = " ".join([line[1][0] for line in result[0]])

# 2. Envoyer à un LLM pour analyse
client = OpenAI()
response = client.chat.completions.create(
    model="gpt-4o-mini",
    messages=[
        {"role": "system", "content": "Tu es un assistant qui analyse des documents."},
        {"role": "user", "content": f"Résume ce document et liste les points clés :\n\n{texte_extrait}"}
    ]
)
print(response.choices[0].message.content)

6. Fonctions avancées

Parsing de documents (tableaux, titres, mise en page)

pip install "paddleocr[doc-parser]"
from paddleocr import PaddleOCR
ocr = PaddleOCR(use_doc_layout_analysis=True, lang='fr')
result = ocr.ocr('rapport.pdf')

Traduction automatique

pip install "paddleocr[trans]"
from paddleocr import PaddleOCR
ocr = PaddleOCR(lang='japan', enable_mkldnn=True)
result = ocr.ocr('menu_japonais.jpg')

7. Performances recommandées

Volume Config recommandée Temps estimé
1–10 images CPU, paddleocr de base < 2 sec/image
10–100 images CPU multi-thread < 1 sec/image
100+ images / PDF lourds GPU CUDA < 0.2 sec/image
Tableaux / layouts complexes paddleocr[doc-parser] 2–5 sec/page

Vérification

  • pip show paddleocr retourne la version installée
  • Test CLI sur une image réussit
  • Résultat Python contient le texte attendu
  • Pipeline LLM fonctionne de bout en bout

Ressources

Ce guide vient de Build With Nath

La communauté est gratuite. J’y publie ces guides au fil de l’eau et on y répond aux questions.

Autres guides · Guides

Vous dirigez une entreprise et vous voulez savoir lequel de vos process mérite ce genre de traitement ? Le diagnostic vous le dit en trois minutes, ou on en parle trente minutes.