출력 스키마란?
출력 스키마는 Omni가 반환하는 검증 결과의 정확한 JSON 구조를 정의합니다. 원시 엔진 출력 대신 시스템이 필요로 하는 형식으로 정확히 포맷된 결과를 받을 수 있습니다.출력 스키마 정의하기
출력 스키마는 워크플로우 설정에서 JSON 구조로 정의합니다. 각 필드는 워크플로우 엔진이 추출하고 검증한 데이터에 매핑됩니다.스키마 작성 가이드
워크플로우 생성 Step 4: 출력 스키마에서 Field Builder 또는 JSON 입력을 사용할 때 아래 규칙이 적용됩니다.- 표준: JSON Schema Draft-07을 따릅니다. 다만 Omni에서는 아래 추가 제약이 있습니다.
- 루트 구조: 최상위는
"type": "object"로 시작하고, 필드는"properties"객체 안에 정의해야 합니다. - 필드 타입:
string(문자열),number(소수),integer(정수),boolean(참/거짓),object(중첩 객체),array(목록)를 사용할 수 있습니다. - 중첩 깊이: 필드 중첩은 최대 2단계까지 허용됩니다(예: 최상위
object→ 그 안의object까지). - 이름 중복: 동일한 필드 이름을 중복해 정의할 수 없습니다.
description: 각 필드에description을 추가하면 AI가 스키마를 해석하고 결과를 생성할 때 더 정확한 매핑에 도움이 됩니다.- 동기화: Field Builder(테이블 뷰)와 JSON 입력(코드 뷰)은 서로 자동으로 동기화됩니다. 한쪽에서 수정하면 다른 쪽에도 반영됩니다.
Step 4. 출력 스키마
워크플로우 생성 마지막 단계에서 출력 스키마를 정의합니다. 필드 빌더와 JSON Schema 직접 입력 두 방식을 제공하며, 서로 자동 변환됩니다.- 필드 빌더
- JSON Schema 직접 입력
+ 필드 추가 로 필드를 하나씩 쌓아 올립니다. 각 필드의 이름, 타입, 설명을 폼으로 입력합니다.

Step 4: 필드 빌더 또는 JSON Schema 직접 입력으로 출력 구조를 정의합니다.
검증 상태 (verificationStatus)
분석 응답 최상위에는 시스템이 산정한 verificationStatus 가 항상 올라오며, 값은 verified, pending_review, rejected 중 하나입니다. 이 값은 출력 스키마와 무관하게 시스템이 결정합니다.
출력 스키마의 결정(decision) 블록에 같은 이름의 필드를 정의할 수 있지만, 그것은 사용자 정의 값이며 시스템 판정과는 별개입니다. 동일한 enum으로 맞춰두면 다운스트림 분기가 단순해집니다.
스키마 모범 사례
다운스트림 시스템에 맞추세요
다운스트림 시스템에 맞추세요
백엔드 또는 컴플라이언스 시스템이 기대하는 형식에 맞게 스키마를 설계하세요. 후처리 변환의 필요성을 제거합니다.
결정 블록을 포함하세요
결정 블록을 포함하세요
항상
result, verificationStatus(verified / pending_review / rejected), 사유가 포함된 최상위 결정 필드를 포함하세요. 이는 권장 패턴이며 시스템이 강제하는 구조가 아닙니다. 시스템 판정 값과 enum을 맞춰두면 다운스트림 라우팅이 단순해집니다.가능하면 평면 구조를 사용하세요
가능하면 평면 구조를 사용하세요
단순한 스키마가 유지보수와 통합이 더 쉽습니다. 데이터가 자연스럽게 요구하는 경우에만 중첩하세요.