Aptitud cognitiva de extracción de documentos

La aptitud de extracción de documentos extrae el contenido de un archivo dentro de la canalización de enriquecimiento. Esto le permite aprovechar el paso de extracción de documentos que normalmente se produce antes de la ejecución del conjunto de aptitudes con archivos que se pueden haber generado otras aptitudes.

Nota:

Esta aptitud no está enlazada a servicios de Azure AI y no tiene ningún requisito de clave de los servicios de Azure AI. Esta aptitud extrae texto e imágenes. La extracción de texto es gratuita. La extracción de imágenes la mide Azure AI Search. 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. Para Básico, Estándar 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 la aptitud

Los parámetros distinguen mayúsculas de minúsculas.

Entradas Valores permitidos Descripción
parsingMode default
text
json
Se establece en default para la extracción de documentos desde archivos que no son de texto puro o JSON. En el caso de los archivos de origen que contienen archivos de marcado (como archivos PDF, HTML, RTF y de Microsoft Office), use el valor predeterminado para extraer solo el texto, sin lenguaje de marcado ni etiquetas. Si parsingMode no se define explícitamente, se establecerá en default.

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

Se establece en json para extraer contenido estructurado de los 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, se establecerá en contentAndMetadata.

Se establece en allMetadata para extraer solo las propiedades de metadatos del tipo de contenido (por ejemplo, los metadatos únicos de los archivos .png).
configuration Véase 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 Descripción
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 es el valor 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 que parsingMode se establezca en default y dataToExtract se establezca en contentAndMetadata. Una imagen normalizada hace referencia a un procesamiento adicional que da como resultado una salida de imagen uniforme, con un tamaño y una rotación que favorecen una representación coherente cuando se incluyen imágenes en los resultados de búsquedas visuales (por ejemplo, fotografías del mismo tamaño en un control de grafos, como se ve en la demostración de JFK). Esta información se genera para cada imagen cuando se usa esta opción.

Si se establece en generateNormalizedImagePerPage, los archivos PDF se tratan de manera diferente. En lugar de extraer las imágenes insertadas, cada página se representa como una imagen y se normaliza en consecuencia. 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.

Nota:

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 la aptitud

Nombre de entrada Descripción
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.

  • 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.

Salidas de la aptitud

Nombre de salida Descripción
content Contenido textual del documento.
normalized_images Si imageAction se establece en un valor que no sea none, el nuevo campo normalized_images contendrá una matriz de imágenes. Para más detalles sobre el formato de la salida, consulte el artículo Extracción de texto e información de las imágenes en escenarios de enriquecimiento con IA.

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