메인 콘텐츠로 건너뛰기
문서를 처리하면 — API 또는 웹 UI를 통해 처리한 경우 모두 — Vantage는 추출된 field 값, 신뢰도 점수, 검증 플래그가 포함된 구조화된 데이터를 반환합니다. 이 페이지에서는 이 출력 결과를 해석하는 방법을 설명합니다.

Result 구조 한눈에 보기

모든 Result는 동일한 계층 구조를 따릅니다:
ExtractedDataTransaction
├── SkillName, SkillId
├── Documents[]
│   ├── ExtractedData
│   │   ├── DocumentDefinition    ← field 스키마(추출할 수 있는 항목)
│   │   └── RootObject            ← field 값(실제로 추출된 항목)
│   │       └── Fields[]
│   │           ├── Name
│   │           └── List[]
│   │               ├── Value
│   │               ├── Annotation (Confidence, RawValue, ...)
│   │               ├── NeedVerification
│   │               └── isVerified
│   └── ClassificationResult      ← 문서 유형(분류가 적용된 경우)
└── SourceFiles[]
대부분의 사용 사례에서는 추출된 값에 액세스하려면 Documents[0].ExtractedData.RootObject.Fields로 이동하면 됩니다.

추출된 필드 읽기

다음은 ABBYY Invoice 스킬로 처리된 송장의 간단한 예입니다:
{
  "SkillName": "ABBYY Invoice",
  "SkillId": "a1b2c3d4-...",
  "Documents": [
    {
      "ExtractedData": {
        "RootObject": {
          "Fields": [
            {
              "Name": "InvoiceNumber",
              "List": [
                {
                  "Value": "INV-2024-0042",
                  "Annotation": {
                    "Confidence": 97,
                    "RawValue": "INV-2024-0042",
                    "Source": "Text"
                  },
                  "NeedVerification": false,
                  "isVerified": false
                }
              ]
            },
            {
              "Name": "InvoiceDate",
              "List": [
                {
                  "Value": "2024-03-15",
                  "Annotation": {
                    "Confidence": 94,
                    "RawValue": "March 15, 2024",
                    "Source": "Text"
                  },
                  "NeedVerification": false,
                  "isVerified": false
                }
              ]
            },
            {
              "Name": "TotalAmount",
              "List": [
                {
                  "Value": "1,250.00",
                  "Annotation": {
                    "Confidence": 62,
                    "RawValue": "1.250,00",
                    "Source": "Image"
                  },
                  "NeedVerification": true,
                  "isVerified": false
                }
              ]
            }
          ]
        }
      }
    }
  ]
}
각 field에는 다음이 포함됩니다:
Property의미
Name스킬에서 정의한 field 이름(예: “InvoiceNumber”, “VendorName”)
Value정규화 후 추출된 값 — 날짜는 ISO 형식으로 변환되고 숫자는 표준화됩니다
Annotation.ConfidenceVantage가 추출 결과를 얼마나 확신하는지를 나타내는 0~100 범위의 정수
Annotation.RawValue정규화되기 전 OCR이 인식한 원본 텍스트
Annotation.Source값이 문서의 Text 레이어에서 가져온 것인지, 아니면 Image에서 읽은 것인지 여부
NeedVerificationfield가 사람이 검토하도록 표시된 경우 true(예: 신뢰도가 낮거나 검증 규칙에 실패한 경우)
isVerified사람이 수동 검토에서 이미 해당 값을 확인한 경우 true
위의 TotalAmountConfidence: 62NeedVerification: true가 있는 점에 주목하세요. 원시 값 1.250,00(유럽 형식)은 1,250.00으로 정규화되었지만, 낮은 신뢰도는 Vantage가 OCR 결과를 완전히 확신하지 못했다는 뜻입니다. 이런 경우가 바로 사람이 확인해 봐야 하는 대표적인 field입니다.

테이블 field (품목 내역)

송장의 품목 내역과 같이 테이블을 추출하는 스킬은 이를 반복 그룹이 포함된 field로 표현합니다. 각 행은 field의 List 배열 내 ExtractedObject로 표시되며, 각각 고유한 하위 field를 가집니다:
{
  "Name": "LineItems",
  "List": [
    {
      "Fields": [
        { "Name": "Description", "List": [{ "Value": "Consulting services", ... }] },
        { "Name": "Quantity",    "List": [{ "Value": "10", ... }] },
        { "Name": "UnitPrice",   "List": [{ "Value": "100.00", ... }] },
        { "Name": "Amount",      "List": [{ "Value": "1,000.00", ... }] }
      ]
    },
    {
      "Fields": [
        { "Name": "Description", "List": [{ "Value": "Travel expenses", ... }] },
        { "Name": "Quantity",    "List": [{ "Value": "1", ... }] },
        { "Name": "UnitPrice",   "List": [{ "Value": "250.00", ... }] },
        { "Name": "Amount",      "List": [{ "Value": "250.00", ... }] }
      ]
    }
  ]
}
각 행은 동일한 field 구조를 가지므로 코드에서 쉽게 반복 처리할 수 있습니다.

실제 사용에서의 신뢰도 점수

신뢰도 점수는 Vantage가 추출된 값을 얼마나 확신하는지를 나타냅니다. 신뢰도에는 여러 요인이 영향을 줍니다.
  • 문서 품질 — 흐릿한 스캔, 저해상도 이미지 또는 손글씨 텍스트는 더 낮은 점수를 유발합니다
  • 레이아웃 복잡성 — 일반적이지 않은 표 레이아웃이나 겹치는 field는 정확도를 떨어뜨릴 수 있습니다
  • 학습 데이터 일치도 — 스킬이 학습한 패턴과 밀접하게 일치하는 값일수록 더 높은 점수를 받습니다
프로그래밍 방식으로 신뢰도를 활용하는 방법:
  • 높은 신뢰도(90–100) — 값을 자동으로 수락합니다
  • 중간 신뢰도(70–89) — 주의해서 수락하거나, 중요한 field는 검토로 보냅니다
  • 낮은 신뢰도(70 미만) — 사람이 확인할 수 있도록 수동 검토로 보냅니다
NeedVerification: true가 있는 field는 스킬에 구성된 신뢰도 임곗값과 검증 규칙에 따라 Vantage가 이미 표시한 상태입니다.

스킬별 공통 field 이름

각 스킬은 고유한 field 이름 세트를 정의합니다. 다음은 자주 사용되는 스킬에서 가장 일반적인 field입니다:
스킬핵심 필드
송장InvoiceNumber, InvoiceDate, VendorName, TotalAmount, TaxAmount, LineItems
영수증ReceiptNumber, Date, VendorName, Total, Tax, PaymentMethod, LineItems
구매 주문서PONumber, OrderDate, BuyerName, SupplierName, TotalAmount, LineItems
신분증FirstName, LastName, DateOfBirth, DocumentNumber, ExpirationDate, Nationality
위에 나열된 것은 가장 일반적인 field입니다. 각 스킬에는 추가 field가 포함될 수 있습니다. 특정 스킬의 전체 field 목록은 Skill Catalog에서 확인하세요.

다음 단계

전체 JSON 스키마

JSON 출력의 모든 객체와 속성에 대한 완전한 참조입니다.

XML 출력

동일한 추출 데이터를 XML 구조로 제공하는 대체 출력 형식입니다.

수동 검토

추출된 field에 대해 사람이 직접 확인하는 검증을 구성합니다.

다음에 알아볼 내용

목표에 따라 Vantage 문서를 탐색할 경로를 선택하세요.