이제 스키마를 지키게 강제할 수 있어
2023년에는 모델에게 JSON으로 돌려달라고 부탁한 뒤 깨지지 않길 바랐어. 2026년에는 주요 제공업체가 모두 구조화 출력 모드를 지원해. 생성 단계에서 토큰마다 스키마를 검사하고, 잘못된 JSON을 만드는 토큰은 내보내지 못하게 막아. 출력 구조가 프롬프트의 부탁이 아니라 서버의 보장이 된 거야.
제공업체별 방식
- OpenAI —
response_format = {"type": "json_schema", "json_schema": {...}}를 쓰며, 엄격 모드는 스키마를 정확히 강제해. - Anthropic — 단일 도구의 input_schema를 원하는 출력으로 삼고 그 도구 사용을 강제하는 방식으로 JSON을 받을 수 있어. 새 SDK에는 구조화 출력 전용 끝점도 있어.
- Gemini —
response_mime_type = "application/json"과response_schema를 함께 써.
형식을 강제해도 의미는 프롬프트가 맡아
구조화 출력이 켜져도 각 필드의 뜻, 필드 사이 관계, null과 빈 값의 처리 규칙은 프롬프트가 설명해야 해. 스키마는 모양을 보장하고 프롬프트는 의미를 정해. 구조화 출력이 지시문을 대신한다고 생각하지 마.