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

от автора

В июле OpenAI выпустила новую линейку моделей, в конце месяца дважды поменяла цены, а на осень назначила отключение Assistants API, Videos API и всего поколения GPT-4. Мы переподключали под эти изменения свои сервисы и по ходу сверяли каждый шаг с документацией. Заодно посмотрели, сколько русскоязычных руководств успело устареть — оказалось, почти все, включая августовские.

Заводим аккаунт и прячем ключ

На входе почта и телефон, на выходе строка вида sk-proj-…, которую вы подставите в код. Между ними OpenAI намеренно развёл три сущности: аккаунт, организацию и проект. Ключ выдаётся не лично вам, а проекту, и от этого зависит, по какому счёту пойдут расходы и какие лимиты применятся к запросу.

Регистрируетесь на платформе, подтверждаете почту и телефон. Внутри аккаунта создаётся организация, внутри неё дефолтный проект. Дальше идёте в раздел API keys и жмёте создание ключа.

Ключ показывается один раз

Строка целиком видна только на том экране, где вы её создали. Ушли со страницы — вернуть уже нельзя, в списке останется огрызок вида sk-proj-…a4Kf, по которому ключ можно опознать и отозвать. Если не сохранили, то удаляйте и создавайте новый.

Мы у себя пришли к тому же поведению и получили за него порцию недовольства. Один из наших пользователей писал, что скрывать ключ бессмысленно, раз тот, кто может его посмотреть, может и создать новый, а неудобства при работе с трёх машин вполне реальные. Возразить тут почти нечего, кроме одного: угнать ключ из открытого личного кабинета, не получая полного доступа к аккаунту, — вполне рабочий сценарий, и ради него стоит потерпеть.

Кладите ключ в переменную окружения, а не в код:

export OPENAI_API_KEY="sk-proj-..."

Официальные SDK читают OPENAI_API_KEY сами, поэтому в коде вы ключ вообще не упоминаете:

from openai import OpenAIclient = OpenAI()  # ключ подхватится из окружения

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

В коде и логах вы увидите префиксы sk-proj-, sk-svcacct- и sk-admin-. Отдельной страницы документации с этой классификацией у OpenAI нет — префиксы наблюдаемы на практике, а не задокументированы. Если строите на них парсинг, закладывайтесь на то, что они поменяются.

Зачем отдельный проект под каждое приложение

Ключи утекают в публичные репозитории постоянно. GitHub сканирует коммиты и умеет уведомлять OpenAI, тот отзывает ключ автоматически, но между коммитом и отзывом проходит время, за которое по вашему ключу успевают потратить деньги. Помогает .gitignore с .env и pre-commit хук, который ищет в диффе строки на sk-.

Заводите отдельный проект под каждое приложение и отдельный ключ под каждую среду — один для прода, другой для стейджа, третий для локальной разработки. Тогда при утечке вы отзовёте один ключ и не остановите остальное.

Звучит как занудство до того дня, когда в чате появляется сообщение в духе «парни, а как снести скомпрометированный ключ». У нас такое было, и человеку повезло: ключ снесли за пару минут, потому что он написал сразу. Если у вас на этот ключ завязан прод, стейдж и три ноутбука, вы потушите заодно и их.

С 4 августа 2026 в дашбордах Usage и Costs появилась фильтрация по конкретному ключу, так что теперь видно не только сумму по проекту, но и какой именно ключ внутри него её потратил.

Списка моделей под верификацию не существует

В правилах сказано только, что OpenAI может попросить вас пройти проверку, прежде чем вы получите доступ к отдельным продуктам, функциям, моделям или программам. Единственный обязательный случай назван явно и к моделям отношения не имеет: бизнес-верификацию требуют рекламные продукты.

Публичного списка моделей, которые без верификации не отдаются, нет. Мы прошли по странице моделей и не нашли слова «verification» ни у одной. В статьях 2025 года такой список фигурировал, сейчас формулировку из справки убрали. На практике люди упираются в верификацию на отдельных моделях вроде gpt-image-1, но заранее предсказать, где именно, нельзя.

Верификация бывает двух видов. Персональная требует оригинал непросроченного государственного документа с фотографией. Бизнес-верификация просит юридическое название точно как в реестре, актуальный адрес, налоговый или регистрационный номер и описание деятельности.

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

Responses или Chat Completions

Текст сейчас генерируют через две поверхности. Responses — основной путь, на нём строится всё новое. Chat Completions поддерживается, дедлайна отключения у него нет, но для новых проектов OpenAI рекомендует Responses.

Код на Chat Completions работает и продолжит работать — примеры из прошлогодних туториалов не сломаются, они просто написаны под поверхность, которую больше не развивают. А вот код на Assistants API перестанет отвечать 26 августа 2026, и это уже вопрос ближайшей недели.

Responses хранит контекст на стороне OpenAI, поэтому историю переписки не нужно каждый раз пересобирать и слать целиком. Вы передаёте идентификатор предыдущего ответа, и продолжение цепляется к нему. Рядом работает Conversations API, который заменил Threads из Assistants API.

Если вы собираете ботов в n8n, галочка Use Responses API в ноде модели ломает больше, чем чинит. Мы это видим в чате из недели в неделю: человек подключается по инструкции, нода OpenAI Chat Model начинает валиться с четырёхсотой ошибкой, и половина функционала вроде поиска в интернете отваливается вместе с ней. Лечится снятием галочки. Про это не пишет никто, включая нас.

Адреса

Базовый адрес — https://api.openai.com/v1, дальше идёт имя поверхности. Генерацию, и текстовую, и мультимодальную, вы шлёте в /v1/responses, а диалог, который OpenAI хранит у себя, лежит в /v1/conversations. Старый /v1/chat/completions никуда не делся и продолжает отвечать, но новый код на нём начинать не стоит.

Остальные адреса вы будете дёргать реже. /v1/embeddings считает векторные представления текста, /v1/moderations проверяет контент и не стоит ничего, /v1/batch обрабатывает пакеты со скидкой 50%. Отдельно запомните /v1/models — он отдаёт список моделей, доступных конкретно вам, и им удобно сверяться с календарём отключений, когда дойдёте до последнего раздела.

Минимальный запрос

from openai import OpenAIclient = OpenAI()response = client.responses.create(    model="gpt-5.6-terra",    input="Объясни в двух предложениях, что такое эмбеддинги.")print(response.output_text)

То же через curl:

curl https://api.openai.com/v1/responses \  -H "Authorization: Bearer $OPENAI_API_KEY" \  -H "Content-Type: application/json" \  -d '{    "model": "gpt-5.6-terra",    "input": "Объясни в двух предложениях, что такое эмбеддинги."  }'

Стриминг включается одним флагом:

stream = client.responses.create(    model="gpt-5.6-terra",    input="Напиши план статьи про векторные базы.",    stream=True,)for event in stream:    if event.type == "response.output_text.delta":        print(event.delta, end="", flush=True)

Переезд со старого кода

Миграция не сводится к замене одного метода на другой. Меняется структура запроса — вместо массива messages с ролями приходит input, системный промпт задаётся в instructions. Если у вас накручена своя логика на формат ответа, её придётся переписывать.

Торопиться некуда, пока вы не на Assistants API. Но новые возможности прикручивают к Responses, и разрыв между поверхностями растёт с каждым релизом.

Три модели вместо mini и nano

gpt-5.6-terra из примеров выше — средняя из трёх моделей, которые OpenAI выпустила 9 июля 2026 вместо привычной схемы «модель плюс mini плюс nano». Названия сменились на имена: Sol, Terra и Luna. Это три ступени одного релиза GPT-5.6, а не три разных поколения.

Все три обучены по 16 февраля 2026 года, у каждой окно контекста 1 050 000 токенов и потолок в 128 000 токенов на выход. По этим цифрам они не различаются вообще, вся разница уходит в класс и в прайс. gpt-5.6-sol — фронтир, максимум способностей. gpt-5.6-terra — рабочая лошадь, с неё и стоит начинать. gpt-5.6-luna рассчитана на массовые однотипные задачи, и стоит она соответственно.

Кроме текстовых моделей в каталоге API есть:

  • gpt-image-2 для картинок, вышел 21 апреля 2026 и заменил DALL·E, который удалён из API 12 мая

  • gpt-transcribe — рекомендованная модель для расшифровки записанной речи, $0,0045 за минуту

  • whisper-1 из API не убрали, он стоит $0,006 за минуту и остался под конкретные задачи: пословные и посегментные таймкоды, перевод на английский, субтитры

  • gpt-realtime-2.1 для голосовых диалогов в реальном времени

  • gpt-audio-1.5 для аудио: $2,50 и $10,00 за миллион текстовых токенов, $32,00 и $64,00 за миллион аудиотокенов

  • gpt-4o-mini-tts для синтеза речи: $0,60 за миллион входных текстовых и $12,00 за миллион выходных аудиотокенов

  • text-embedding-3-small за $0,02 и text-embedding-3-large за $0,13 за миллион токенов

  • omni-moderation-latest для проверки контента, бесплатно

  • gpt-5.3-codex под задачи с кодом

Цен на эмбеддинги на общей странице прайса вы не найдёте. Раздела Embeddings там просто нет, цифры опубликованы только на карточках моделей, и в сообществе на это жалуются примерно раз в месяц.

Какую брать

Между Luna и Sol двадцатипятикратная разница по входным токенам. На классификации и извлечении полей Luna отвечает почти так же, как Sol, и платить в двадцать пять раз больше там не за что. Начинайте с Terra и двигайтесь от неё в обе стороны, когда увидите результат на своих данных.

Luna берите на всё, где задача формальная, а объём большой: классификация, извлечение полей, разметка, короткие ответы по шаблону. Sol имеет смысл там, где неверный ответ стоит дороже разницы в тарифе, — сложный анализ, код, длинные цепочки рассуждений, юридические и финансовые тексты.

Кроме модели вы выбираете уровень рассуждения. Раньше их было четыре, теперь шесть: none, low, medium по умолчанию, high, xhigh и max. Чем выше уровень, тем дольше модель думает перед ответом и тем больше токенов тратит.

response = client.responses.create(    model="gpt-5.6-sol",    input="Найди ошибку в этом SQL-запросе: ...",    reasoning={"effort": "high"},)

Sora и Videos API отключают

Sora 2 и Videos API объявлены устаревшими 24 марта 2026, выключат их 24 сентября, а веб-версия и приложение закрылись ещё 26 апреля. Замену в документации не назвали, преемника в API мы не нашли. Купленные кредиты Sora разрешено перенаправить на Codex.

Модели для кибербезопасности, gpt-5.6-cyber и семейство Daybreak, по общей подписке не выдаются. Доступ открывают вручную через программу Trusted Access for Cyber, и OpenAI прямо пишет, что одобрение не автоматическое.

Режимы скорости

Fast mode с 30 июля заменил Priority Processing, работает до 2,5 раз быстрее и стоит вдвое дороже. В коде принимаются оба значения, service_tier: ‘priority’ и service_tier: ‘fast’.

13 августа для Sol анонсировали Ultrafast — до 14 раз быстрее стандартного режима. Цену за него OpenAI не назвала, срок общего доступа тоже. На карточке модели тира Ultrafast нет, доступ пока открыт узкому кругу клиентов. И да, четырнадцать раз — это про скорость, а не про деньги; переносить эту цифру на прайс не надо.

Во сколько это обойдётся за месяц

Входные токены и выходные считают отдельно, каждые по своему тарифу.

30 июля OpenAI снизила цены Luna и Terra на 80% и 20%. Luna подешевела с доллара за миллион входных токенов до двадцати центов. В русскоязычных статьях, включая свежие августовские, до сих пор встречается старый прайс, так что бюджет по ним лучше пересчитать.

Токеном называют кусочек текста — на них модель режет и ваш запрос, и свой ответ. В английском на токен приходится примерно 4 символа, в русском 2–3, потому что кириллица разбивается мельче. Один и тот же смысл на русском стоит дороже, чем на английском.

Стоимость запроса считают так: входные токены умножают на входной тариф, выходные на выходной и складывают.

Красивая формула, только заранее по ней ничего не посчитаешь. Этот разговор у нас повторяется примерно раз в месяц. Человек хочет узнать цену запроса до запроса, а ему объясняют, что даже сама модель не знает, сколько токенов напишет в ответ. Схема, до которой в итоге дошли сами пользователи, звучит так: посчитать токены в промпте и в тексте, который отправляешь, прикинуть нужный объём ответа и накинуть сверху процентов двадцать. Работает, пока задачи однотипные. На запросе «расскажи основы квантовой физики, ответ дай предельно объёмно» двадцать процентов запаса не спасут никого.

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

Порог в 272 тысячи токенов

Если во входе больше 272 000 токенов, тариф меняется для всего запроса целиком: входные дорожают вдвое, выходные — в полтора раза. У Sol это $10,00 за миллион входных и $45,00 за миллион выходных, у Terra — $4,00 и $18,00, у Luna — $0,40 и $1,80.

Миллионное окно позволяет залить в запрос всю базу знаний, и модель её обработает. Счёт за такой запрос придёт по удвоенному тарифу.

Про соблазн большого окна у нас однажды развернулась целая дискуссия. Человек написал программу, которая склеивает все файлы проекта в один большой файл, и кидает его в модель целиком. Ему ответили, что лишний контекст модель только отвлекает и повышает шанс галлюцинаций, а каждый запрос при этом дорожает, иногда кратно. Раньше про деньги в таком споре вспоминали последними. С порогом в 272 тысячи склеенный проект уходит по удвоенному тарифу, и деньги стали первым аргументом.

Теперь платят и за запись в кеш

Раньше в прайсе была одна строка про кешированный вход, теперь их две — чтение из кеша и запись в кеш. Запись тарифицируется по коэффициенту 1,25 к обычному входному тарифу, чтение выходит в десять раз дешевле входа.

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

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

В батче всё вдвое дешевле

Всё, что можно обработать не сразу, в Batch API стоит вдвое дешевле. Окно выполнения одно, 24 часа, других значений параметр не принимает. До 50 000 запросов в пакете, файл до 200 МБ, до 2000 батчей в час, лимиты отдельные от синхронных. Terra в батче стоит доллар за миллион входных вместо двух.

Бот на тысячу диалогов в день

Телеграм-бот, 1000 диалогов в день, в среднем три обмена репликами. Системный промпт 500 токенов, история и вопрос дают около 4000 входных токенов на диалог, ответы около 600 выходных. В день это 4 млн входных и 0,6 млн выходных.

На Terra получается 4 × $2 плюс 0,6 × $12, то есть $15,2 в день и около $456 в месяц. На Luna — 4 × $0,20 плюс 0,6 × $1,20, то есть $1,52 в день и около $46 в месяц.

Если бот отвечает по базе знаний в рамках понятного сценария, Luna справится и обойдётся в десять раз дешевле — $46 против $456 в месяц. Если бот пишет код или разбирает договоры, берите Sol и закладывайте около $1140 в месяц.

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

Арифметика «один запрос — одна единица работы» ломается почти у всех, кто считает бюджет впервые. У одного разработчика на каждый ответ уходит три запроса: сначала классификация, потом выборка из векторной базы, потом сам ответ. По разным моделям набегает от двух до четырёх обращений. Умножайте свою красивую цифру на три и только потом сравнивайте с бюджетом.

Инструменты считают отдельно от токенов

Про инструменты при расчёте забывают чаще всего. Веб-поиск стоит $10 за тысячу вызовов, файловое хранилище — $0,10 за гигабайт в день, Code Interpreter — от $0,03 до $1,92 за сессию, причём со 2 июня 2026 биллинг поминутный с минимумом в пять минут вместо прежних фиксированных двадцати. Региональные эндпоинты с хранением данных в конкретной юрисдикции добавляют 10% к цене для моделей, выпущенных с 5 марта 2026.

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

Предоплата и срок годности кредитов

Модель предоплатная. Вы кладёте деньги на баланс организации, они списываются по мере запросов. Минимальная покупка $5, по умолчанию интерфейс предлагает $10.

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

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

Кредиты сгорают через год

В справке записано, что купленные кредиты истекают через год и не возвращаются. Бесплатные, если они вам достались, списываются раньше платных.

Поэтому годовой бюджет разом на баланс не заливайте. Кладите на квартал и включайте автопополнение с адекватным порогом.

С 22 июля лимит расходов блокирует запросы

22 июля 2026 в API добавили жёсткие лимиты расходов на организацию и на проект. Раньше при превышении бюджета приходило уведомление, а дальше вы тратили сколько хотели. Теперь запросы начинают отбиваться, как только учтённые траты дошли до потолка.

Запишите куда-нибудь, какой лимит поставили. Без этого числа ошибку 429 придётся разбирать вслепую, и разбирать вы её будете долго. У нас похожая механика появилась чуть раньше, и первым же вопросом в чате стало «как увеличить лимит, не могу найти» — человек выставил дневной потолок, упёрся в него, и у него встал ИИ-агент. Со стороны кода это выглядит как проблема с моделью, а не с бухгалтерией.

Заодно проверьте, что виджет расхода и реальный счёт показывают одно и то же. Мы на этом обожглись: у части пользователей расход по ключу и общая статистика расходились, запросы блокировались по одному числу, а в кабинете светилось другое. Пока чинили, людям приходилось верить общей статистике. Если у вас цифры не бьются, не гадайте — пишите в поддержку сразу.

Что означает 429

У аккаунта два независимых ограничителя, которые часто путают. Rate limits задают частоту — сколько запросов и токенов в минуту вам разрешено. Spend limits задают потолок расходов. Упереться можно в любой, и в обоих случаях придёт 429.

Различить их можно по дашборду. Если израсходованная за месяц сумма подошла к установленному потолку, дело в лимите расходов, а не в частоте запросов.

Тир повышается автоматически по мере того, как вы платите. Пороги не менялись с 2024 года:

Тир

Оплачено суммарно

Лимит расходов в месяц

Free

$100

Tier 1

$5

$100

Tier 2

$50

$500

Tier 3

$100

$1 000

Tier 4

$250

$5 000

Tier 5

$1 000

$200 000

Лимиты частоты для Sol и Terra:

Тир

Запросов в минуту

Токенов в минуту

Tier 1

500

500 000

Tier 2

5 000

1 000 000

Tier 3

5 000

2 000 000

Tier 4

10 000

4 000 000

Tier 5

15 000

40 000 000

Чтобы получить второй тир, надо суммарно оплатить пятьдесят долларов, и лимит запросов после этого вырастает в десять раз. Если вы упёрлись в потолок на Tier 1, дешевле пополнить баланс, чем переписывать архитектуру под очередь.

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

Коды ошибок

401 означает, что ключ неверный или отозван; идите проверять переменную окружения. 403 приходит, когда модель недоступна вашей организации. Тут смотрите на верификацию и на регион. Пятисотые и 503 просто ретраят, это сбой на стороне OpenAI. За 429 стоит либо частота, либо потолок расходов, так что кроме бэкоффа проверьте ещё и лимит. А insufficient_quota лечится только пополнением баланса.

insufficient_quota приходит с тем же кодом 429, но бэкофф здесь не поможет: ждать нечего, деньги кончились. Различайте их по телу ответа, иначе получите бесконечный цикл ретраев на пустом балансе.

Тело ответа вообще стоит разбирать целиком. Мы у себя ловили ситуацию, когда наружу уходила четырёхсотая, а настоящая 429 от провайдера лежала внутри неё. Если вы работаете через любого посредника, разбирайте вложенную ошибку, а не только HTTP-код.

Ретраи

import randomimport timefrom openai import OpenAI, RateLimitError, APIStatusErrorclient = OpenAI()def ask(prompt, model="gpt-5.6-terra", attempts=5):    for attempt in range(attempts):        try:            return client.responses.create(model=model, input=prompt).output_text        except RateLimitError:            if attempt == attempts - 1:                raise            delay = 2 ** attempt + random.uniform(0, 1)            time.sleep(delay)        except APIStatusError as e:            if e.status_code >= 500 and attempt < attempts - 1:                time.sleep(2 ** attempt)                continue            raise

Разброс в паузе нужен, чтобы клиенты не долбились в API синхронно после общего сбоя.

Россия не в списке

Россия отсутствует в списке стран, которые OpenAI поддерживает. Мы сверились со списком построчно: между Romania и Rwanda строки Russia нет. Ukraine в списке присутствует с пометкой об исключениях, России нет.

Про доступ OpenAI пишет «may result», про оплату — «will result». За доступ из неподдерживаемой страны аккаунт могут заблокировать: «Accessing or offering access to our services outside of the countries and territories listed below may result in your account being blocked or suspended». За оплату картой из неподдерживаемой страны блокируют без всяких «могут»: «Using payment methods outside of our list of supported countries will result in you being blocked from using our services». Блокируют при этом аккаунт целиком, вместе с балансом на нём.

Про VPN

Ни на странице поддерживаемых стран, ни в справочной статье о неподдерживаемых территориях слово VPN не встречается ни разу. Опубликованной политики «за VPN блокируем» у OpenAI нет.

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

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

Где хранятся данные

Региональные эндпоинты доступны в десяти юрисдикциях — США, ЕЭЗ со Швейцарией, Австралия, Канада, Япония, Индия, Сингапур, Южная Корея, Великобритания, ОАЭ. России среди них нет.

Аккаунт зарегистрировать технически можно, а оплатить его так, чтобы не нарушить условия, нельзя. Российская карта в список поддерживаемых платёжных методов не входит, а это основание для блокировки с формулировкой «will».

Меняем провайдера двумя строками

Формат OpenAI стал отраслевым стандартом. Google отдаёт Gemini через OpenAI-совместимый эндпоинт, так же поступают Groq, Azure, Timeweb, Яндекс, локальные Ollama и vLLM. С 1 июня 2026 модели самой OpenAI появились в Amazon Bedrock — тоже через совместимый Responses-эндпоинт.

Базовый адрес задаётся параметром клиента:

from openai import OpenAIclient = OpenAI(    base_url="https://api.example-provider.ru/v1",    api_key="ваш-ключ",)response = client.responses.create(    model="gpt-5.6-terra",    input="Привет",)

Остальной код, библиотеки поверх SDK и фреймворки вроде LangChain продолжают работать без изменений.

Что предлагают агрегаторы

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

Цены с сайтов сервисов на 20.08.2026

Цены с сайтов сервисов на 20.08.2026

У Польза.ai в строке Sol указан тариф Sol Pro — именно он соответствует официальному $5/$30, отдельная позиция «Sol» в каталоге идёт по другому роуту и дешевле.

Наценка внутри одного каталога скачет от модели к модели. AITunnel держит флагманский Sol дешевле остальных четырёх, но на Terra и Luna берёт заметно больше. ProxyAPI дороже по всем трём моделям, зато явно указывает НДС в цене и даёт нативный Anthropic-эндпоинт, на котором без переделок заводится Claude Code. Сравнение по одной модели ничего не покажет — считайте под свой профиль потребления.

Чем придётся заплатить

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

У нас, например, Responses API работает без сохранения состояния. Параметры previous_response_id, conversation и store не поддерживаются, историю диалога надо передавать целиком каждый раз. То есть главное преимущество Responses над Chat Completions через агрегатор не работает, и заголовок этого раздела про две строчки для такого случая слишком оптимистичен. Если ваша логика построена на серверном хранении контекста, переносить её к нам придётся с переписыванием.

Нам ещё справедливо пеняют на скорость. На Gemini-моделях запрос напрямую в роутер отвечает моментально, а через сервис бывает и тридцать секунд. Мы над этим работаем, но обещать, что промежуточное звено будет бесплатным по времени, было бы враньём.

Если компания может легально работать с OpenAI напрямую — юрлицо в поддерживаемой юрисдикции, местная карта, — прямой путь дешевле и без лишнего звена.

Календарь отключений до Нового года

Впереди семь дат, одна уже прошла.

Ближе всего 26 августа, когда выключат Assistants API. Threads вы поменяете на Conversations, Runs пропадут совсем, а код, который дожидался завершения рана, придётся написать заново.

В марте мы наблюдали, как это выглядит для тех, кто календарь не читал. У людей перестают отвечать модели, они приходят с вопросом, что у нас упало, и выясняется, что упало не у нас: OpenAI сняла с поддержки очередную пачку снапшотов. Мы теперь предупреждаем об отключении старых эндпоинтов минимум за месяц, но предупредить о том, что отключает сам OpenAI, мы можем ровно тогда же, когда и вы, — по странице deprecations.

Как проверить свой код

Дёрните /v1/models и сверьте список с таблицей, пометив всё, что попало в правую половину календаря.

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

Между анонсом и отключением OpenAI держит примерно полгода. Assistants API объявили устаревшим 26 августа 2025 и выключают 26 августа 2026, ровно год. Sora анонсировали 24 марта, выключают 24 сентября, шесть месяцев. На такой горизонт можно закладываться.

Новый адрес документации

Раньше она открывалась по адресу platform.openai.com/docs, теперь по developers.openai.com/api/docs. Адрес сменился 5 июня 2026, когда платформа переделала навигацию. Старые ссылки редиректят, но срабатывает это не на всех страницах.

Легко ошибиться и адресом прайса. Страница openai.com/api/pricing показывает тарифы ChatGPT Business и Enterprise, а цены API опубликованы на developers.openai.com/api/docs/pricing. Часть неверных цифр в русскоязычных статьях объясняется именно этой путаницей — мы встретили несколько материалов, где приведены тарифы подписки под видом цен API.

Что из этого стоит унести

Начинайте с Terra. Флагман имеет смысл там, где ошибка обойдётся дороже разницы в тарифе, и таких мест в типичном продукте меньше, чем кажется.

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

Новый код пишите на Responses API, а имя модели держите в конфиге и не разбрасывайте по вызовам.

Календарь отключений повесьте в трекер и заглядывайте на страницу deprecations раз в квартал. Ближайшая дата — 26 августа, дальше до конца года ещё пять.

За 2026 год OpenAI выключила или назначила к выключению DALL·E, Sora, Assistants API, Agent Builder, всё поколение GPT-4 и часть GPT-5. Судя по темпу, в 2027-м история повторится, и разница будет только в том, сколько мест в коде придётся править.

С вопросами, которых нет в статье, пишите в наш чат — разбираем ежедневно.

ссылка на оригинал статьи https://habr.com/ru/articles/1073090/