엄격한 JSON 출력에서 추론 내용을 담을 칸이 필요한가

OpenAI 에서 엄격한 인 json_와 strict: true를 쓰면, 모델은 정해진 JSON 칸 안에만 답을 내보낸다. 이 먼저 설계 방향을 정하고 이유를 생각하라고 해도, 스키마에 direction이나 rationale처럼 그 내용을 담을 칸이 없으면 결과물이 더 비슷하고 평범해질 수 있다는 의문이 제기됐다.

비교 대상은 자유롭게 글로 답하게 한 경우이며, 그때보다 결과가 더 획일적으로 보였다는 경험이다. 핵심 가설은 일반 GPT 모델에서는 실제로 출력되는 토큰이 이후 결과에 영향을 주기 때문에, 출력할 자리가 없는 추론은 결과에 충분히 반영되지 않을 수 있다는 것이다.

그래서 프롬프트에만 맡기지 말고 스키마 안에 direction, rationale 같은 추론용 필드를 앞쪽에 넣는 방식이 해결책인지가 쟁점이다. 또 생성은 앞에서 뒤로 이어지는 방식이므로, 스키마의 properties 순서에서 추론 필드를 design나 html보다 앞에 두면 뒤에 나오는 산출물에 더 영향을 줄 수 있는지도 함께 묻고 있다.

핵심 포인트

  • 엄격한 은 모델이 정해진 JSON 필드 안에서만 답하게 만든다.
  • 프롬프트가 추론을 요구해도 스키마에 담을 필드가 없으면 결과가 더 일반적일 수 있다.
  • direction, rationale 같은 짧은 추론 필드를 추가하는 방식이 가능한 해결책으로 제시됐다.
  • properties 순서에서 추론 필드를 먼저 두면 뒤의 design나 html에 영향을 줄 수 있는지가 핵심 질문이다.
  • 필드를 너무 줄이면 토큰은 아끼지만 재시도와 품질 저하로 비용 절감 효과가 약해질 수 있다.
원문 보기