Web Analytics Made Easy - Statcounter
Skip to content

API des paramètres

Points de terminaison pour gérer les paramètres de conversion.

Stockage basé sur les sessions

Les paramètres sont stockés par session utilisateur dans la base de données. Les paramètres de chaque utilisateur sont isolés et n'affectent pas les autres utilisateurs, ce qui rend Duckling sûr pour les déploiements multi-utilisateurs.

Obtenir tous les paramètres

GET /api/settings

Réponse

{
  "ocr": {
    "enabled": true,
    "language": "en",
    "force_full_page_ocr": false,
    "backend": "easyocr",
    "use_gpu": false,
    "confidence_threshold": 0.5,
    "bitmap_area_threshold": 0.05
  },
  "tables": {
    "enabled": true,
    "structure_extraction": true,
    "mode": "accurate",
    "do_cell_matching": true
  },
  "images": {
    "extract": true,
    "classify": true,
    "generate_page_images": false,
    "generate_picture_images": true,
    "generate_table_images": true,
    "images_scale": 1.0
  },
  "enrichment": {
    "code_enrichment": false,
    "formula_enrichment": false,
    "picture_classification": false,
    "picture_description": false
  },
  "output": {
    "default_format": "markdown"
  },
  "performance": {
    "device": "auto",
    "num_threads": 4,
    "document_timeout": null
  },
  "chunking": {
    "enabled": false,
    "max_tokens": 512,
    "merge_peers": true
  }
}

Mettre à jour les paramètres

PUT /api/settings
Content-Type: application/json

Corps de la requête

{
  "ocr": {
    "language": "de",
    "backend": "tesseract"
  },
  "tables": {
    "mode": "fast"
  }
}

Réponse

Renvoie l'objet des paramètres mis à jour.


Réinitialiser les paramètres aux valeurs par défaut

POST /api/settings/reset

Réponse

Renvoie l'objet des paramètres par défaut.


Formats pris en charge

GET /api/settings/formats

Réponse

{
  "input_formats": [
    {"id": "pdf", "name": "PDF Document", "extensions": [".pdf"], "icon": "document"},
    {"id": "docx", "name": "Microsoft Word", "extensions": [".docx"], "icon": "document"},
    {"id": "image", "name": "Image", "extensions": [".png", ".jpg", ".jpeg", ".tiff"], "icon": "image"}
  ],
  "output_formats": [
    {"id": "markdown", "name": "Markdown", "extension": ".md", "mime_type": "text/markdown"},
    {"id": "html", "name": "HTML", "extension": ".html", "mime_type": "text/html"},
    {"id": "json", "name": "JSON", "extension": ".json", "mime_type": "application/json"}
  ]
}

Paramètres OCR

Obtenir les paramètres OCR

GET /api/settings/ocr

Mettre à jour les paramètres OCR

PUT /api/settings/ocr
Content-Type: application/json

Paramètres de requête :

Paramètre Type Description
auto_install booléen Si true, installe automatiquement les moteurs OCR installables via pip

Réponse / requête

{
  "ocr": {
    "enabled": true,
    "language": "en",
    "force_full_page_ocr": false,
    "backend": "easyocr",
    "use_gpu": false,
    "confidence_threshold": 0.5,
    "bitmap_area_threshold": 0.05
  },
  "available_languages": [
    {"code": "en", "name": "English"},
    {"code": "de", "name": "German"},
    {"code": "fr", "name": "French"}
  ],
  "available_backends": [
    {"id": "easyocr", "name": "EasyOCR", "description": "General-purpose OCR with GPU support"},
    {"id": "tesseract", "name": "Tesseract", "description": "Classic OCR engine"},
    {"id": "ocrmac", "name": "macOS Vision", "description": "Native macOS OCR (Mac only)"},
    {"id": "rapidocr", "name": "RapidOCR", "description": "Fast OCR with ONNX runtime"}
  ]
}

Gestion des moteurs OCR

État de tous les moteurs

GET /api/settings/ocr/backends

Renvoie l'état d'installation de tous les moteurs OCR.

Réponse

{
  "backends": [
    {
      "id": "easyocr",
      "name": "EasyOCR",
      "description": "General-purpose OCR with GPU support",
      "installed": true,
      "available": true,
      "error": null,
      "pip_installable": true,
      "requires_system_install": false,
      "platform": null,
      "note": "First run will download language models (~100MB per language)"
    },
    {
      "id": "tesseract",
      "name": "Tesseract",
      "description": "Classic OCR engine",
      "installed": false,
      "available": false,
      "error": "Package not installed",
      "pip_installable": true,
      "requires_system_install": true,
      "platform": null,
      "note": "Requires Tesseract to be installed on your system"
    }
  ],
  "current_platform": "darwin"
}

Vérifier un moteur précis

GET /api/settings/ocr/backends/{backend_id}/check

Réponse

{
  "backend": "easyocr",
  "installed": true,
  "available": true,
  "error": null,
  "pip_installable": true,
  "requires_system_install": false,
  "note": "First run will download language models"
}

Installer un moteur

POST /api/settings/ocr/backends/{backend_id}/install

Installe un moteur OCR installable via pip.

Réponse (succès)

{
  "message": "Successfully installed easyocr",
  "success": true,
  "installed": true,
  "available": true,
  "note": "First run will download language models"
}

Réponse (déjà installé)

{
  "message": "easyocr is already installed and available",
  "already_installed": true
}

Réponse (nécessite une installation système)

{
  "message": "Failed to install tesseract",
  "success": false,
  "error": "tesseract requires system-level installation",
  "requires_system_install": true
}

Paramètres des tableaux

Obtenir les paramètres des tableaux

GET /api/settings/tables

Mettre à jour les paramètres des tableaux

PUT /api/settings/tables
Content-Type: application/json

Requête / réponse

{
  "tables": {
    "enabled": true,
    "structure_extraction": true,
    "mode": "accurate",
    "do_cell_matching": true
  }
}

Paramètres des images

Obtenir les paramètres des images

GET /api/settings/images

Mettre à jour les paramètres des images

PUT /api/settings/images
Content-Type: application/json

Requête / réponse

{
  "images": {
    "extract": true,
    "classify": true,
    "generate_page_images": false,
    "generate_picture_images": true,
    "generate_table_images": true,
    "images_scale": 1.0
  }
}

Paramètres d'enrichissement

Obtenir les paramètres d'enrichissement

GET /api/settings/enrichment

Réponse

{
  "enrichment": {
    "code_enrichment": false,
    "formula_enrichment": false,
    "picture_classification": false,
    "picture_description": false
  },
  "options": {
    "code_enrichment": {
      "description": "Améliorer les blocs de code avec détection de langage et coloration syntaxique",
      "default": false,
      "note": "Peut augmenter le temps de traitement"
    },
    "formula_enrichment": {
      "description": "Extraire des représentations LaTeX à partir des formules mathématiques",
      "default": false,
      "note": "Permet un meilleur rendu des formules dans les exports"
    },
    "picture_classification": {
      "description": "Classifier les images par type (figure, graphique, diagramme, photo, etc.)",
      "default": false,
      "note": "Ajoute des balises sémantiques aux images extraites"
    },
    "picture_description": {
      "description": "Générer des légendes descriptives pour les images à l'aide de modèles de vision IA",
      "default": false,
      "note": "Nécessite le téléchargement de modèles supplémentaires et augmente fortement le temps de traitement"
    }
  }
}

Mettre à jour les paramètres d'enrichissement

PUT /api/settings/enrichment
Content-Type: application/json

Requête

{
  "code_enrichment": true,
  "formula_enrichment": true
}

Réponse

{
  "message": "Enrichment settings updated",
  "enrichment": {
    "code_enrichment": true,
    "formula_enrichment": true,
    "picture_classification": false,
    "picture_description": false
  }
}
Champ Type Description
code_enrichment booléen Améliorer les blocs de code avec détection de langage
formula_enrichment booléen Extraire du LaTeX à partir des formules mathématiques
picture_classification booléen Classifier les images par type sémantique
picture_description booléen Générer des légendes IA pour les images

Temps de traitement

L'activation de formula_enrichment et surtout de picture_description peut augmenter considérablement le temps de traitement des documents.


Paramètres de performance

Obtenir les paramètres de performance

GET /api/settings/performance

Mettre à jour les paramètres de performance

PUT /api/settings/performance
Content-Type: application/json

Requête / réponse

{
  "performance": {
    "device": "auto",
    "num_threads": 4,
    "document_timeout": null
  }
}

Paramètres de découpage (chunking)

Obtenir les paramètres de découpage

GET /api/settings/chunking

Mettre à jour les paramètres de découpage

PUT /api/settings/chunking
Content-Type: application/json

Requête / réponse

{
  "chunking": {
    "enabled": false,
    "max_tokens": 512,
    "merge_peers": true
  }
}

Paramètres de sortie

Obtenir les paramètres de sortie

GET /api/settings/output

Mettre à jour les paramètres de sortie

PUT /api/settings/output
Content-Type: application/json

Requête / réponse

{
  "output": {
    "default_format": "markdown"
  }
}