Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Estructura del objeto de configuración OCR

Descripción general

El objeto ocr le permite configurar los ajustes de Reconocimiento Óptico de Caracteres (OCR) para la aplicación, permitiendo la extracción de texto a partir de imágenes. Esta sección proporciona un desglose detallado de la estructura del objeto ocr.

Hay 4 campos principales bajo ocr:

  • mistralModel
  • apiKey
  • baseURL
  • strategy

Notas:

  • Si utiliza la API de Mistral OCR, no necesita editar su archivo librechat.yaml.
    • Solo necesitas las siguientes variables de entorno para comenzar: OCR_API_KEY y OCR_BASEURL.
  • La funcionalidad OCR permite a la aplicación extraer texto de imágenes, el cual puede ser procesado posteriormente por modelos de IA.
  • La estrategia predeterminada es mistral_ocr, la cual utiliza las capacidades de OCR de Mistral.
  • También puede configurar un servicio de OCR personalizado estableciendo la estrategia en custom_ocr.
  • Los modelos Mistral OCR desplegados en Azure pueden utilizarse configurando la estrategia en azure_mistral_ocr.
  • Los modelos Mistral OCR desplegados en Google Vertex AI pueden utilizarse configurando la estrategia en vertexai_mistral_ocr.
    • Requiere que la variable de entorno GOOGLE_SERVICE_KEY_FILE esté configurada con las credenciales de la cuenta de servicio
    • La clave de servicio puede proporcionarse como: ruta de archivo, URL, JSON codificado en base64 o cadena JSON sin formato
    • El ID del proyecto y la ubicación se extraen automáticamente de las credenciales de la cuenta de servicio
  • La extracción de texto local está disponible a través de document_parser, el cual extrae texto de archivos PDF, DOCX, XLS/XLSX y OpenDocument sin necesidad de ninguna API externa.
    • Utiliza pdfjs-dist, mammoth y SheetJS de forma local; no se requiere clave de API ni URL base
    • Solo el campo strategy es obligatorio; apiKey, baseURL y mistralModel son ignorados
  • Si utiliza el Mistral OCR predeterminado, puede especificar opcionalmente un modelo de Mistral específico para usar.
  • El análisis de variables de entorno es compatible con los parámetros apiKey, baseURL y mistralModel.
  • Una opción de estrategia user_provided está planificada para futuras versiones, pero aún no se ha implementado.

Análisis automático de documentos (No requiere configuración)

El document_parser integrado se ejecuta automáticamente para las subidas de archivos de agentes incluso cuando no hay ningún bloque ocr configurado en tu librechat.yaml. Esto significa que los archivos PDF, DOCX, XLS/XLSX y ODS se analizan de forma predeterminada sin necesidad de configuración adicional.

La lógica de resolución funciona de la siguiente manera:

  1. No existe configuración ocr — Cuando se sube un archivo de contexto de agente y su tipo MIME coincide con un tipo de documento compatible (PDF, DOCX, Excel, ODS), se utiliza document_parser directamente. No se requiere ninguna verificación de capacidad OCR para el agente.

  2. ocr config exists — La estrategia configurada (p. ej., mistral_ocr) se intenta primero. Si la estrategia configurada falla en tiempo de ejecución, se utiliza document_parser como respaldo para que la extracción de texto siga teniendo éxito en los tipos de documentos compatibles.

  3. Ninguno tiene éxito — Si tanto la estrategia configurada como el analizador de documentos fallan (por ejemplo, el archivo es un PDF que solo contiene imágenes sin texto incrustado), se devuelve un error sugiriendo que se necesita un servicio de OCR.

El document_parser maneja únicamente documentos basados en texto. Para archivos PDF basados en imágenes o documentos escaneados, aún necesita una estrategia de OCR configurada (como mistral_ocr) para extraer el texto de las imágenes dentro de esos archivos.

Ejemplo

ocr:
  mistralModel: "mistral-ocr-latest"
  apiKey: "your-mistral-api-key"
  strategy: "mistral_ocr"

Ejemplo con OCR personalizado:

ocr:
  apiKey: "your-custom-ocr-api-key"
  baseURL: "https://your-custom-ocr-service.com/api"
  strategy: "custom_ocr"

Ejemplo con Azure Mistral OCR:

ocr:
  mistralModel: "deployed-mistral-ocr-2503" # should match deployment name on Azure
  apiKey: "${AZURE_MISTRAL_OCR_API_KEY}" # arbitrary .env var reference
  baseURL: "https://your-deployed-endpoint.models.ai.azure.com/v1" # hardcoded, can also be .env var reference
  strategy: "azure_mistral_ocr"

Ejemplo con Google Vertex AI Mistral OCR:

ocr:
  mistralModel: "mistral-ocr-2505" # model name as deployed in Vertex AI
  strategy: "vertexai_mistral_ocr"

Ejemplo con analizador de documentos local (no se requiere API externa):

ocr:
  strategy: "document_parser"

mistralModel

KeyTypeDescriptionExample
mistralModelStringEl modelo Mistral que se utilizará para el procesamiento OCR. Para implementaciones en Azure, esto debe coincidir con el nombre de su implementación. Para Google Vertex AI, esto debe coincidir con el nombre del modelo en su implementación.Optional. Specifies which Mistral model should be used when the strategy is set to mistral_ocr, azure_mistral_ocr, or vertexai_mistral_ocr.
ocr:
  mistralModel: "mistral-ocr-latest"

Para implementaciones en Azure:

ocr:
  mistralModel: "deployed-mistral-ocr-2503" # Your Azure deployment name

Para implementaciones de Google Vertex AI:

ocr:
  mistralModel: "mistral-ocr-2505" # Your Vertex AI model name

apiKey

KeyTypeDescriptionExample
apiKeyStringLa clave de API para el servicio de OCR. No se utiliza para Google Vertex AI (usa autenticación de cuenta de servicio a través de GOOGLE_SERVICE_KEY_FILE).Optional. Defaults to the environment variable OCR_API_KEY if not specified.
ocr:
  apiKey: "your-ocr-api-key"

baseURL

KeyTypeDescriptionExample
baseURLStringLa URL base para la API del servicio OCR. Para Google Vertex AI, esta se construye automáticamente a partir de las credenciales de la cuenta de servicio.Optional. Defaults to the environment variable OCR_BASEURL if not specified.
ocr:
  baseURL: "https://your-ocr-service.com/api"

strategy

KeyTypeDescriptionExample
strategyStringLa estrategia de OCR a utilizar.Determines which OCR service to use. Options are "mistral_ocr", "azure_mistral_ocr", "vertexai_mistral_ocr", "document_parser", or "custom_ocr". Defaults to "mistral_ocr".
ocr:
  strategy: "custom_ocr"

Estrategias disponibles:

  • mistral_ocr: Utiliza las capacidades de OCR de Mistral a través de la API de Mistral estándar.
  • azure_mistral_ocr: Utiliza modelos Mistral OCR desplegados en Azure AI Foundry.
  • vertexai_mistral_ocr: Utiliza modelos Mistral OCR desplegados en Google Cloud Vertex AI.
  • document_parser: Utiliza extracción de texto local para archivos PDF, DOCX, XLS/XLSX y OpenDocument. No se requiere API externa. También se ejecuta automáticamente para las cargas de archivos de agentes cuando no hay una configuración de ocr presente, y como respaldo cuando una estrategia de OCR configurada falla.
  • custom_ocr: Utiliza un servicio de OCR personalizado especificado por la baseURL (aún no implementado).

¿Qué te parece esta guía?