Миграция с OpenAI Agents SDK на Agents API: что на самом деле меняется архитектурно?

Переход с OpenAI Agents SDK на Agents API — это не просто переименование импорта. Меняется ключевая архитектурная граница: SDK выполняет цикл агента внутри вашего приложения, тогда как Agents API запускает управляемый Codex-каркас и долговременную сессию на стороне OpenAI. Поэтому вопрос миграции не в том, «какие классы соответствуют каким эндпоинтам?», а в том, «какие обязанности среды выполнения переходят через границу, какие остаются в нашем приложении и какие нужно перепроектировать?»
Миграция — это переход от цикла, принадлежащего приложению, к управляемому каркасу
В Agents SDK один запуск — это ход на уровне приложения. Исполнитель SDK вызывает модель, проверяет вывод, выполняет инструменты, следует передачам управления и продолжает, пока не достигнет точки остановки. Ваш процесс размещает этот цикл и, следовательно, владеет его жизненным циклом.
В Agents API OpenAI запускает каркас. Сессия — это долговременный экземпляр конфигурации агента, который принимает задачи, создаёт события, может приостанавливаться для требуемых действий и может продолжаться во времени. OpenAI управляет сессиями, оркестрацией, сжатием контекста и восстановлением; ваше приложение отправляет работу, обрабатывает функциональные инструменты, получает события и при необходимости управляет самостоятельно размещённой средой выполнения.
Этот сдвиг владения и есть миграция. Всё остальное — синтаксис API, схемы инструментов, обработка событий, идентификаторы сессий — следует из него.
Карта миграции границ среды выполнения
| Аспект | Agents SDK | Цель миграции в Agents API |
|---|---|---|
| Цикл агента | Выполняется в вашем приложении через исполнитель SDK | Выполняется в управляемом каркасе Codex |
| Переиспользуемое определение агента | Объект Agent в коде приложения | Сохранённая или встроенная конфигурация агента с моделью, инструкциями и инструментами |
| Непрерывность диалога / работы | Стратегия сессий SDK, история, продолжение результата или хранилище приложения | Долговременная сессия Agents API |
| Выполнение инструментов | SDK координирует вызовы инструментов в вашей среде выполнения | Каркас запрашивает вызовы функций; ваше приложение возвращает результаты |
| Управление контекстом | Ваша среда выполнения / стратегия сессий SDK | Управляемый контекст сессии, сжатие и восстановление, а также ваши собственные границы данных приложения |
| Передачи управления / специалисты | Примитивы оркестрации SDK | Поведение каркаса / субагентов в Agents API; не предполагайте семантику один к одному |
| Среда выполнения | Среда выполнения вашего приложения или среда, специфичная для инструмента | Необязательная среда, размещённая OpenAI или самостоятельно, привязанная к сессии |
| Потоковая передача | Потоковая передача SDK из запуска | Поток событий сессии Agents API |
| Асинхронный жизненный цикл | Обычно управляется приложением вокруг запуска SDK | Собственные состояния сессии, асинхронные ходы и вебхуки |
| Трассировка / наблюдаемость | Трассировка Agents SDK и журналы приложения | Журналы сессии Agents, события, ходы, вызовы инструментов, субагенты и экспортируемые трассировки |
| Восстановление | Ответственность приложения | Управляемое восстановление каркаса/сессии плюс восстановление, принадлежащее приложению, для внешних систем и самостоятельно размещённых сред |
Что может мигрировать концептуально без изменения владения
Несколько концепций приложения без проблем переживают миграцию, хотя их представление меняется. Модели, инструкции, определения функций в формате JSON-схемы, доступ к MCP, описания инструментов и требования к структурированному выводу по-прежнему относятся к конфигурации агента.
Модель конфигурации Agents API от OpenAI явно определяет агента через модель, инструкции, инструменты, рассуждения и поведение вывода. Функциональные инструменты остаются кодом приложения: каркас запрашивает вызов функции, а ваш обработчик возвращает результат. OpenAI также отмечает, что реализации функций, используемые с Responses API, можно переиспользовать с потоком сессий Agents API.
Что не следует мигрировать один к одному
Опасный шаблон миграции — воссоздать каждую абстракцию среды выполнения SDK внутри Agents API. Это может привести к тому, что вы будете платить за управляемый каркас, но при этом всё ещё будете эксплуатировать теневой каркас в своём приложении.
| Допущение эпохи SDK | Почему прямое копирование рискованно | Вопрос миграции |
|---|---|---|
| Цикл приложения владеет каждым продолжением | Agents API уже владеет циклом каркаса | Какая логика продолжения является продуктовой логикой, а какую следует перенести в управляемую сессию? |
| Локальный объект сессии — основной механизм непрерывности | Сессии Agents API — это долговременные ресурсы с собственным жизненным циклом | Какое состояние принадлежит сессии, а какое — базе данных продукта? |
| Каждое прерывание обрабатывается синхронно | Ходы Agents API асинхронны и могут выдавать состояния action_required | Какие действия требуют вебхуков, воркеров, идемпотентности и возобновляемых обработчиков? |
| Всё выполнение инструментов происходит там, где работает процесс SDK | Обработчики функций и среды выполнения могут быть раздельными | Где на самом деле должен выполняться каждый инструмент? |
| Трассировка SDK — это операционная временная шкала | Agents API предоставляет события сессии, ходы и управляемые трассировки | Какие данные аудита на уровне приложения всё ещё нужны в собственной записи? |
| Объект handoff напрямую соответствует размещённой модели субагента | Семантика среды выполнения может различаться | Какое видимое пользователю владение и поведение специалистов нужно сохранить, а не просто старую структуру классов? |
Шаг 1 — Отделите состояние домена от состояния сессии агента
Прежде чем трогать вызовы API, классифицируйте состояние, которое в настоящее время несёт ваше SDK-приложение. Часть состояния существует только для того, чтобы поддерживать движение диалога агента. Другое состояние — это бизнес-истина: права пользователя, статус проекта, данные заказа, утверждение рабочего процесса, записи клиентов, версии документов, состояние политики или конфигурация приложения.
Вторая категория не должна становиться зависимой от сессии Agents API. Долговечная сессия — это полезная непрерывность для агента; она не заменяет источник истины вашего продукта. Если сессия исчезнет, истечёт, будет пересоздана или изменит реализацию, ваше приложение всё равно должно знать, что является истинным.
Тест на размещение состояния
| Тип состояния | Предпочтительный владелец | Причина | |
|---|---|---|---|
| Непрерывность диалога | |||
| Бизнес-истина | |||
| Долговечный артефакт | |||
| Рабочее временное состояние |
Шаг 2 — Преобразуйте мышление раннера в мышление сессии и событий
SDK-приложения часто мыслят в терминах вызова run и получения результата. Agents API мыслит в терминах долговечной сессии, ходы которой могут выполняться асинхронно. Сообщение в бездействующую сессию запускает работу; сообщение во время активного хода может его направить. Прогресс поступает через потоковую передачу или вебхуки.
Это влияет на архитектуру приложения. Длительная производственная работа не должна зависеть от того, что один HTTP-запрос остаётся активным. Вашему продукту нужны стабильные идентификаторы сессий, сохранение жизненного цикла, проверка вебхуков, идемпотентные обработчики и способ согласовать текущее состояние сессии после перезапуска процесса.
Шаг 3 — Перепроектируйте функциональные инструменты вокруг требуемых действий
Функциональные инструменты остаются важной границей приложения. Вы определяете функцию и её JSON-схему в конфигурации агента. Когда среде выполнения нужна функция, сессия может перейти в состояние требуемого действия. Ваше приложение извлекает требуемое действие, выполняет бизнес-логику и возвращает результат.
Это означает, что реализация функции должна быть безопасной для возобновления. Вебхук может быть доставлен, пока другой рабочий процесс обрабатывает. Сетевой сбой может произойти после внешнего побочного эффекта, но до возврата результата. Поэтому миграция — хороший момент, чтобы добавить идентификаторы вызовов, ключи идемпотентности, явную авторизацию, политики тайм-аутов и записи аудита к значимым инструментам.
Шаг 4 — Решите, где должно происходить выполнение
Agents API разделяет управляемую среду выполнения и среду исполнения. Агент может работать без выделенной среды, в песочнице, размещённой OpenAI, или через самостоятельно размещённую среду, подключённую к сессии.
Это создаёт решение о миграции, которое SDK-приложения, возможно, никогда не принимали явно: какой код должен выполняться как функция приложения, какой код принадлежит песочнице и какие рабочие нагрузки требуют инфраструктуры, которую вы контролируете?
| Потребность | Вероятная граница |
|---|---|
| Вызов существующего внутреннего сервиса через контролируемую бизнес-логику | Функциональный инструмент, обрабатываемый вашим приложением |
| Запуск изолированного кода или работа с временными файлами без частной инфраструктуры | Среда, размещённая OpenAI |
| Доступ к ресурсам частной сети, пользовательскому системному программному обеспечению или контролируемым локальным вычислениям | Самостоятельно размещённая среда |
| Сохранение принятых продуктовых артефактов | Хранилище, принадлежащее приложению, а не только файловая система песочницы |
| Выполнение высокозначимого бизнес-побочного эффекта | Функция приложения с контролем авторизации и аудита |
Шаг 5 — Замените неявное восстановление явной обработкой жизненного цикла
Управляемая среда выполнения обеспечивает восстановление на уровне сессии, но ваше приложение всё ещё владеет каждой внешней зависимостью вокруг неё. Самостоятельно размещённые среды нуждаются в подготовке, переподключении и завершении. Обработчики функций могут давать сбои. Вебхуки могут повторяться. Состояние на стороне продукта может измениться, пока агент бездействует.
Поэтому миграция нуждается в двух моделях восстановления: восстановление среды выполнения агента и восстановление бизнес-операций. Первое всё больше управляется Agents API. Второе остаётся вашей ответственностью.
Шаг 6 — Перестройте наблюдаемость вокруг новой границы трассировки
Сессии Agents API предоставляют события, сохранённую историю, ходы, вызовы инструментов, субагентов и использование токенов. OpenAI также предоставляет журналы сессий на платформе и экспорт трассировок.
Не отказывайтесь от наблюдаемости вашего приложения только потому, что трассировки платформы улучшились. Журналы продукта по-прежнему должны связывать сессию агента с идентичностью пользователя, решением об авторизации, доменным объектом, побочным эффектом инструмента, записью об утверждении и окончательным принятым результатом. Полезная производственная трассировка — это соединение свидетельств среды выполнения агента и свидетельств бизнес-среды выполнения.
Шаг 7 — Сохраните оценки до изменения среды выполнения
Миграция может показаться успешной, потому что новая система по-прежнему выдаёт правдоподобные ответы, но при этом незаметно меняет выбор инструментов, непрерывность сессии, поведение при передаче управления, задержку или восстановление после сбоев. Постройте поведенческий базовый уровень до переключения сред выполнения.
Базовый уровень должен включать репрезентативные задачи, ожидаемые вызовы инструментов, запрещённые действия, точки утверждения, непрерывность состояния, сценарии восстановления и критерии приёмки окончательного вывода. По возможности запускайте старую и новую архитектуры на одних и тех же случаях.
Тест доказательства миграции
Докажите новую среду выполнения до переключения
Что измерять во время миграции
| Измерение | Проверка миграции |
|---|---|
| Успех задачи | Соответствует ли новая среда выполнения тем же или лучшим критериям приёмки? |
| Корректность инструментов | Вызывает ли она нужный инструмент с допустимыми аргументами и авторизацией? |
| Непрерывность состояния | Может ли работа возобновиться между ходами, перезапусками и асинхронными ожиданиями? |
| Восстановление | Что происходит после потери вебхука, сбоя обработчика, отключения среды или тайм-аута? |
| Прослеживаемость | Можно ли каждое значимое действие связать с сессией, пользователем, вызовом инструмента и доменным объектом? |
| Поведение контекста | Сохраняют ли длительные сессии ограничения, не перенося устаревшую истину приложения? |
| Задержка | Как запуск сессии, подготовка среды и многоходовая работа влияют на видимое пользователю время? |
| Стоимость | Что меняется в использовании модели, использовании песочницы, повторяющемся контексте и инфраструктурных операциях? |
| Операционная нагрузка | Какие ранее принадлежавшие приложению обязанности действительно исчезли, а какие лишь переместились? |
Когда ещё не стоит мигрировать
Существующее приложение на Agents SDK не становится плохой архитектурой просто потому, что направление платформы изменилось. OpenAI продолжает поддержку, исправления безопасности, критические исправления ошибок и работу над совместимостью. Если приложение стабильно, хорошо оценено и не имеет заблокированного требования дорожной карты, немедленная миграция среды выполнения может быть не оправдана.
- Требуемая возможность SDK ещё недоступна в Agents API.
- Миграция нарушит критический производственный период, не принося ближайшей пользы.
- Приложение зависит от пользовательской семантики оркестрации, которая не была проверена на управляемом каркасе.
- Переносимость между провайдерами является жёстким требованием, и текущая абстракция SDK существенно ценна.
- Ваша команда ещё не отделила бизнес-состояние от состояния среды выполнения агента, что делает переключение небезопасным.
- Поведение нового Agents API не было протестировано на репрезентативных производственных нагрузках.
Когда миграция становится стратегически важной
Миграция становится более убедительной, когда требования продукта соответствуют управляемому каркасу: долговечная длительная работа, управляемое платформой сжатие и восстановление контекста, более новые возможности среды выполнения агента, выполнение в песочнице, более богатое управление жизненным циклом на хостинге или желание сократить объём кода оркестрации, который эксплуатирует ваше приложение.
Самый сильный сигнал — не «старый SDK функционально завершён». Это «наша дорожная карта теперь зависит от возможностей, естественным домом которых является управляемая среда выполнения Agents API».
Что изменило бы этот ответ?
Стратегия миграции изменится, если OpenAI опубликует инструменты автоматизированной миграции, представит явные слои совместимости, изменит семантику сессий Agents API, расширит или сузит поддержку сред с самостоятельным размещением или изменит политику поддержки Agents SDK.
Она также изменится, если изменятся требования вашего продукта. Простому ассистенту с запросами и ответами может вообще не понадобиться долговечная управляемая среда выполнения. Долго работающий агент для программирования, исследований или операций может получить гораздо больше пользы от модели владения Agents API.
Ограничения
Не существует универсального взаимно однозначного соответствия между SDK и API для миграции, поскольку приложения используют Agents SDK по-разному. Некоторые сильно полагаются на сессии и передачи управления; другие используют его как тонкую обёртку вокруг функциональных инструментов. Правильная миграция зависит от того, какие обязанности ваше приложение фактически несёт сегодня.
Agents API также находится в публичной бета-версии, поэтому детали реализации могут меняться. Рассматривайте принципы распределения ответственности из этой статьи как более долговечные, чем любая отдельная форма эндпоинта.
Заключение
Миграцию с Agents SDK на Agents API лучше всего понимать как перемещение границы среды выполнения агента. Управляемая среда выполнения берёт на себя большую часть цикла, непрерывности сессии, сжатия и восстановления. Ваше приложение должно стать более явным в отношении обязанностей, которые остаются за вами: доменная истина, авторизация, побочные эффекты функций, артефакты, аудируемость и жизненный цикл продукта.
Если миграция оставляет всю старую оркестрационную машинерию на месте и лишь заменяет вызовы SDK на вызовы Agents API, она, вероятно, упустила архитектурную возможность. Цель не в том, чтобы воспроизвести старую среду выполнения поверх новой. Цель в том, чтобы решить, какие обязанности среды выполнения больше не должны принадлежать вашему приложению.
Часто задаваемые вопросы
Миграция с Agents SDK на Agents API
Миграция с Agents SDK на Agents API — это просто переписывание API?
Нужно ли переписывать мои функциональные инструменты?
Следует ли переносить бизнес-состояние в сессию Agents API?
Нужны ли мне вебхуки для Agents API?
Следует ли всем существующим приложениям на Agents SDK мигрировать сейчас?
Глоссарий
Ключевые термины миграции
- Граница среды выполнения
- Разделение ответственности между управляемой платформой средой выполнения агента и средой выполнения, принадлежащей приложению.
- Среда выполнения
- Среда выполнения агента, которая координирует вызовы модели, инструменты, контекст, оркестрацию и продолжение выполнения.
- Сессия
- Долговечный экземпляр Agents API, который хранит конфигурацию агента, разговор и сохранённую работу между ходами.
- Обязательное действие
- Состояние сессии, в котором Agents API нуждается во внешнем вводе, таком как результат функции или подключение к среде, прежде чем работа может продолжиться.
- Среда с самостоятельным размещением
- Среда выполнения, управляемая вашей инфраструктурой и подключённая к управляемой среде выполнения Agents API.
- Тест подтверждения миграции
- Поэтапный метод проверки, который сравнивает новую среду выполнения с поведенческими базовыми линиями, инъекциями отказов, трассировками и обратимыми критериями переключения.
Первоисточники и дополнительное чтение
OpenAI — Agents SDKТекущая политика поддержки: Agents SDK функционально завершён, продолжает поддерживаться, а новые приложения должны начинать с Agents API.
OpenAI — Запуск агентов с помощью Agents SDKДокументация по циклу агента и модели продолжения, принадлежащим приложению на SDK.
OpenAI — Обзор Agents APIОпределяет основные концепции Agents API: агент, среда, сессия, события и элементы.
OpenAI — Архитектура Agents APIОбъясняет границы размещённой среды выполнения, сервера приложения, среды выполнения, размещённой OpenAI, и среды с самостоятельным размещением.
OpenAI — Настройка агентовОпределяет переиспользуемую конфигурацию агента и настройку на уровне сессии.
OpenAI — Запуск и продолжение сессийОписывает долговременные сессии, асинхронные ходы, потоковую передачу и управление.
OpenAI — Функции Agents APIОпределение функции-инструмента и граница обработчика приложения для требуемых результатов функций.
OpenAI — Вебхуки сессийСобытия жизненного цикла для асинхронных сессий, требуемые действия и подключения к самостоятельно размещённым средам.
OpenAI — Наблюдаемость и использование Agents APIЖурналы сессий, события, ходы, вызовы инструментов, субагенты, трассировки и анализ использования токенов.
Переход с OpenAI Agents SDK на Agents API — это не просто переименование импорта. Меняется ключевая архитектурная граница: SDK выполняет цикл агента внутри вашего приложения, тогда как Agents API запускает управляемый харнесс Codex и долговременную сессию на стороне OpenAI. Поэтому вопрос миграции не в том, «какие классы соответствуют каким эндпоинтам?», а в том, «какие обязанности среды выполнения перемещаются через границу, какие остаются в нашем приложении и какие нужно перепроектировать?»
Миграция — от цикла, принадлежащего приложению, к управляемому харнессу
В Agents SDK один запуск — это ход на уровне приложения. Раннер SDK вызывает модель, проверяет вывод, выполняет инструменты, следует передачам и продолжает, пока не достигнет точки остановки. Ваш процесс размещает этот цикл и, следовательно, владеет его жизненным циклом.
В Agents API харнесс запускает OpenAI. Сессия — это долговременный экземпляр конфигурации агента, который принимает задачи, создаёт события, может приостанавливаться для требуемых действий и может продолжаться во времени. OpenAI управляет сессиями, оркестрацией, сжатием контекста и восстановлением; ваше приложение отправляет работу, обрабатывает функциональные инструменты, получает события и, при необходимости, управляет самостоятельно размещённой средой выполнения.
Этот сдвиг владения и есть миграция. Всё остальное — синтаксис API, схемы инструментов, обработка событий, идентификаторы сессий — следует из него.
Карта миграции границ среды выполнения
| Аспект | Agents SDK | Цель миграции Agents API |
|---|---|---|
| Цикл агента | Выполняется в вашем приложении через раннер SDK | Выполняется в управляемом харнессе Codex |
| Переиспользуемое определение агента | Объект Agent в коде приложения | Сохранённая или встроенная конфигурация агента с моделью, инструкциями и инструментами |
| Непрерывность разговора / работы | Стратегия сессии SDK, история, продолжение результата или хранилище приложения | Долговременная сессия Agents API |
| Выполнение инструментов | SDK координирует вызовы инструментов в вашей среде выполнения | Харнесс запрашивает вызовы функций; ваше приложение возвращает результаты |
| Управление контекстом | Ваша среда выполнения / стратегия сессии SDK | Управляемый контекст сессии, сжатие и восстановление, а также ваши собственные границы данных приложения |
| Передачи / специалисты | Примитивы оркестрации SDK | Поведение харнесса / субагентов в Agents API; не предполагайте взаимно однозначную семантику |
| Среда выполнения | Среда выполнения вашего приложения или среда, специфичная для инструмента | Необязательная среда, размещённая OpenAI или самостоятельно, привязанная к сессии |
| Потоковая передача | Потоковая передача SDK из запуска | Поток событий сессии Agents API |
| Асинхронный жизненный цикл | Обычно управляется приложением вокруг запуска SDK | Собственные состояния сессии, асинхронные ходы и вебхуки |
| Трассировка / наблюдаемость | Трассировка Agents SDK и журналы приложения | Журналы сессий Agents, события, ходы, вызовы инструментов, субагенты и экспортируемые трассировки |
| Восстановление | Ответственность приложения | Управляемое восстановление харнесса/сессии плюс восстановление, принадлежащее приложению, для внешних систем и самостоятельно размещённых сред |
Что может мигрировать концептуально без изменения владения
Несколько концепций приложения без проблем переживают миграцию, хотя их представление меняется. Модели, инструкции, определения функций в формате JSON-схемы, доступ к MCP, описания инструментов и требования к структурированному выводу по-прежнему относятся к конфигурации агента.
Модель конфигурации Agents API от OpenAI явно определяет агента через модель, инструкции, инструменты, рассуждения и поведение вывода. Функциональные инструменты остаются кодом приложения: харнесс запрашивает вызов функции, а ваш обработчик возвращает результат. OpenAI также отмечает, что реализации функций, используемые с Responses API, можно переиспользовать с потоком сессий Agents API.
Что не следует мигрировать один к одному
Опасный шаблон миграции — воссоздать каждую абстракцию среды выполнения SDK внутри Agents API. Это может привести к тому, что вы будете платить за управляемую обвязку, продолжая при этом эксплуатировать теневую обвязку в своём приложении.
| Допущение эпохи SDK | Почему прямое копирование рискованно | Вопрос миграции |
|---|---|---|
| Цикл приложения управляет каждым продолжением | Agents API уже управляет циклом обвязки | Какая логика продолжения является продуктовой, а какую следует перенести в управляемую сессию? |
| Локальный объект сессии — основной механизм непрерывности | Сессии Agents API — это долговечные ресурсы с собственным жизненным циклом | Какое состояние принадлежит сессии, а какое — базе данных продукта? |
| Каждое прерывание обрабатывается синхронно | Ходы Agents API асинхронны и могут порождать состояния action_required | Какие действия требуют вебхуков, воркеров, идемпотентности и возобновляемых обработчиков? |
| Всё выполнение инструментов происходит там, где работает процесс SDK | Обработчики функций и среды выполнения могут быть разделены | Где на самом деле должен выполняться каждый инструмент? |
| Трассировка SDK — это операционная временная шкала | Agents API предоставляет события сессии, ходы и управляемые трассировки | Какие данные аудита уровня приложения всё ещё нужны в собственной записи? |
| Объект передачи напрямую соответствует модели размещённого субагента | Семантика среды выполнения может различаться | Какое видимое пользователю владение и поведение специалиста должно быть сохранено, а не просто старая структура классов? |
Шаг 1 — Отделите доменное состояние от состояния сессии агента
Прежде чем трогать вызовы API, классифицируйте состояние, которое в настоящее время несёт ваше приложение на SDK. Часть состояния существует только для того, чтобы поддерживать движение разговора агента. Другое состояние — это бизнес-истина: права пользователя, статус проекта, данные заказа, утверждение рабочего процесса, записи клиентов, версии документов, состояние политики или конфигурация приложения.
Вторая категория не должна становиться зависимой от сессии Agents API. Долговечная сессия — это полезная непрерывность для агента; она не является заменой источника истины вашего продукта. Если сессия исчезнет, истечёт, будет перестроена или изменит реализацию, ваше приложение всё равно должно знать, что является истинным.
Тест на размещение состояния
| Тип состояния | Предпочтительный владелец | Причина | |
|---|---|---|---|
| Непрерывность разговора | |||
| Бизнес-истина | |||
| Долговечный артефакт | |||
| Рабочее черновое состояние |
Шаг 2 — Преобразуйте мышление раннера в мышление сессий и событий
Приложения на SDK часто мыслят в терминах вызова run и получения результата. Agents API мыслит в терминах долговечной сессии, ходы которой могут выполняться асинхронно. Сообщение в бездействующую сессию запускает работу; сообщение во время активного хода может его направлять. Прогресс поступает через потоковую передачу или вебхуки.
Это влияет на архитектуру приложения. Длительная производственная работа не должна зависеть от того, что один HTTP-запрос остаётся активным. Вашему продукту нужны стабильные идентификаторы сессий, сохранение жизненного цикла, проверка вебхуков, идемпотентные обработчики и способ согласовать текущее состояние сессии после перезапуска процесса.
Шаг 3 — Перепроектируйте функциональные инструменты вокруг требуемых действий
Функциональные инструменты остаются важной границей приложения. Вы определяете функцию и её JSON-схему в конфигурации агента. Когда обвязке нужна функция, сессия может перейти в состояние action-required. Ваше приложение извлекает требуемое действие, выполняет бизнес-логику и возвращает результат.
Это означает, что реализация функции должна быть безопасной для возобновления. Вебхук может быть доставлен, пока другой воркер выполняет обработку. Сетевой сбой может произойти после внешнего побочного эффекта, но до возврата результата. Поэтому миграция — хороший момент, чтобы добавить идентификаторы вызовов, ключи идемпотентности, явную авторизацию, политики тайм-аутов и записи аудита к значимым инструментам.
Шаг 4 — Решите, где должно происходить выполнение
Agents API разделяет управляемую обвязку и среду выполнения. Агент может работать без выделенной среды, в песочнице, размещённой OpenAI, или через самостоятельно размещённую среду, подключённую к сессии.
Это создаёт решение о миграции, которое приложения на SDK, возможно, никогда не принимали явно: какой код должен выполняться как функция приложения, какой код принадлежит песочнице и какие рабочие нагрузки требуют инфраструктуры, которую вы контролируете?
| Потребность | Вероятная граница |
|---|---|
| Вызов существующего внутреннего сервиса через контролируемую бизнес-логику | Функциональный инструмент, обрабатываемый вашим приложением |
| Запуск изолированного кода или работа с временными файлами без частной инфраструктуры | Среда, размещённая OpenAI |
| Доступ к ресурсам частной сети, пользовательскому системному ПО или контролируемым локальным вычислениям | Самостоятельно размещённая среда |
| Сохранение принятых продуктовых артефактов | Хранилище, принадлежащее приложению, а не только файловая система песочницы |
| Выполнение бизнес-побочного эффекта с высоким влиянием | Функция приложения с контролем авторизации и аудита |
Шаг 5 — Замените неявное восстановление явной обработкой жизненного цикла
Управляемая среда обеспечивает восстановление на уровне сессии, но ваше приложение по-прежнему отвечает за каждую внешнюю зависимость вокруг неё. Самостоятельно размещённые среды требуют подготовки, переподключения и завершения работы. Обработчики функций могут давать сбои. Вебхуки могут повторяться. Состояние на стороне продукта может измениться, пока агент бездействует.
Поэтому миграция требует двух моделей восстановления: восстановление среды выполнения агента и восстановление бизнес-операций. Первое всё больше управляется Agents API. Второе остаётся вашей ответственностью.
Шаг 6 — Перестройте наблюдаемость вокруг новой границы трассировки
Сессии Agents API предоставляют события, сохранённую историю, ходы, вызовы инструментов, субагентов и использование токенов. OpenAI также предоставляет журналы сессий на платформе и экспорт трассировок.
Не отказывайтесь от наблюдаемости вашего приложения только потому, что трассировки платформы улучшились. Журналы продукта по-прежнему должны связывать сессию агента с идентификацией пользователя, решением об авторизации, доменным объектом, побочным эффектом инструмента, записью об одобрении и окончательным принятым результатом. Полезная производственная трассировка — это соединение доказательств среды выполнения агента и доказательств бизнес-среды выполнения.
Шаг 7 — Сохраните оценки перед изменением среды выполнения
Миграция может показаться успешной, потому что новая система по-прежнему выдаёт правдоподобные ответы, но при этом незаметно меняет выбор инструментов, непрерывность сессии, поведение при передаче, задержку или восстановление после сбоев. Постройте поведенческую базовую линию перед переключением сред выполнения.
Базовая линия должна включать репрезентативные задачи, ожидаемые вызовы инструментов, запрещённые действия, точки одобрения, непрерывность состояния, сценарии восстановления и критерии приёмки окончательного вывода. По возможности запускайте старую и новую архитектуры на одних и тех же случаях.
Тест доказательства миграции
Докажите новую среду выполнения перед переключением
Что измерять во время миграции
| Измерение | Проверка миграции |
|---|---|
| Успех задачи | Соответствует ли новая среда выполнения тем же или лучшим критериям приёмки? |
| Корректность инструментов | Вызывает ли она нужный инструмент с допустимыми аргументами и авторизацией? |
| Непрерывность состояния | Может ли работа возобновиться между ходами, перезапусками и асинхронными ожиданиями? |
| Восстановление | Что происходит после потери вебхука, сбоя обработчика, отключения среды или тайм-аута? |
| Прослеживаемость | Можно ли каждое значимое действие связать с сессией, пользователем, вызовом инструмента и доменным объектом? |
| Поведение контекста | Сохраняют ли длительные сессии ограничения, не перенося устаревшую истину приложения? |
| Задержка | Как запуск сессии, подготовка среды и многоходовая работа влияют на видимое пользователю время? |
| Стоимость | Что меняется в использовании модели, использовании песочницы, повторяющемся контексте и инфраструктурных операциях? |
| Операционная нагрузка | Какие ранее принадлежавшие приложению обязанности действительно исчезли, а какие лишь переместились? |
Когда ещё не стоит мигрировать
Существующее приложение на Agents SDK не становится плохой архитектурой просто потому, что направление платформы изменилось. OpenAI продолжает поддержку, исправления безопасности, критических ошибок и работу над совместимостью. Если приложение стабильно, хорошо оценено и не имеет заблокированного требования дорожной карты, немедленная миграция среды выполнения может быть не оправдана.
- Требуемая возможность SDK ещё недоступна в Agents API.
- Миграция нарушит критический производственный период, не принося ближайшей пользы.
- Приложение зависит от пользовательской семантики оркестрации, которая не была проверена на управляемой среде.
- Переносимость между поставщиками является жёстким требованием, и текущая абстракция SDK существенно ценна.
- Ваша команда ещё не отделила бизнес-состояние от состояния среды выполнения агента, что делает переключение небезопасным.
- Поведение нового Agents API не было протестировано на репрезентативных производственных нагрузках.
Когда миграция становится стратегически важной
Миграция становится более убедительной, когда требования продукта соответствуют управляемой среде выполнения: долговременная работа, управляемое платформой сжатие и восстановление контекста, новые возможности агентной среды выполнения, изолированное выполнение, более богатое управление жизненным циклом на хостинге или желание сократить объём кода оркестрации, который эксплуатирует ваше приложение.
Самый сильный сигнал — не «старый SDK функционально завершён». Это «наш план развития теперь зависит от возможностей, естественным домом для которых является управляемая среда выполнения Agents API».
Что могло бы изменить этот ответ?
Стратегия миграции изменилась бы, если бы OpenAI опубликовала автоматизированные инструменты миграции, ввела явные слои совместимости, изменила семантику сессий Agents API, расширила или сузила поддержку самостоятельно размещаемых сред или изменила политику поддержки Agents SDK.
Она также изменилась бы, если бы изменились требования вашего продукта. Простому ассистенту запрос-ответ может вообще не понадобиться долговременная управляемая среда выполнения. Долго работающий агент для программирования, исследований или операций может получить гораздо больше пользы от модели владения Agents API.
Ограничения
Не существует универсального взаимно однозначного соответствия миграции от SDK к API, потому что приложения используют Agents SDK по-разному. Некоторые сильно полагаются на сессии и передачи; другие используют его как тонкий запускатель вокруг функциональных инструментов. Правильная миграция зависит от того, какие обязанности ваше приложение фактически несёт сегодня.
Agents API также находится в публичной бета-версии, поэтому детали реализации могут меняться. Относитесь к принципам владения в этой статье как к более долговечным, чем любая отдельная форма конечной точки.
Заключение
Миграцию с Agents SDK на Agents API лучше всего понимать как перемещение границы среды выполнения агента. Управляемая среда выполнения берёт на себя большую часть цикла, непрерывности сессии, сжатия и восстановления. Ваше приложение должно стать более явным в отношении обязанностей, которые остаются за ним: доменная истина, авторизация, побочные эффекты функций, артефакты, аудируемость и жизненный цикл продукта.
Если миграция оставляет всю старую машинерию оркестрации на месте и лишь заменяет вызовы SDK на вызовы Agents API, она, вероятно, упустила архитектурную возможность. Цель не в том, чтобы воспроизвести старую среду выполнения поверх новой. Цель — решить, какие обязанности среды выполнения больше не должны принадлежать вашему приложению.
Часто задаваемые вопросы
Миграция с Agents SDK на Agents API
Миграция с Agents SDK на Agents API — это просто переписывание API?
Нужно ли переписывать мои функциональные инструменты?
Следует ли переносить бизнес-состояние в сессию Agents API?
Нужны ли мне вебхуки для Agents API?
Должны ли все существующие приложения на Agents SDK мигрировать сейчас?
Глоссарий
Ключевые термины миграции
- Граница среды выполнения
- Разделение ответственности между управляемой платформой средой выполнения агента и средой выполнения, принадлежащей приложению.
- Среда выполнения
- Среда выполнения агента, которая координирует вызовы модели, инструменты, контекст, оркестрацию и продолжение выполнения.
- Сессия
- Долговременный экземпляр Agents API, который хранит конфигурацию агента, разговор и сохранённую работу между ходами.
- Требуемое действие
- Состояние сессии, в котором Agents API нуждается во внешнем вводе, таком как результат функции или подключение к среде, прежде чем работа может продолжиться.
- Самостоятельно размещаемая среда
- Среда выполнения, управляемая вашей инфраструктурой и подключённая к управляемой среде Agents API.
- Тест доказательства миграции
- Поэтапный метод проверки, который сравнивает новую среду выполнения с поведенческими базовыми линиями, внедрением отказов, трассировками и обратимыми критериями переключения.
Первоисточники и дополнительное чтение
OpenAI — Agents SDKТекущая политика поддержки: Agents SDK функционально завершён, продолжает поддерживаться, а новые приложения должны начинать с Agents API.
OpenAI — Запуск агентов с помощью Agents SDKДокументация по циклу агента, управляемому приложением, и модели продолжения в SDK.
OpenAI — Обзор Agents APIОпределяет основные понятия Agents API: агент, среда, сессия, события и элементы.
OpenAI — Архитектура Agents APIОбъясняет границы размещённого harness, сервера приложения, среды выполнения, размещённой OpenAI, и самостоятельно размещённой среды выполнения.
OpenAI — Настройка агентовОпределяет переиспользуемую конфигурацию агента и настройку на уровне сессии.
OpenAI — Запуск и продолжение сессийДокументирует долговременные сессии, асинхронные ходы, потоковую передачу и управление.
OpenAI — Функции Agents APIОпределение инструмента-функции и граница обработчика приложения для требуемых результатов функции.
OpenAI — Вебхуки сессийСобытия жизненного цикла для асинхронных сессий, требуемые действия и подключения к самостоятельно размещённой среде.
OpenAI — Наблюдаемость и использование Agents APIЖурналы сессий, события, ходы, вызовы инструментов, субагенты, трассировки и анализ использования токенов.
Related Articles

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

Полное руководство по Test DEv Enterprise Stajic.de: архитектура и лучшие практики
Изучите архитектурные принципы, преимущества и технические детали управления средой разработки и тестирования корпоративного уровня с помощью Test DEv Enterprise Stajic.de.

Стоит ли покупать 5G OpenWrt-роутер со старой прошивкой? ZBT Z8102AX как практический пример
Покупка 5G-роутера с OpenWrt на старой прошивке может иметь смысл, но только при определённых условиях. ZBT Z8102AX наглядно демонстрирует обе стороны: железо полезное, модем работает, а роутер оставался стабильным в ходе тестов, однако OpenWrt 21.02, слабая упаковка и неясные пути обновления требуют взвешенного решения о покупке.