4.5 KiB
4.5 KiB
<html lang="ko">
<head>
<style>
body { font-family: 'Arial', sans-serif; margin: 40px; line-height: 1.6; }
h1, h2 { color: #2c3e50; }
code, pre { background: #f4f4f4; padding: 10px; display: block; white-space: pre-wrap; border-left: 4px solid #3498db; }
.warn { color: #c0392b; font-weight: bold; }
</style>
</head>
🧾 JSON Schema file 작성 가이드
🔹 JSON Schema는 AI 모델이 생성해야 할 응답의 구조를 정의할 때 사용됩니다.
🔹 schema_file을 설정하면 문서에서 추출해야 할 항목과 각 항목의 데이터 형식을 명확하게 지정할 수 있습니다.
📌 사용 되는 API 종류
🔹 /extract/structed
✅ Schema JSON 작성 예시
🔹 [예시] 공문 요약을 위한 JSON Schema 작성 예시입니다:
{
"title": "DocumentSummary",
"type": "object",
"properties": {
"공문번호": { "type": "string" },
"공문일자": { "type": "string" },
"수신체": { "type": "string" },
"수신자": { "type": "string" },
"수신자_약자": { "type": "string" },
"발신체": { "type": "string" },
"발신자": { "type": "string" },
"발신자_약자": { "type": "string" },
"공문제목": { "type": "string" },
"공문제목요약": { "type": "string" },
"공문내용요약": { "type": "string" },
"공문간연계": { "type": "string" },
"공문종류": {
"type": "string",
"enum": ["행정/일반", "기술/성과물", "회의/기타"]
},
"공문유형": {
"type": "string",
"enum": ["보고", "요청", "지시", "회신", "계약"]
},
"첨부문서제목": { "type": "string" },
"첨부문서수": { "type": "integer" }
},
"required": [
"공문번호", "공문일자", "수신체", "수신자", "수신자_약자",
"발신체", "발신자", "발신자_약자", "공문제목", "공문제목요약",
"공문내용요약", "공문종류", "공문유형", "첨부문서제목", "첨부문서수"
]
}
📌 주요 키 설명
🔹 위 JSON 예시는 Schema 구조를 정의하는 방식으로 작성되어 있으며, 각 키의 의미는 다음과 같습니다:
- title: JSON 스키마의 이름 또는 제목을 정의합니다. 일반적으로 문서나 데이터 객체의 이름으로 사용됩니다.
- type: 이 JSON 전체 구조가 어떤 데이터 형태인지 지정합니다. 예: object, array, string 등.
- properties: 객체 내부에 포함된 각 항목(필드)을 정의하는 공간입니다. 각 항목에 대해 type이나 enum을 지정할 수 있습니다.
- required: 필수로 입력되어야 할 항목을 배열 형태로 나열합니다. 이 항목들이 누락되면 JSON 유효성 검사에서 실패하게 됩니다.
📌 필드 속성 설명
🔹 각 항목에 정의되는 type과 enum의 의미는 다음과 같습니다:
- type: 해당 필드의 데이터 유형을 명시합니다. 주요 유형은 다음과 같습니다:
- string: 문자열 값 (예: "서울특별시")
- integer: 정수 값 (예: 3, 25)
- boolean: 참/거짓 논리값 (예: true, false)
- enum: 해당 항목이 가질 수 있는 값을 제한할 때 사용합니다. 배열로 허용 가능한 값을 정의하며, 그 외 값은 허용되지 않습니다.
예: "공문종류"는 "행정/일반", "기술/성과물", "회의/기타" 중 하나여야 함
Tip. 프롬프트 작성 시 각 항목에 대한 지시문(description)을 따로 설정하면 AI 응답의 품질이 더욱 향상됩니다.
1. 공문번호: 문서 번호를 기입하세요. (예시: Ref. No. SYJV-250031)
2. 공문일자: 공문 발행일을 작성하세요. (예시: Mar / 28 / 2025)
3. 수신처: 수신 기관이나 부서명을 작성하세요. (예시: Department of Public Works and Highways)
...
16. 첨부문서수: 첨부문서제목을 바탕으로 문서의 개수를 작성하세요.
</html>