OpenAI анонсировала новаторскую функцию под названием Structured Outputs, направленную на повышение надежности выходных данных модели API. Это нововведение позволяет разработчикам предоставлять определенные схемы JSON, гарантируя, что генерируемые ИИ-выходные данные будут последовательно соответствовать желаемой структуре.
Решение проблемы неструктурированных данных
В сфере приложений ИИ преобразование неструктурированных данных в структурированные форматы является ключевым вариантом использования. API OpenAI сыграл важную роль в создании сложных помощников ИИ, способных извлекать данные, отвечать на запросы и выполнять действия. Однако разработчики долго боролись с ограничениями LLM в надежном создании структурированных выходных данных.
Структурированные выходные данные решают эту проблему, обучая модели лучшему пониманию сложных схем и ограничивая их соответствием структурам, определенным разработчиком. Это устраняет необходимость в обходных путях и значительно повышает надежность результатов, генерируемых ИИ.
Непревзойденная надежность: gpt-4o-2024-08-06
Последняя модель OpenAI, gpt-4o-2024-08-06, оснащенная структурированными выходами, может похвастаться безупречной оценкой 100% в оценках соответствия сложной схеме JSON. Это резко контрастирует с оценкой менее 40% ее предшественника, gpt-4-0613, демонстрируя существенное улучшение надежности.
Бесшовная интеграция для разработчиков
OpenAI предлагает два различных способа использования структурированных выходных данных в API:
- Вызов функции: Разработчики могут включить структурированные выходные данные, установив strict: true в определении своей функции. Это относится ко всем моделям, совместимым с инструментами, включая gpt-4-0613, gpt-3.5-turbo-0613 и более поздние версии.
- Формат ответа: для параметра response_format введена новая опция json_schema, позволяющая разработчикам напрямую предоставлять схему JSON. Это особенно полезно, когда модель структурированно реагирует непосредственно на пользователей и поддерживается новейшими моделями GPT-4o.
Обеспечение безопасности пользователей
Приоритет безопасности, OpenAI разработала структурированные выходы для соответствия существующим протоколам безопасности. Модель сохраняет возможность отклонять небезопасные запросы, а новое значение строки отказа в ответах API позволяет разработчикам программно идентифицировать такие отказы.
Расширение возможностей разработчиков благодаря встроенной поддержке SDK
Python и Node SDK от OpenAI были обновлены для встроенной поддержки структурированных выходов. Это упрощает процесс для разработчиков, автоматически обрабатывая преобразование схемы, десериализацию ответа и разбор отказов.
Разнообразные применения: раскрытие потенциала
Структурированные выходные данные находят применение в различных областях, таких как динамическое создание пользовательских интерфейсов, извлечение структурированных данных из неструктурированных источников и эффективное отделение окончательных ответов от подтверждающих рассуждений. Эти универсальные варианты использования демонстрируют потенциал этой функции для трансформации разработки ИИ в различных областях.
За кулисами: сила ограниченного декодирования
Подход OpenAI сочетает обучение модели с детерминированной инженерной техникой, известной как ограниченное декодирование. Преобразуя предоставленную схему JSON в контекстно-свободную грамматику (CFG), модель ограничивается генерацией токенов, которые соответствуют правилам схемы. Это динамическое ограничение обеспечивает создание допустимых выходных данных JSON, минимизируя ошибки.
Скачок вперед в надежности ИИ
Structured Outputs представляет собой значительный скачок в повышении надежности и удобства использования API OpenAI. Предоставляя разработчикам возможность детального контроля над структурами вывода, OpenAI прокладывает путь новому поколению надежных и надежных приложений ИИ.