Структурированные выходные данные OpenAI: революционная надежность API

Август 8, 2024

OpenAI анонсировала новаторскую функцию под названием Structured Outputs, направленную на повышение надежности выходных данных модели API. Это нововведение позволяет разработчикам предоставлять определенные схемы JSON, гарантируя, что генерируемые ИИ-выходные данные будут последовательно соответствовать желаемой структуре.

Структурированные выходы OpenAI

Решение проблемы неструктурированных данных

В сфере приложений ИИ преобразование неструктурированных данных в структурированные форматы является ключевым вариантом использования. API OpenAI сыграл важную роль в создании сложных помощников ИИ, способных извлекать данные, отвечать на запросы и выполнять действия. Однако разработчики долго боролись с ограничениями LLM в надежном создании структурированных выходных данных.

Структурированные выходные данные решают эту проблему, обучая модели лучшему пониманию сложных схем и ограничивая их соответствием структурам, определенным разработчиком. Это устраняет необходимость в обходных путях и значительно повышает надежность результатов, генерируемых ИИ.

Непревзойденная надежность: gpt-4o-2024-08-06

Последняя модель OpenAI, gpt-4o-2024-08-06, оснащенная структурированными выходами, может похвастаться безупречной оценкой 100% в оценках соответствия сложной схеме JSON. Это резко контрастирует с оценкой менее 40% ее предшественника, gpt-4-0613, демонстрируя существенное улучшение надежности.

Бесшовная интеграция для разработчиков

OpenAI предлагает два различных способа использования структурированных выходных данных в API:

  1. Вызов функции: Разработчики могут включить структурированные выходные данные, установив strict: true в определении своей функции. Это относится ко всем моделям, совместимым с инструментами, включая gpt-4-0613, gpt-3.5-turbo-0613 и более поздние версии.
  2. Формат ответа: для параметра response_format введена новая опция json_schema, позволяющая разработчикам напрямую предоставлять схему JSON. Это особенно полезно, когда модель структурированно реагирует непосредственно на пользователей и поддерживается новейшими моделями GPT-4o.

Обеспечение безопасности пользователей

Приоритет безопасности, OpenAI разработала структурированные выходы для соответствия существующим протоколам безопасности. Модель сохраняет возможность отклонять небезопасные запросы, а новое значение строки отказа в ответах API позволяет разработчикам программно идентифицировать такие отказы.

Расширение возможностей разработчиков благодаря встроенной поддержке SDK

Python и Node SDK от OpenAI были обновлены для встроенной поддержки структурированных выходов. Это упрощает процесс для разработчиков, автоматически обрабатывая преобразование схемы, десериализацию ответа и разбор отказов.

Разнообразные применения: раскрытие потенциала

Структурированные выходные данные находят применение в различных областях, таких как динамическое создание пользовательских интерфейсов, извлечение структурированных данных из неструктурированных источников и эффективное отделение окончательных ответов от подтверждающих рассуждений. Эти универсальные варианты использования демонстрируют потенциал этой функции для трансформации разработки ИИ в различных областях.

За кулисами: сила ограниченного декодирования

Подход OpenAI сочетает обучение модели с детерминированной инженерной техникой, известной как ограниченное декодирование. Преобразуя предоставленную схему JSON в контекстно-свободную грамматику (CFG), модель ограничивается генерацией токенов, которые соответствуют правилам схемы. Это динамическое ограничение обеспечивает создание допустимых выходных данных JSON, минимизируя ошибки.

Скачок вперед в надежности ИИ

Structured Outputs представляет собой значительный скачок в повышении надежности и удобства использования API OpenAI. Предоставляя разработчикам возможность детального контроля над структурами вывода, OpenAI прокладывает путь новому поколению надежных и надежных приложений ИИ.