Structured Output (Структурированный вывод)

Определение

Structured Output — режим или архитектурный приём, при котором ответ модели должен соответствовать заданной структуре, например JSON Schema, типизированному объекту или набору полей.

Чем отличается от «ответь в JSON»

Обычная текстовая инструкция не гарантирует валидный JSON. API с поддержкой строгой схемы может ограничивать допустимую структуру во время генерации. Но корректная форма не означает корректный смысл: модель способна вернуть правдоподобное неверное значение в идеально валидном поле.

Где применять

Практика

  1. Делай схему минимальной и однозначной.
  2. Используй enum и ограничения типов там, где они отражают бизнес-правила.
  3. Валидируй ответ на стороне приложения.
  4. Проверяй значения отдельно от структуры.
  5. Обрабатывай отказ модели, пустой ответ и несовместимую схему.

Поддерживаемое подмножество JSON Schema и поведение strict-режима зависят от провайдера и модели.

Связанные заметки

Источник