Почему стоит использовать GPT-5
GPT-5 — это очень мощная модель, которую можно использовать для самых разных задач. Например, вы можете использовать её для создания чат-бота-ассистента или для извлечения важных метаданных из документов. Однако у GPT-5 также есть множество различных опций и настроек, о многих из которых вы можете прочитать подробнее в руководстве OpenAI по GPT-5. Я расскажу, как ориентироваться во всех этих опциях и оптимально использовать GPT-5 для вашего случая использования.
Мультимодальные возможности
GPT-5 — это мультимодальная модель, что означает, что вы можете вводить текст, изображения и аудио, а модель будет выводить текст. Вы также можете смешивать разные модальности во входных данных, например, вводя изображение и запрос об этом изображении, и получать ответ. Конечно, ожидается, что вы будете вводить текст из LLM, но возможность ввода изображений и аудио — это очень мощная функция.
Как я уже говорил в предыдущих статьях, VLM чрезвычайно мощны благодаря своей способности напрямую понимать изображения, что обычно работает лучше, чем выполнение OCR на изображении, а затем понимание извлечённого текста. То же самое относится и к аудио. Вы можете, например, напрямую отправить аудиоклип и не только проанализировать слова в клипе, но и высоту тона, скорость речи и так далее. Мультимодальное понимание просто позволяет вам глубже понять данные, которые вы анализируете.
Инструменты
Инструменты — это ещё одна мощная функция, которая у вас есть. Вы можете определить инструменты, которые модель может использовать во время выполнения, что превращает GPT-5 в агента. Примером простого инструмента является функция get_weather():
def get_weather(city: str):
return "Sunny"
Затем вы можете сделать свои пользовательские инструменты доступными для вашей модели вместе с описанием и параметрами для вашей функции:
tools = [
{
"type": "function",
"name": "get_weather",
"description": "Get today's weather.",
"parameters": {
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "The city you want the weather for",
},
},
"required": ["city"],
},
},
]
Важно обеспечить подробное и описательное представление в определениях ваших функций, включая описание функции и параметры для использования функции.
Вы можете определить множество инструментов, доступных для вашей модели, но важно помнить об основных принципах определения инструментов для ИИ:
- Инструменты хорошо описаны.
- Инструменты не перекрываются.
- Сделайте так, чтобы модели было очевидно, когда использовать функцию. Неоднозначность делает использование инструментов неэффективным.
Параметры
Есть три основных параметра, о которых вам следует позаботиться при использовании GPT-5:
- Усилия по рассуждению.
- Многословность.
- Структурированный вывод.
Я опишу различные параметры и подходы к их выбору.
Усилия по рассуждению
Усилия по рассуждению — это параметр, в котором вы выбираете из:
- Минимальные рассуждения по сути делают GPT-5 моделью без рассуждений и должны использоваться для более простых задач, где вам нужны быстрые ответы. Вы можете, например, использовать минимальные усилия по рассуждению в чат-приложении, где вопросы просты для ответа, а пользователи ожидают быстрых ответов.
- Чем сложнее ваша задача, тем больше рассуждений вы должны использовать, хотя вы должны помнить о стоимости и задержках при использовании дополнительных рассуждений. Рассуждения учитываются как выходные токены, и на момент написания этой статьи стоимость составляла 10 долларов США за миллион токенов для GPT-5.
Обычно я экспериментирую с моделью, начиная с наименьших усилий по рассуждению. Если я замечаю, что модель изо всех сил пытается дать качественные ответы, я перехожу на более высокий уровень рассуждений, сначала с минимального на низкий. Затем я продолжаю тестировать модель и смотрю, насколько хорошо она работает. Вы должны стремиться использовать наименьшие усилия по рассуждению с приемлемым качеством.
Вы можете установить усилия по рассуждению с помощью:
client = OpenAI()
request_params = {
"model" = "gpt-5",
"input" = messages,
"reasoning": {"effort": "medium"},
}
client.responses.create(**request_params)
Многословность
Многословность — это ещё один важный настраиваемый параметр, и вы можете выбрать из:
Многословность устанавливает, сколько выходных токенов (исключая здесь токены мышления) должна выводить модель. По умолчанию используется средняя многословность, которая, по словам OpenAI, по сути является настройкой, используемой для их предыдущих моделей.
Предположим, вы хотите, чтобы модель генерировала более длинные и подробные ответы, вы должны установить многословность на высокий уровень. Однако я в основном выбираю между низкой и средней многословностью.
- Для чат-приложений средняя многословность хороша, потому что очень лаконичная модель может заставить пользователей почувствовать, что модель менее полезна (многие пользователи предпочитают больше деталей в ответах).
- Однако для целей извлечения, когда вы хотите вывести только конкретную информацию, например дату из документа, я устанавливаю многословность на низкий уровень. Это помогает гарантировать, что модель ответит только тем, что я хочу (дата), не предоставляя дополнительных рассуждений и контекста.
Вы можете установить уровень многословности с помощью:
client = OpenAI()
request_params = {
"model" = "gpt-5",
"input" = messages,
"text" = {"verbosity": "medium"},
}
client.responses.create(**request_params)
Структурированный вывод
Структурированный вывод — это мощная настройка, которую вы можете использовать, чтобы гарантировать, что GPT-5 будет отвечать в формате JSON. Это снова полезно, если вы хотите извлечь определённые данные, а не другой текст, например дату из документа. Это гарантирует, что модель ответит действительным объектом JSON, который вы сможете затем проанализировать. Вся моя работа по извлечению метаданных использует этот структурированный вывод, поскольку он чрезвычайно полезен для обеспечения согласованности. Вы можете использовать структурированный вывод, добавив ключ «text» в параметры запроса к GPT-5, например, ниже.
client = OpenAI()
request_params = {
"model" = "gpt-5",
"input" = messages,
"text" = {"format": {"type": "json_object"}},
}
client.responses.create(**request_params)
Не забудьте упомянуть «JSON» в своём запросе; в противном случае вы получите ошибку, если будете использовать структурированный вывод.
Загрузка файлов
Загрузка файлов — ещё одна мощная функция, доступная через GPT-5. Ранее я обсуждал мультимодальные возможности модели. Однако в некоторых сценариях полезно загрузить документ напрямую и позволить OpenAI проанализировать документ. Например, если вы ещё не выполнили OCR или не извлекли изображения из документа, вы можете вместо этого загрузить документ напрямую в OpenAI и задать ему вопросы. По опыту, загрузка файлов также выполняется быстро, и вы обычно получаете быстрые ответы, в основном в зависимости от усилий, которые вы прилагаете.
Если вам нужны быстрые ответы из документов и у вас нет времени использовать OCR, загрузка файлов — это мощная функция, которую вы можете использовать.
Недостатки GPT-5
У GPT-5 также есть некоторые недостатки. Основной недостаток, который я заметил во время использования, заключается в том, что OpenAI не делится токенами мышления, когда вы используете модель. Вы можете получить только сводку размышлений.
Это очень ограничивает в живых приложениях, потому что, если вы хотите использовать более высокие усилия по рассуждению (средние или высокие), вы не сможете передавать какую-либо информацию от GPT-5 пользователю, пока модель думает, что приведёт к ухудшению пользовательского опыта. Вариант тогда — использовать более низкие усилия по рассуждению, что приводит к снижению качества выходных данных. Другие поставщики передовых моделей, такие как Anthropic и Gemini, предоставляют токены мышления.
Также было много дискуссий о том, что GPT-5 менее креативен, чем его предшественники, хотя это обычно не является большой проблемой для приложений, над которыми я работаю, поскольку креативность обычно не требуется для использования API GPT-5.
Заключение
В этой статье я предоставил обзор GPT-5 с различными параметрами и опциями, а также рассказал, как наиболее эффективно использовать модель. При правильном использовании GPT-5 — это очень мощная модель, хотя, естественно, у неё есть и некоторые недостатки, главный из которых, с моей точки зрения, заключается в том, что OpenAI не делится токенами рассуждений. При работе над приложениями LLM я всегда рекомендую иметь резервные модели от других поставщиков передовых моделей. Например, вы можете использовать GPT-5 в качестве основной модели, но если она выйдет из строя, вы можете перейти на использование Gemini 2.5 Pro от Google.
