OpenAI API 5: как подключить GPT-5 и отправить первый запрос

В этой статье

Чтобы подключить GPT-5 к небольшому приложению, нужно пройти четыре границы: получить API-ключ, передать его процессу через переменную окружения, установить официальный SDK и отправить запрос через Responses API. Ниже — минимальный путь на Python, который можно проверить за несколько минут.

Что понадобится

Нужны аккаунт OpenAI с доступом к API, установленный Python и API-ключ. Создайте ключ в панели API OpenAI. Не записывайте его в исходный код, не коммитьте в репозиторий и не вставляйте в команду, которая может попасть в историю shell.

Передайте ключ текущей сессии терминала.

Linux или macOS:

export OPENAI_API_KEY="ваш_ключ"

Windows PowerShell:

$env:OPENAI_API_KEY = "ваш_ключ"

В статье показан только шаблон: реальное значение ключа не публикуйте в issue или логе CI. Для постоянной конфигурации используйте секреты среды разработки или менеджер секретов.

Подписка ChatGPT и OpenAI API — разные способы доступа. Наличие подписки ChatGPT само по себе не создаёт переменную OPENAI_API_KEY и не заменяет API-ключ в приложении: учётные данные и доступ к API настраиваются отдельно.

Установка официального SDK

Создайте виртуальное окружение и установите пакет openai.

Linux или macOS:

python -m venv .venv
source .venv/bin/activate
python -m pip install -U openai

Windows PowerShell:

py -m venv .venv
.\.venv\Scripts\Activate.ps1
py -m pip install -U openai

Флаг -U устанавливает доступную на момент запуска версию пакета. После успешной проверки зафиксируйте получившуюся версию в lock-файле проекта. Номер версии в инструкции заранее не указан: он зависит от текущего релиза SDK.

Первый запрос к GPT-5

Создайте файл first_request.py:

from openai import OpenAI


client = OpenAI()

response = client.responses.create(
    model="gpt-5",
    input="Ответь одной короткой фразой: зачем приложению API?",
)

print(response.output_text)

Клиент OpenAI() читает OPENAI_API_KEY из окружения. Вызов responses.create отправляет строковый input в Responses API, а response.output_text возвращает готовый текст без ручного обхода массива выходных элементов. Этот пример соответствует принципу из официального quickstart OpenAI.

Запустите файл из того же окружения, в котором задали ключ:

python first_request.py

Успешная проверка — непустая строка в терминале, например короткое объяснение роли API. Точный текст заранее не фиксируйте: модель может сформулировать ответ по-разному. Проверяйте, что запрос дошёл до модели и приложение смогло прочитать output_text.

Если Python в проекте не используется, альтернативный запрос через curl разобран в отдельной инструкции по OpenAI API. Здесь основной маршрут — официальный Python SDK.

Как локализовать ошибку

Сначала проверьте, видит ли текущий процесс переменную окружения. Сам ключ выводить не нужно.

Linux или macOS:

python -c 'import os; print("OPENAI_API_KEY set:", bool(os.getenv("OPENAI_API_KEY")))'

Windows PowerShell:

py -c "import os; print('OPENAI_API_KEY set:', bool(os.getenv('OPENAI_API_KEY')))"

Если результат False, ключ задан в другой вкладке терминала, не активен после перезапуска или приложение запускается из другого окружения. Исправьте это и повторите запрос.

Если переменная есть, но API возвращает ошибку авторизации, проверьте, что скопирован именно API-ключ — без лишних кавычек и пробелов — и что он не был отозван. Не вставляйте его в код как временный обход: секрет легко останется в Git-истории или трассировке исключения.

Ошибка с моделью означает другую границу. Проверьте написание идентификатора gpt-5 и доступность модели для используемого API-проекта. Не подменяйте его названием из пользовательского интерфейса ChatGPT: имена моделей в приложении и API могут различаться.

Для локальной диагностики можно временно добавить обработчик исключения, не печатающий секреты:

from openai import OpenAI


client = OpenAI()

try:
    response = client.responses.create(
        model="gpt-5",
        input="Проверь соединение одним словом: OK",
    )
    print(response.output_text)
except Exception as error:
    print(f"OpenAI API request failed: {type(error).__name__}: {error}")

В рабочем приложении обработчик лучше разделить по типам ошибок SDK и вести собственные логи без содержимого ключа и пользовательских данных.

Что выбрать после проверки

Для первого теста gpt-5 удобен тем, что пример напрямую соответствует задаче. В каталоге моделей OpenAI рядом с GPT-5 представлены варианты gpt-5 mini и gpt-5 nano. Выбор зависит от требований к качеству, скорости и стоимости; имя модели лучше вынести в конфигурацию, а не размазывать по исходникам. Цены, лимиты и гарантии доступности здесь не фиксируются: они требуют отдельной актуальной проверки.

Если нужна пользовательская подписка или другой цифровой сервис, каталог Amber Market можно использовать отдельно для знакомства с такими предложениями. Это не пополнение баланса OpenAI API: API-ключ и доступ к API оформляются у OpenAI. Для заказов Amber Market подтверждена оплата через СБП на условиях выбранной услуги.

Минимальная схема подключения после проверки не меняется: секрет остаётся в окружении, клиент создаётся без явной передачи ключа в коде, запрос идёт через Responses API, а результат читается из output_text. Сначала добейтесь этого короткого прохода, затем добавляйте промпты, таймауты, повторные попытки и хранение ответа. Иначе будет трудно понять, сломалась интеграция или уже ваша бизнес-логика.

Источники

Есть следующая задача?Ещё по теме «Работа с API» →