Aptitud cognitiva de extracción de documentos

Note

Búsqueda de Azure AI está disponible a través del portal de Azure, las API REST y los SDK de Azure. También respalda Foundry IQ, la capa de conocimiento administrada que transforma el contenido empresarial en bases de conocimiento reutilizables y compatibles con permisos para agentes en el portal de Microsoft Foundry.

La habilidad Extracción de documentos extrae contenido de un archivo en el flujo de enriquecimiento. De forma predeterminada, la extracción o recuperación de contenido está integrada en la canalización de enriquecimiento. Sin embargo, mediante la aptitud de extracción de documentos, puede controlar cómo se fijan los parámetros y cómo se denomina el contenido extraído en el árbol de enriquecimiento.

Para la búsqueda vectorial y vectorial, combine Extracción de documentos con la aptitud División de texto para implementar un enfoque configurable de fragmentación de datos. En el tutorial de Dónde se muestra este escenario.

Note

Esta aptitud no está vinculada a las herramientas de Foundry y no tiene ningún requisito clave para las herramientas de Foundry.

Esta aptitud extrae texto e imágenes. La extracción de texto es libre. La extracción de imágenes se factura a través de Búsqueda de Azure AI. En un servicio de búsqueda gratuito, el costo de 20 transacciones por indizador al día se ve reducido para que pueda completar inicios rápidos, tutoriales y proyectos pequeños sin costo alguno. En el caso de los niveles básico y superiores, la extracción de imágenes se factura.

@odata.type

Microsoft.Skills.Util.DocumentExtractionSkill

Formatos de documento admitidos

DocumentExtractionSkill puede extraer texto de los siguientes formatos de documento:

Parámetros de aptitud

Los parámetros distinguen entre mayúsculas y minúsculas.

Inputs Valores permitidos Description
parsingMode default
text
json
default Establézcalo en para la extracción de documentos de archivos que no sean texto puro o JSON. Para los archivos de código fuente que contienen marcado, como archivos PDF, HTML, RTF y Microsoft Office, use el valor predeterminado para extraer texto sin lenguaje de marcado o etiquetas. Si parsingMode no se define explícitamente, el valor es default.

Se establece en text si los archivos de origen son TXT. Este modo de análisis mejora el rendimiento de los archivos de texto sin formato. Si los archivos incluyen marcado, este modo conserva las etiquetas en la salida final.

Establézcalo en json para extraer contenido estructurado de archivos JSON.
dataToExtract contentAndMetadata
allMetadata
Se establece en contentAndMetadata para extraer todos los metadatos y el contenido textual de cada archivo. Si dataToExtract no se define explícitamente, el valor es contentAndMetadata.

allMetadata Establézcalo en para extraer solo las propiedades de metadatos del tipo de contenido, como los metadatos únicos de los archivos PNG.
configuration Consulte a continuación. Diccionario de parámetros opcionales que ajustan el modo en que se realiza la extracción de documentos. Consulta la tabla siguiente para obtener descripciones de las propiedades de configuración admitidas.
Parámetro de configuración Valores permitidos Description
imageAction none
generateNormalizedImages
generateNormalizedImagePerPage
Se establece en none para ignorar las imágenes insertadas o los archivos de imagen del conjunto de datos, o si los datos de origen no incluyen archivos de imagen. Este valor es el predeterminado.

Para el análisis de imágenes y OCR, se establece en generateNormalizedImages para que la aptitud cree una matriz de imágenes normalizadas como parte del descifrado de documentos. Esta acción requiere parsingMode establecer en default y dataToExtract establecer en contentAndMetadata. Una imagen normalizada tiene una salida uniforme de tamaño y rotación para promover la representación coherente en los resultados de búsqueda visual. La aptitud genera esta información para cada imagen.

Si establece imageActiongenerateNormalizedImagePerPageen , cada página PDF se representa como una imagen y se normaliza en lugar de extraer imágenes incrustadas. Los tipos de archivo que no son PDF se tratan igual que si se hubiera establecido generateNormalizedImages.
normalizedImageMaxWidth Cualquier entero comprendido entre 50 y 10 000 El ancho máximo (en píxeles) para las imágenes normalizadas generadas. El valor predeterminado es 2000.
normalizedImageMaxHeight Cualquier entero comprendido entre 50 y 10 000 La altura máxima (en píxeles) para las imágenes normalizadas generadas. El valor predeterminado es 2000.

Note

El valor predeterminado es de 2000 píxeles para el ancho máximo de las imágenes normalizadas, y la altura se basa en los tamaños máximos admitidos por la habilidad de OCR y la habilidad de análisis de imágenes. La aptitud de OCR admite un ancho y un alto máximos de 4200 para los idiomas distintos del inglés y 10 000 para el inglés. Si aumenta los límites máximos, el procesamiento podría generar un error en imágenes de mayor tamaño en función de la definición del conjunto de aptitudes y del idioma de los documentos.

Entradas de habilidades

Nombre de entrada Description
file_data Archivo del que se debe extraer el contenido.

La entrada "file_data" debe ser un objeto definido así:

{
  "$type": "file",
  "data": "BASE64 encoded string of the file"
}

Como alternativa, se puede definir como:

{
  "$type": "file",
  "url": "URL to download file",
  "sasToken": "OPTIONAL: SAS token for authentication if the URL provided is for a file in blob storage"
}

Este objeto de referencia de archivo se puede generar de cualquiera de estas tres formas:

  • Establecer el parámetro allowSkillsetToReadFileData en la definición del indexador en "true". Así se crea la ruta de acceso /document/file_data, que es un objeto que representa los datos del archivo original descargados del origen de datos del blob. Este parámetro solo se aplica a los archivos de Blob Storage.

    allowSkillsetToReadFileData hace que los datos de archivo descargados estén disponibles para la aptitud. No aumenta el tamaño del archivo del indexador de blobs ni los límites de contenido extraído.

  • Establecer el parámetro imageAction en la definición del indexador en un valor distinto de none. Así se crea una matriz de imágenes que sigue la convención necesaria para la entrada en esta aptitud si se pasa individualmente (es decir, /document/normalized_images/*).

  • En caso de tener una aptitud personalizada se devuelve un objeto JSON definido exactamente como se ha indicado anteriormente. El parámetro $type debe establecerse exactamente en file y el parámetro data debe ser los datos de la matriz de bytes codificados en base 64 del contenido del archivo o bien el parámetro url debe ser una dirección URL con formato correcto con acceso para descargar el archivo en esa ubicación.

Resultados de habilidades

Nombre de salida Description
content Contenido textual del documento.
normalized_images Cuando imageAction se establece en un valor distinto nonede , el nuevo campo normalized_images contiene una matriz de imágenes. Para obtener más información sobre el formato de salida, consulte Extracción de texto e información de imágenes.

Definición de ejemplo

 {
    "@odata.type": "#Microsoft.Skills.Util.DocumentExtractionSkill",
    "parsingMode": "default",
    "dataToExtract": "contentAndMetadata",
    "configuration": {
        "imageAction": "generateNormalizedImages",
        "normalizedImageMaxWidth": 2000,
        "normalizedImageMaxHeight": 2000
    },
    "context": "/document",
    "inputs": [
      {
        "name": "file_data",
        "source": "/document/file_data"
      }
    ],
    "outputs": [
      {
        "name": "content",
        "targetName": "extracted_content"
      },
      {
        "name": "normalized_images",
        "targetName": "extracted_normalized_images"
      }
    ]
  }

Entrada de ejemplo

{
  "values": [
    {
      "recordId": "1",
      "data":
      {
        "file_data": {
          "$type": "file",
          "data": "aGVsbG8="
        }
      }
    }
  ]
}

Salida de ejemplo

{
  "values": [
    {
      "recordId": "1",
      "data": {
        "content": "hello",
        "normalized_images": []
      }
    }
  ]
}

Consulte también