요구사항: AI 대형 모델 시대의 물결 속에서 다양한 산업이 데이터 분석을 돕기 위해 AI를 도입하고 있습니다. 일부는 프로그래밍 언어를 통해 호출됩니다. 우리는 AI 대형 모델이 JSON 구조화된 데이터를 출력하기를 원합니다. AI 모델이 출력하는 JSON 문자열이 객체지향 접근법에서 정의한 유형과 일치하는지 어떻게 검증할 수 있을까요?
JsonSchema.Net
때로는 JSON 객체가 올바른 키와 값 타입으로 올바르게 포맷되어 있는지 확인해야 하거나, 데이터에 주석을 추가하고 싶을 수도 있습니다. 이럴 때 JSON 스키마가 유용합니다. XML 스키마와 유사하게, JSON 스키마는 JSON 데이터에 대한 패턴을 정의합니다. JSON 스키마 검증기는 주어진 JSON 객체가 JSON 스키마에서 정의한 요구사항을 충족하는지 검증하고, 애플리케이션에 데이터에 대한 추가 정보를 제공합니다. 이 평가는 디직렬화 전 준비 단계로 매우 유용할 수 있습니다.
근원:하이퍼링크 로그인이 보입니다. 문서조사:하이퍼링크 로그인이 보입니다.
현재 JSON 스키마 명세의 여섯 가지 버전이 알려져 있습니다:
- 드래프트 3
- 드래프트 4
- 드래프트 6
- 드래프트 7
- 드래프트 2019-09
- 드래프트 2020-12
JSON 스키마 팀은 Draft 7 또는 2020-12 사용을 권장합니다. JsonSchema.Net 6호 이후 초안을 지원합니다.
기본 튜토리얼
우리는 사람에 대한 객체를 정의한 후 스키마를 생성합니다. 코드는 다음과 같습니다:
출력은 다음과 같습니다:
{ "유형": [ "객체", "null" ], "속성": { "이름": { "유형": [ "끈", "null" ] }, "이메일": { "유형": [ "끈", "null" ] }, "나이": { "타입": "정수" }, "주소": { "유형": [ "array", "null" ], "아이템": { "유형": [ "객체", "null" ], "속성": { "위치": { "유형": [ "끈", "null" ] }, "우편번호": { "타입": "정수" } }, "필수": [ "위치", "우편번호" ] } } }, "필수": [ "이름", "이메일", "나이", "주소" ]
} JSON 문자열이 객체 구조에 부합하는지 JsonSchema를 사용해 검증하세요. 코드는 다음과 같습니다:
아래에 나와 있습니다:
빌더 패턴을 사용하면 코드는 다음과 같습니다:
(끝) |