다음을 통해 공유


문서 인텔리전스 레이아웃 API Markdown 출력 형식 이해

Foundry 도구 레이아웃 API의 Azure Document Intelligence는 문서를 풍부한 Markdown으로 변환하여 원래 구조와 서식을 유지할 수 있습니다. 적절한 계층 구조에서 단락, 제목, 표 및 기타 문서 요소를 유지 관리하는 의미 체계로 구성된 콘텐츠를 수신하도록 요청에 지정 outputContentFormat=markdown 하기만 하면 됩니다.

이 Markdown 출력은 다운스트림 애플리케이션에 대해 표준화되고 쉽게 소모 가능한 콘텐츠를 제공하면서 문서의 원래 조직을 우아하게 캡처합니다. 보존된 의미 체계 구조를 사용하면 문서 요소 간의 컨텍스트와 관계를 잃지 않고도 보다 정교한 문서 처리 워크플로를 사용할 수 있습니다.

레이아웃 분석에서 지원되는 Markdown 요소

레이아웃 API 응답에 포함된 Markdown 요소는 다음과 같습니다.

  • 단락
  • 제목
  • 테이블 / 표
  • 그림
  • 선택 표시
  • 수식
  • 바코드
  • 페이지번호/페이지헤더/페이지푸터
  • PageBreak
  • KeyValuePairs/Language/Style
  • 범위 및 콘텐츠

단락

단락은 의미 체계적으로 함께 속하는 텍스트의 응집력 있는 블록을 나타냅니다. 레이아웃 API는 다음을 기준으로 단락 무결성을 유지합니다.

  • 개별 단락 사이에 빈 줄이 있는 단락 경계 유지
  • 단락 내에서 줄 바꿈을 사용하여 원본 문서의 시각적 구조 유지
  • 원본 문서의 읽기 순서를 준수하는 적절한 텍스트 흐름 유지 관리

예제는 다음과 같습니다.

This is paragraph 1.
This is still paragraph 1, even if in another Markdown line.

This is paragraph 2. There is a blank line between paragraph 1 and paragraph 2.

제목

제목은 문서 콘텐츠를 계층 구조로 구성하여 탐색 및 이해를 용이하게 합니다. 레이아웃 API에는 다음과 같은 기능이 있습니다.

  • 제목 수준에 해당하는 1-6개의 해시 기호(#)가 있는 표준 Markdown 제목 구문을 사용합니다.
  • 가독성 향상을 위해 각 제목 앞에 두 개의 빈 줄로 적절한 간격을 유지합니다.

예제는 다음과 같습니다.

# This is a title

## This is heading 1

### This is heading 2

#### This is heading 3

테이블 / 표

테이블은 복잡한 구조화된 데이터를 시각적으로 구성된 형식으로 유지합니다. 레이아웃 API는 최대 충실도 및 호환성을 위해 HTML 테이블 구문을 사용합니다.

  • 표준 Markdown 테이블 대신 전체 HTML 테이블 태그(<table>, <tr>, <th>, <td>)를 구현합니다.
  • HTML rowspan 및 colspan 특성을 사용하여 병합된 셀을 유지합니다.
  • 문서 컨텍스트를 유지하기 위해 태그를 <caption> 사용하여 테이블 캡션을 유지합니다.
  • 머리글, 셀 및 바닥글을 비롯한 복잡한 표 구조 처리
  • 가독성 향상을 위해 각 테이블 앞에 두 개의 빈 줄로 적절한 간격을 유지합니다.
  • 표 각주를 표 뒤에 있는 별도의 단락으로 유지합니다.

예제는 다음과 같습니다.

<table>
<caption>Table 1. This is a demo table</caption>
<tr><th>Header</th><th>Header</th></tr>
<tr><td>Cell</td><td>Cell</td></tr>
<tr><td>Cell</td><td>Cell</td></tr>
<tr><td>Cell</td><td>Cell</td></tr>
<tr><td>Footer</td><td>Footer</td></tr>
</table>
This is the footnote of the table.

그림

레이아웃 API는 그림 요소를 유지합니다.

  • 그림 콘텐츠를 태그로 <figure> 캡슐화하여 주변 텍스트와 의미 체계를 구분합니다.
  • 중요한 컨텍스트를 제공하기 위해 태그를 <figcaption> 사용하여 그림 캡션을 유지합니다.
  • 그림 컨테이너 다음에 별도의 단락으로 그림 각주를 유지합니다.

중요합니다

그림의 일부로 섹션 제목과 같은 특정 문서 구성 요소를 검색하는 경우 markdown 출력은 출력에 수치를 표시하지 않고 문서 구조 분석에 정보를 사용합니다. 이러한 경우 JSON의 그림 필드를 열거하여 모든 수치를 검색합니다.

예제는 다음과 같습니다.

<figure>
<figcaption>Figure 2 This is a figure</figcaption>

Values
300
200
100
0

Jan Feb Mar Apr May Jun Months

</figure>

This is footnote if the figure have.

선택 표시

선택 표시는 양식 및 문서의 확인란과 같은 요소를 나타냅니다. 레이아웃 API:

  • 시각적 명확성☒을 위해 유니코드 문자를 사용합니다.(선택됨) 및 ☐(선택되지 않음)
  • 신뢰도가 낮은 확인란 검색(0.1 신뢰도 미만)을 필터링하여 안정성 향상
  • 선택 표시와 연결된 텍스트 사이의 의미 체계 관계를 유지 관리합니다.

수식

수학 수식은 복잡한 수학 식의 렌더링을 허용하는 LaTeX 호환 구문을 사용하여 유지됩니다.

  • 인라인 수식은 텍스트 흐름을 유지하기 위해 1달러 기호($...$)로 묶입니다.
  • 블록 수식은 독립 실행형 디스플레이에 이중 달러 기호($$...$$)를 사용합니다.
  • 여러 줄 수식은 연속 블록 수식으로 표시되어 수학 관계를 유지합니다.
  • 정확한 표현을 보장하기 위해 원래 간격 및 서식이 유지됩니다.

인라인 수식, 한 줄 수식 블록 및 여러 줄 수식 블록의 예는 다음과 같습니다.

The mass-energy equivalence formula $E = m c ^ { 2 }$ is an example of an inline formula

$$\frac { n ! } { k ! \left( n - k \right) ! } = \binom { n } { k }$$

$$\frac { p _ { j } } { p _ { 1 } } = \prod _ { k = 1 } ^ { j - 1 } e ^ { - \beta _ { k , k + 1 } \Delta E _ { k , k + 1 } }$$
$$= \exp \left[ - \sum _ { k = 1 } ^ { j - 1 } \beta _ { k , k + 1 } \Delta E _ { k , k + 1 } \right] .$$

바코드

바코드 및 QR 코드는 의미 체계 정보가 추가된 Markdown 이미지 구문을 사용하여 표시됩니다.

  • 설명 특성과 함께 표준 이미지 Markdown 구문을 사용합니다.
  • 바코드 형식(QR 코드, 바코드 등)과 인코딩된 값을 모두 캡처합니다.
  • 바코드와 주변 콘텐츠 간의 의미 체계 관계를 유지합니다.

예제는 다음과 같습니다.

![QRCode](barcodes/1.1 "https://www.microsoft.com")

![UPCA](barcodes/1.2 "012345678905")
 
![barcode type](barcodes/pagenumber.barcodenumber "barcode value/content")

페이지번호/페이지헤더/페이지푸터

페이지 메타데이터 요소는 문서 페이지 매김에 대한 컨텍스트를 제공하지만 주 콘텐츠와 인라인으로 표시할 수 없습니다.

  • 표준 Markdown 렌더링에서 정보를 숨기면서 정보를 유지하기 위해 HTML 주석으로 묶음
  • 문서 재구성에 유용할 수 있는 원래 페이지 구조 정보를 유지 관리합니다.
  • 애플리케이션이 콘텐츠 흐름을 방해하지 않고 문서 페이지 매김을 이해할 수 있도록 합니다.

예제는 다음과 같습니다.

<!-- PageHeader="This is page header" -->

<!-- PageFooter="This is page footer" -->
<!-- PageNumber="1" -->


PageBreak

순수 Markdown 콘텐츠의 페이지 기반에 속하는 부분을 쉽게 파악하기 위해 PageBreak를 페이지의 구분 기호로 도입했습니다.

예제는 다음과 같습니다.

<!-- PageBreak -->

KeyValuePairs/Language/Style

KeyValuePairs/Language/Style의 경우 Markdown 콘텐츠가 아닌 Analytics JSON 본문에 매핑합니다.

비고

현재 GitHub.com 사용자 콘텐츠에 대해 지원되는 Markdown에 대한 자세한 내용은 GitHub Flavored Markdown 사양을참조하세요.

결론

문서 인텔리전스의 Markdown 요소는 분석된 문서의 구조와 콘텐츠를 나타내는 강력한 방법을 제공합니다. 이러한 Markdown 요소를 이해하고 적절하게 활용하면 문서 처리 워크플로를 향상시키고 보다 정교한 콘텐츠 추출 애플리케이션을 빌드할 수 있습니다.

다음 단계