Обновлено 05.11.2026

OpenAI API: подключение, два примера и контроль расходов

Главное за 30 секунд

Ключ на сервере, выбранная модель, Responses API, обработка ошибок и безопасное выполнение инструментов.

Что именно подключается

Вы обращаетесь к API OpenAI, а не управляете обычным окном ChatGPT. Для проекта нужно проверить поддерживаемый регион, организацию, доступ к модели и условия расчёта расходов. Не считайте любой тариф приложения полным описанием API-биллинга.

Начинайте с официального quickstart. Примеры ниже учебные: они не выполнялись здесь и не содержат реального ключа. Перед запуском проверьте актуальную версию SDK и условия своего аккаунта.

Подготовка

Создайте ключ в разрешённом проекте и храните его на сервере или в защищённой среде. Не вставляйте в браузерный код и Git. Установите официальный пакет openai для Python или Node.js по действующей инструкции.

Перед запуском задайте OPENAI_API_KEY через безопасный механизм среды, а OPENAI_MODEL заполните доступным идентификатором из каталога. Установите бюджет и уведомления. В отладку не выводят секрет и закрытый вход.

Минимальный Python

import os
from openai import OpenAI

client = OpenAI()
response = client.responses.create(
    model=os.environ["OPENAI_MODEL"],
    input="Объясни, чем факт отличается от предположения.",
    max_output_tokens=120,
)
print(response.output_text)

Минимальный Node.js

import OpenAI from "openai";

const client = new OpenAI();
const model = process.env.OPENAI_MODEL;
if (!model) throw new Error("Задайте OPENAI_MODEL");
const response = await client.responses.create({
  model,
  input: "Объясни, чем факт отличается от предположения.",
  max_output_tokens: 120,
});
console.log(response.output_text);

Успешный текстовый ответ проверяет только базовый запрос. Он не доказывает готовность бота к рабочей нагрузке, безопасной обработке данных или внешним действиям.

Контекст и параметры

Историю разговора храните с учётом требований к данным. Передавайте только нужный контекст или используйте предусмотренный API-механизм состояния. Не считайте память бесконечной и бесплатной.

Поддержка параметров зависит от модели. Инструкция задаёт задачу и границы, ограничение вывода помогает контролировать объём, но не заменяет проверку. Не копируйте параметры старой модели без сверки.

Инструменты и расходы

Вызов функции является запросом на действие. Приложение проверяет аргументы, права и актуальное состояние, затем решает, выполнять ли его. Модель не получает право на оплату или запись только потому, что вы описали инструмент.

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

Проверка до рабочего подключения

Сначала убедитесь, что окружение читает настройки без вывода секретов. Для пробного запроса используйте открытый текст и небольшой допустимый объём. При ошибке сохраните код и идентификатор, а не публикуйте весь запрос с ключом.

Затем задайте ограничение расходов и проверьте, кто получает предупреждение. Добавьте сценарий недоступной модели: приложение должно сообщить о проблеме и не подставлять случайную другую модель без согласованного правила.

Для инструмента записи начните с режима без изменения данных. Проверьте аргументы и сопоставьте их с ожидаемыми. Потом отдельно испытайте повтор события и потерю ответа после действия. Прежде чем повторить запись, нужно узнать, создана ли она уже. Наконец, проверьте журнал и порядок удаления данных. Эти шаги относятся к вашему приложению и не выполняются автоматически успешным ответом SDK.

Ошибки и приёмка

Разделяйте неверный запрос, аутентификацию, права, квоты и временный отказ. Для повторов нужны ограничение и задержка, а для внешнего действия проверка фактического состояния. Журнал сохраняет идентификатор без лишних секретов.

Проверьте обычный запрос, неизвестный факт, превышение лимита и отказ зависимости. Связку можно спроектировать через контакты агентства.

Разберём задачу
твоего бизнеса.

Что команда делает вручную и что хочется изменить. Можно описать своими словами.

Написать в Telegram

Опиши задачу — свяжемся выбранным способом.

Для Telegram укажи @username, для email адрес почты. Для звонка выбери телефон.

Бесплатный разбор · 30 минут

Разберём ваш процесс на ZOOM-созвоне

Покажем, где ИИ снимет ручную работу, рассчитаем выгоду и обсудим состав внедрения.

Опиши задачу — свяжемся выбранным способом.

Для Telegram укажи @username, для email адрес почты. Для звонка выбери телефон.

Или напишите напрямую: Telegram

Бесплатный разбор