모델이 valid JSON emit 강제
response_mime_type='application/json' 세팅하면 모델이 JSON 생산. response_schema 추가하면 JSON 이 그 schema 따름. Schema 는 Pydantic 모델, TypedDict, raw dict 가능.
자동으로 처리해 주는 두 가지 cleanup
- 출력 wrap 하는 markdown fence (
```json...```) X. - Trailing prose ("여기 JSON: ...") X.
response.text 에 깔끔한 parse 가능 문자열, (Pydantic 사용 시) response.parsed 에 deserialize 된 객체.
Function calling 과 같은 거 X
- Structured output = 최종 response 포맷. 모델이 JSON 으로 너한테 답함.
- Function calling = 모델이 conversation mid 에 너 코드 호출 원함. Function call 이 response, 최종 답변 X.
Structured output 사용처: 추출, 분류, form-filling. Function calling 사용처: 너 시스템에서 action 요구하는 거.