Compartilhar via


Habilidade cognitiva de Extração de Documento

A habilidade Extração de Documento extrai conteúdo de um arquivo no pipeline de enriquecimento. Por padrão, a extração ou recuperação de conteúdo é incorporada ao pipeline de enriquecimento. Contudo, a habilidade de Extração de Documento permite controlar como os parâmetros são definidos e como o conteúdo extraído é nomeado na árvore de enriquecimento.

Para as pesquisas vetorial e multimodal, a Extração de Documento associada à habilidade de Divisão de Texto é mais acessível do que outras abordagens de agrupamento de dados. Os seguintes tutoriais apresentam o uso de habilidades para vários cenários:

Note

Essa habilidade não está associada ao Foundry Tools e não apresenta um requisito essencial do Foundry Tools.

Essa habilidade extrai texto e imagens. A extração de texto é gratuita. A extração de imagem é cobrável pela Pesquisa de IA do Azure. Em um serviço de pesquisa gratuita, o custo de 20 transações por indexador por dia é reduzido para que você possa concluir inícios rápidos, tutoriais e pequenas atividades sem custo. Para os níveis básicos e superiores, a extração de imagem é cobrável.

@odata.type

Microsoft.Skills.Util.DocumentExtractionSkill

Formatos de documento com suporte

O DocumentExtractionSkill pode extrair texto dos seguintes formatos de documento:

  • CSV (consulte Indexando BLOBs CSV)
  • EML
  • EPUB
  • GZ
  • HTML
  • JSON (consulte Indexando BLOBs JSON)
  • KML (XML para representações geográficas)
  • Formatos do Microsoft Office: DOCX/DOC/DOCM, XLSX/XLS/XLSM, PPTX/PPT/PPTM, MSG (emails do Outlook) e XML (WORD XML 2003 e 2006)
  • Abrir formatos de documento: ODT, ODS, ODP
  • PDF
  • Arquivos de texto sem formatação (consulte também Como indexar texto sem formatação)
  • RTF
  • XML
  • ZIP

Parâmetros de habilidades

Os parâmetros diferenciam maiúsculas de minúsculas.

Inputs Valores permitidos Description
parsingMode default
text
json
Definir como default para extração de documentos de arquivos que não sejam texto puro ou json. Para os arquivos de origem que contêm marcação (como os arquivos PDF, HTML, RTF e do Microsoft Office), use o padrão para extrair apenas o texto, menos as linguagens de marcação ou marcas, se houver. Se parsingMode não for definido explicitamente, ele será definido como default.

Defina-o como text se os arquivos de origem forem txt. Esse modo de análise aprimora o desempenho em arquivos de texto sem formatação. Se os arquivos incluírem marcação, esse modo preservará as marcas na saída final.

Definir como json para extrair conteúdo estruturado de arquivos json.
dataToExtract contentAndMetadata
allMetadata
Defina essa propriedade como contentAndMetadata para extrair todos os metadados e o conteúdo textual de cada arquivo. Se dataToExtract não for definido explicitamente, ele será definido como contentAndMetadata.

Defina como allMetadata para extrair somente as Propriedades de metadados para o tipo de conteúdo (por exemplo, metadados exclusivos para arquivos que sejam somente. png).
configuration Veja abaixo. Um dicionário de parâmetros opcionais que ajustam a forma como a extração de documento é executada. Consulte a tabela abaixo para obter descrições das propriedades de configuração com suporte.
Parâmetro de configuração Valores permitidos Description
imageAction none
generateNormalizedImages
generateNormalizedImagePerPage
Defina como none para ignorar imagens inseridas ou arquivos de imagem no conjunto de dados ou se os dados de origem não incluírem os arquivos de imagem. Esse é o padrão.

Para análise de imagem e OCR, defina como generateNormalizedImages para que a habilidade crie uma matriz de imagens normalizadas como parte da quebra de documento. Essa ação exige que parsingMode seja definido como default e dataToExtract seja definido como contentAndMetadata. Uma imagem normalizada refere-se ao processamento extra que resulta na saída de imagem uniforme, dimensionada e girada para promover a renderização consistente quando você inclui imagens nos resultados da pesquisa visual (por exemplo, fotografias do mesmo tamanho em um controle de grafo, como visto na demonstração JFK). Essas informações são geradas para cada imagem quando você usa essa opção.

Se você definir como generateNormalizedImagePerPage, os arquivos PDF serão tratados de forma diferente em vez de extrair imagens inseridas, cada página será renderizada como uma imagem e normalizada de acordo. Os tipos de arquivo que não são PDF serão tratados da mesma forma que seria se generateNormalizedImages tivesse sido definido.
normalizedImageMaxWidth Qualquer inteiro entre 50-10000 A largura máxima (em pixels) para as imagens normalizadas geradas. O padrão é 2000.
normalizedImageMaxHeight Qualquer inteiro entre 50-10000 A altura máxima (em pixels) para as imagens normalizadas geradas. O padrão é 2000.

Note

O padrão de 2000 pixels para a largura e altura máximas das imagens normalizadas se baseia nos tamanhos máximos compatíveis com a habilidade de OCR e a habilidade de análise de imagem. Habilidades de OCR são compatíveis com a largura e altura máximas de 4.200 para idiomas não inglês e 10.000 para o inglês. Caso aumente os limites máximos, poderá haver uma falha no processamento de imagens maiores, de acordo com a definição do conjunto de habilidades e do idioma dos documentos.

Entradas de habilidades

Nome de entrada Description
file_data O arquivo do qual o conteúdo deve ser extraído.

A entrada "file_data" precisa ser um objeto definido da seguinte forma:

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

Alternativamente, ele pode ser definido 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"
}

Esse objeto de referência de arquivo pode ser gerado de três maneiras:

  • Especificar o parâmetro allowSkillsetToReadFileData na definição do indexador como true. Isso cria um caminho /document/file_data que é um objeto que representa os dados de arquivo originais baixados da sua fonte de dados do blob. Esse parâmetro se aplica somente aos arquivos no Armazenamento de blobs.

  • Definindo o parâmetro imageAction na definição do indexador com um valor diferente de none. Isso cria uma matriz de imagens que segue a convenção necessária para o recebimento de informações para essa habilidade se for aprovada individualmente (ou seja, /document/normalized_images/*).

  • Ter uma habilidade personalizada retorna um objeto json definido EXATAMENTE como acima. O parâmetro $type deve ser definido como exatamente file e o parâmetro data deve ser a base 64 dos dados da matriz de bytes codificados do conteúdo do arquivo ou o parâmetro url deve ser uma URL formatada corretamente com acesso para baixar o arquivo nesse local.

Saídas de habilidades

Nome de saída Description
content O conteúdo textual do documento.
normalized_images Quando imageAction é definido como um valor diferente de none, o novo campo normalized_images conterá uma matriz de imagens. Confira extrair texto e informações de imagens para obter mais detalhes sobre o formato de saída.

Definição de exemplo

 {
    "@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 exemplo

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

Saída de exemplo

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

Consulte também