다음을 통해 공유


문서 추출 인지 기술

문서 추출 기술은 보강 파이프라인 내의 파일에서 콘텐츠를 추출합니다. 이렇게 하면 다른 기술에서 생성될 수 있는 파일을 사용하여 기술 세트를 실행하기 전에 일반적으로 발생하는 문서 추출 단계를 활용할 수 있습니다.

참고 항목

이 기술은 Azure AI 서비스에 바인딩되지 않으며 Azure AI 서비스 키 요구 사항이 없습니다. 이 기술은 텍스트와 이미지를 추출합니다. 텍스트 추출은 무료입니다. 이미지 추출은 Azure AI Search를 통해 측정됩니다. 무료 검색 서비스에서는 빠른 시작, 자습서 및 소규모 프로젝트를 무료로 완료할 수 있도록 하루에 인덱서당 20개의 트랜잭션 비용이 면제됩니다. Basic, Standard 이상의 경우 이미지 추출이 청구됩니다.

@odata.type

Microsoft.Skills.Util.DocumentExtractionSkill

지원되는 문서 형식

DocumentExtractionSkill은 다음 문서 형식에서 텍스트를 추출할 수 있습니다.

  • CSV(CSV Blob 인덱싱 참조)
  • EML
  • EPUB
  • GZ
  • HTML
  • JSON(JSON BLOB 인덱싱 참조)
  • KML(지리적 표현을 위한 XML)
  • Microsoft Office 형식: DOCX/DOC/DOCM, XLSX/XLS/XLSM, PPTX/PPT/PPTM, MSG(Outlook 메일), XML(2003 및 2006 WORD XML 모두)
  • 오픈 문서 형식: ODT, ODS, ODP
  • PDF
  • 일반 텍스트 파일(일반 텍스트 인덱싱도 참조)
  • RTF
  • XML
  • ZIP

기술 매개 변수

매개 변수는 대/소문자를 구분합니다.

입력 허용되는 값 설명
parsingMode default
text
json
default 순수 텍스트 또는 json이 아닌 파일에서 문서 추출을 위해 설정됩니다. 태그가 포함된 원본 파일(예: PDF, HTML, RTF 및 Microsoft Office 파일)의 경우 기본값을 사용하여 태그 언어 또는 태그를 제외한 텍스트만 추출합니다. 명시적으로 정의되지 않은 경우 parsingMode .로 설정 default됩니다.

원본 파일이 TXT인 경우 text로 설정합니다. 이 구문 분석 모드는 일반 텍스트 파일의 성능을 개선시킵니다. 파일에 태그가 포함된 경우 이 모드는 최종 출력에서 태그를 보존합니다.

json 파일에서 구조화된 콘텐츠를 추출하도록 json 설정합니다.
dataToExtract contentAndMetadata
allMetadata
각 파일에서 모든 메타데이터 및 텍스트 콘텐츠를 추출하도록 contentAndMetadata 설정합니다. 명시적으로 정의되지 않은 경우 dataToExtract .로 설정 contentAndMetadata됩니다.

콘텐츠 형식대한 메타데이터 속성만 추출하도록 allMetadata 설정합니다(예: .png 파일에만 고유한 메타데이터).
configuration 아래 참조 문서를 추출하는 방법을 조정하는 선택적 매개 변수의 사전입니다. 지원되는 구성 속성에 대한 설명은 아래 표를 참조하세요.
구성 매개 변수 허용되는 값 설명
imageAction none
generateNormalizedImages
generateNormalizedImagePerPage
데이터 집합에 포함된 이미지 또는 이미지 파일을 무시하거나 none 원본 데이터에 이미지 파일이 포함되지 않도록 설정됩니다. 기본값입니다.

OCR 및 이미지 분석의 경우 기술이 문서 크래킹의 일부로 정규화된 이미지 배열을 만들도록 generateNormalizedImages로 설정합니다. 이 작업을 수행하려면 이 parsingMode 작업을 설정해야 default 하며 dataToExtract contentAndMetadata. 정규화된 이미지는 시각적 검색 결과에 이미지를 포함할 때 일관된 렌더링을 촉진하기 위해 크기가 조정되고 회전되는 균일한 이미지 출력을 초래하는 추가 처리를 의미합니다(예: JFK 데모에서 볼 수 있듯이 그래프 컨트롤에 동일한 크기의 사진). 이 정보는 이 옵션을 사용할 때 각 이미지에 대해 생성됩니다.

로 설정 generateNormalizedImagePerPage하면 포함된 이미지를 추출하는 대신 PDF 파일이 다르게 처리되고 각 페이지가 이미지로 렌더링되고 그에 따라 정규화됩니다. PDF가 아닌 파일 형식은 설정된 것과 generateNormalizedImages 동일하게 처리됩니다.
normalizedImageMaxWidth 50-10000 사이의 모든 정수 정규화된 이미지의 최대 너비(픽셀 단위)가 생성되었습니다. 기본값은 2000입니다.
normalizedImageMaxHeight 50-10000 사이의 모든 정수 생성된 정규화된 이미지의 최대 높이(픽셀)입니다. 기본값은 2000입니다.

참고 항목

정규화된 이미지의 최대 너비와 높이에 대한 2000 픽셀이라는 기본값은 OCR 기술이미지 분석 기술에서 지원하는 최대 크기에 기반합니다. OCR 기술은 영어가 아닌 언어의 경우 4200, 영어의 경우 10000의 최대 너비 및 높이를 지원합니다. 최대 한도를 늘리면 기술 세트 정의 및 문서의 언어에 따라 큰 이미지 처리에 실패할 수 있습니다.

기술 입력

입력 이름 설명
file_data 콘텐츠를 추출해야 하는 파일입니다.

"file_data" 입력은 다음과 같이 정의된 개체여야 합니다.

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

또는 다음과 같이 정의할 수 있습니다.

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

파일 참조 개체는 다음 세 가지 방법 중 하나로 생성할 수 있습니다.

  • 인덱서 정의에서 allowSkillsetToReadFileData 매개 변수를 "true"로 설정합니다. Blob 데이터 원본에서 다운로드한 원래 파일 데이터를 나타내는 개체인 경로를 /document/file_data 만듭니다. 이 매개 변수는 Blob Storage의 파일에만 적용됩니다.

  • 인덱서 정의의 imageAction 매개 변수를 .가 아닌 none값으로 설정 이렇게 하면 개별적으로 전달되는 경우 이 기술에 대한 입력에 필요한 규칙을 따르는 이미지 배열이 생성됩니다(즉, /document/normalized_images/*).

  • 사용자 지정 기술이 있으면 위와 같이 정확하게 정의된 json 개체가 반환됩니다. 매개 변수를 정확하게 file 설정해야 하며 data 매개 변수는 $type 파일 콘텐츠의 base 64로 인코딩된 바이트 배열 데이터여야 합니다. 또는 url 매개 변수는 해당 위치에서 파일을 다운로드할 수 있는 액세스 권한이 있는 올바른 형식의 URL이어야 합니다.

기술 출력

출력 이름 설명
content 문서의 텍스트 내용입니다.
normalized_images 값이 imageAction 아닌 none값으로 설정되면 새 normalized_images 필드에 이미지 배열이 포함됩니다. 출력 형식에 대한 자세한 내용은 이미지에서 텍스트 및 정보 추출을 참조하세요.

샘플 정의

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

샘플 입력

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

샘플 출력

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

참고 항목