Выбор ответа Junior ИИ-фичи в продукте спрашивают часто обновлено
Нужна ли валидация при structured output
Вопрос
API ограничивает ответ модели JSON-схемой. Нужно ли валидировать ответ на своей стороне?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Да: значения могут быть пустыми, выдуманными или нарушать бизнес-правила. Схема помогает с форматом, но не гарантирует смысл: модель может вернуть правдоподобную выдумку, пустую строку, дату в прошлом.
Варианты ответа
- Нет, схема на стороне провайдера гарантирует и формат, и смысл полей
- Да: значения могут быть пустыми, выдуманными или нарушать бизнес-правилаправильный ответ
- Нет, достаточно обернуть JSON.parse в try/catch и вернуть пустой объект
- Только в тестовом окружении, в проде проверка замедлит ответ пользователю
Разбор
Схема помогает с форматом, но не гарантирует смысл: модель может вернуть правдоподобную выдумку, пустую строку, дату в прошлом. Плюс бывают обрезанные ответы и отказы. Валидация (Zod, Pydantic, JSON Schema) и бизнес-проверки обязательны. Пустой объект при ошибке прячет проблему. Проверка схемы стоит микросекунды.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.