Structured Outputs 개요 — 스키마 준수 출력 보장

Structured Outputs 개요

LLM이 JSON을 말한다 해도 키 누락이나 잘못된 enum이 나오면 파싱이 깨져요. Structured Outputs는 모델 응답이 항상 제시한 JSON Schema를 준수하도록 만들어, '스키마에 맞는 출력만 나온다'를 보장해요.

JSON mode와의 차이

항목 Structured Outputs JSON Mode
유효한 JSON 출력
스키마 준수 네 (지원 스키마 한정) 아니요
활성화 format: {type:"json_schema", strict:true, ...} format: {type:"json_object"}

JSON mode는 '일단 JSON은 맞는 것'에 그치지만, Structured Outputs는 정확히 스키마에 맞는 것까지 보장해요. 그래서 지원되는 유스케이스라면 Structured Outputs를 권장해요.

어디에 쓰나

  • 수학 튜터 응답을 UI 별 섹션으로 렌더링
  • 엔티티 추출, 데이터 분류처럼 스키마가 고정된 태스크
  • 에이전트가 구조화된 인자로 도구를 호출

더 알아보기