Об этом инструменте
Структурированный вывод позволяет модели возвращать JSON, соответствующий заданной вами схеме, вместо произвольного текста, который приходится разбирать и надеяться на лучшее. Этот конструктор собирает такую схему поле за полем — имена, типы, описания, флаги required, перечисления enum и вложенные объекты или массивы — и экспортирует её точно в той форме, которую ожидает каждый провайдер: исходный JSON Schema, обёртки response_format и function-tool от OpenAI, input_schema инструмента Anthropic, responseSchema от Google Gemini, а также готовые к вставке определения Zod и Pydantic.
Строгий режим структурированного вывода OpenAI имеет правила, которые стоит знать: каждое свойство должно быть указано как required, а additionalProperties должно быть false. Конструктор применяет их автоматически в экспортах OpenAI и помечает всё, что их нарушило бы, чтобы скопированная вами схема действительно работала. Вставьте существующий образец JSON, чтобы вывести стартовую схему, а затем доработайте её.
Схемы создаются и экспортируются полностью в вашем браузере — ничего из того, что вы вводите, не загружается на сервер.
Часто задаваемые вопросы
Что такое структурированный вывод и использование инструментов?
Оба требуют, чтобы модель возвращала JSON, соответствующий схеме. Структурированный вывод ограничивает итоговый ответ модели заданной вами формой; вызов инструмента (функции) описывает аргументы, которые модель может произвести, когда решает вызвать одну из ваших функций. Базовый формат схемы при этом один и тот же.
Почему строгий режим OpenAI требует, чтобы каждое поле было required?
Строгий режим гарантирует, что вывод проходит валидацию по вашей схеме без сюрпризов, и для этого он запрещает необязательные и дополнительные свойства. Чтобы сделать поле фактически необязательным, объявите его тип как nullable — объединение с null — сохраняя его при этом в списке required.
В чём разница между экспортами OpenAI, Anthropic и Gemini?
JSON Schema в основном общий, но каждый провайдер оборачивает его по-разному: OpenAI вкладывает его в response_format или function tool с strict: true, Anthropic ожидает его как input_schema инструмента, а Gemini использует responseSchema со своим собственным enum поддерживаемых типов. Этот инструмент выдаёт правильную обёртку для каждого.
Могу ли я сгенерировать код Zod или Pydantic?
Да. Помимо форматов провайдеров конструктор выдаёт схему Zod для TypeScript и модель Pydantic для Python, чтобы вы могли валидировать ответ в собственном коде.