13 / 17
Как заставить модель возвращать строгий JSON: structured output и function calling?
Три рабочих способа: JSON mode (response_format: {type: 'json_object'}) — гарантирует валидный JSON, но без схемы. Structured output с zod/JSON-schema — модель возвращает данные, валидные относительно схемы, без ручного парсинга. Function calling / tool use — модель сама решает, какую функцию вызвать с какими аргументами по схеме. Никогда не парси «свободный» ответ модели — всегда задавай схему.