Web Analytics Made Easy - Statcounter
Skip to content

Configuraci贸n (API)

Endpoints para gestionar la configuraci贸n de conversi贸n.

Almacenamiento Basado en Sesiones

Los ajustes se almacenan por sesi贸n de usuario en la base de datos. Los ajustes de cada usuario est谩n aislados y no afectan a otros usuarios, lo que hace que Duckling sea seguro para despliegues multi-usuario.

Obtener Todas las Configuraciones

GET /api/settings

Respuesta

{
  "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
  }
}

Actualizar Configuraci贸n

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

Cuerpo de la Solicitud

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

Respuesta

Devuelve el objeto de configuraci贸n actualizado.


Restablecer Configuraci贸n a Valores Predeterminados

POST /api/settings/reset

Respuesta

Devuelve el objeto de configuraci贸n predeterminado.


Obtener Formatos Soportados

GET /api/settings/formats

Respuesta

{
  "input_formats": [
    {"id": "pdf", "name": "Documento PDF", "extensions": [".pdf"], "icon": "document"},
    {"id": "docx", "name": "Microsoft Word", "extensions": [".docx"], "icon": "document"},
    {"id": "image", "name": "Imagen", "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"}
  ]
}

Configuraci贸n OCR

Obtener Configuraci贸n OCR

GET /api/settings/ocr

Actualizar Configuraci贸n OCR

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

Par谩metros de Consulta:

Par谩metro Tipo Descripci贸n
auto_install boolean Si es true, instala autom谩ticamente los backends instalables mediante pip

Respuesta/Solicitud

{
  "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": "Ingl茅s"},
    {"code": "de", "name": "Alem谩n"},
    {"code": "fr", "name": "Franc茅s"}
  ],
  "available_backends": [
    {"id": "easyocr", "name": "EasyOCR", "description": "OCR de prop贸sito general con soporte GPU"},
    {"id": "tesseract", "name": "Tesseract", "description": "Motor OCR cl谩sico"},
    {"id": "ocrmac", "name": "macOS Vision", "description": "OCR nativo de macOS (solo Mac)"},
    {"id": "rapidocr", "name": "RapidOCR", "description": "OCR r谩pido con runtime ONNX"}
  ]
}

Gesti贸n de Backends OCR

Obtener Estado de Todos los Backends

GET /api/settings/ocr/backends

Devuelve el estado de instalaci贸n de todos los backends OCR.

Respuesta

{
  "backends": [
    {
      "id": "easyocr",
      "name": "EasyOCR",
      "description": "OCR de prop贸sito general con soporte GPU",
      "installed": true,
      "available": true,
      "error": null,
      "pip_installable": true,
      "requires_system_install": false,
      "platform": null,
      "note": "La primera ejecuci贸n descargar谩 modelos de idioma (~100MB por idioma)"
    },
    {
      "id": "tesseract",
      "name": "Tesseract",
      "description": "Motor OCR cl谩sico",
      "installed": false,
      "available": false,
      "error": "Paquete no instalado",
      "pip_installable": true,
      "requires_system_install": true,
      "platform": null,
      "note": "Requiere que Tesseract est茅 instalado en su sistema"
    }
  ],
  "current_platform": "darwin"
}

Verificar Backend Espec铆fico

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

Respuesta

{
  "backend": "easyocr",
  "installed": true,
  "available": true,
  "error": null,
  "pip_installable": true,
  "requires_system_install": false,
  "note": "La primera ejecuci贸n descargar谩 modelos de idioma"
}

Instalar Backend

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

Instala un backend OCR instalable mediante pip.

Respuesta (脡xito)

{
  "message": "EasyOCR instalado correctamente",
  "success": true,
  "installed": true,
  "available": true,
  "note": "La primera ejecuci贸n descargar谩 modelos de idioma"
}

Respuesta (Ya Instalado)

{
  "message": "easyocr ya est谩 instalado y disponible",
  "already_installed": true
}

Respuesta (Requiere Instalaci贸n del Sistema)

{
  "message": "Error al instalar tesseract",
  "success": false,
  "error": "tesseract requiere instalaci贸n a nivel del sistema",
  "requires_system_install": true
}

Configuraci贸n de Tablas

Obtener Configuraci贸n de Tablas

GET /api/settings/tables

Actualizar Configuraci贸n de Tablas

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

Solicitud/Respuesta

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

Configuraci贸n de Im谩genes

Obtener Configuraci贸n de Im谩genes

GET /api/settings/images

Actualizar Configuraci贸n de Im谩genes

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

Solicitud/Respuesta

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

Configuraci贸n de Enriquecimiento

Obtener Configuraci贸n de Enriquecimiento

GET /api/settings/enrichment

Respuesta

{
  "enrichment": {
    "code_enrichment": false,
    "formula_enrichment": false,
    "picture_classification": false,
    "picture_description": false
  },
  "options": {
    "code_enrichment": {
      "description": "Mejorar bloques de c贸digo con detecci贸n de idioma y resaltado de sintaxis",
      "default": false,
      "note": "Puede aumentar el tiempo de procesamiento"
    },
    "formula_enrichment": {
      "description": "Extraer representaciones LaTeX de f贸rmulas matem谩ticas",
      "default": false,
      "note": "Permite mejor renderizado de f贸rmulas en las exportaciones"
    },
    "picture_classification": {
      "description": "Clasificar im谩genes por tipo (figura, gr谩fico, diagrama, foto, etc.)",
      "default": false,
      "note": "A帽ade etiquetas sem谩nticas a las im谩genes extra铆das"
    },
    "picture_description": {
      "description": "Generar descripciones de im谩genes usando modelos de visi贸n IA",
      "default": false,
      "note": "Requiere descarga adicional de modelo, aumenta significativamente el tiempo de procesamiento"
    }
  }
}

Actualizar Configuraci贸n de Enriquecimiento

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

Solicitud

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

Respuesta

{
  "message": "Configuraci贸n de enriquecimiento actualizada",
  "enrichment": {
    "code_enrichment": true,
    "formula_enrichment": true,
    "picture_classification": false,
    "picture_description": false
  }
}
Campo Tipo Descripci贸n
code_enrichment boolean Mejorar bloques de c贸digo con detecci贸n de idioma
formula_enrichment boolean Extraer LaTeX de f贸rmulas matem谩ticas
picture_classification boolean Clasificar im谩genes por tipo sem谩ntico
picture_description boolean Generar subt铆tulos IA para im谩genes

Tiempo de Procesamiento

Habilitar formula_enrichment y especialmente picture_description puede aumentar significativamente el tiempo de procesamiento de documentos.


Configuraci贸n de Rendimiento

Obtener Configuraci贸n de Rendimiento

GET /api/settings/performance

Actualizar Configuraci贸n de Rendimiento

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

Solicitud/Respuesta

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

Configuraci贸n de Fragmentaci贸n

Obtener Configuraci贸n de Fragmentaci贸n

GET /api/settings/chunking

Actualizar Configuraci贸n de Fragmentaci贸n

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

Solicitud/Respuesta

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

Configuraci贸n de Salida

Obtener Configuraci贸n de Salida

GET /api/settings/output

Actualizar Configuraci贸n de Salida

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

Solicitud/Respuesta

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