Cloudflare AI: старые провайдеры ЗАМОРОЗИЛИ, а переезд на createAI роняет вызов из-за ОДНОГО дефиса

Артур Хорошев
Артур Хорошев CEO Maya AI · Основатель «Ковчег»
Опубликовано:
Иллюстрация переезда со старых замороженных пакетов Cloudflare AI на новый инструмент createAI со знаком бета-версии

Если ваш сервис обращается к нейросетям через инфраструктуру Cloudflare и использует пакеты workers-ai-provider или ai-gateway-provider, прямо сегодня рабочие скрипты не остановятся. Компания не отключала серверы 21 октября: она заморозила развитие обеих библиотек и пометила их устаревшими. Все новые функции и поддержку свежих моделей теперь добавляют только в единый инструмент createAI внутри пакета agents. Но при попытке сразу переписать код разработчика ждут неприятные сюрпризы: сама замена официально носит статус бета-версии, поиск по базе знаний в неё вообще не попал, а одна привычная чёрточка вместо точки в названии модели роняет запрос ещё до отправки.

Что именно изменилось 21 октября и почему старый код пока жив

До недавнего времени подключение языковых моделей в Cloudflare делилось на две библиотеки: workers-ai-provider запускал модели на железе самой компании, а ai-gateway-provider вёл запросы к внешним сервисам вроде OpenAI и Anthropic через шлюз AI Gateway для кэша и контроля расходов. Двадцатого октября в npm вышли workers-ai-provider 4.0.1 и ai-gateway-provider 4.0.2 с пометкой об устаревании, а 21 октября в журнале изменений Cloudflare объявили о заморозке: старый код продолжает работать, но новые функции появятся только в createAI.

При переезде важно не потерять поиск по документам. Раньше функция createAISearch жила внутри workers-ai-provider, но в createAI её не перенесли. Для поиска теперь ставят отдельный действующий пакет ai-search-provider и вызывают createAISearchNamespace.

Таблица замены вызовов createWorkersAI, createAiGateway и createAISearch в журнале изменений Cloudflare от 21 октября 2026 года
Официальная шпаргалка Cloudflare от 21 октября: вызовы моделей и шлюза объединяются в createAI, а поиск уходит в createAISearchNamespace.

Где при переезде на createAI ломается вызов модели

Новый инструмент подключается из модуля agents/models/ai-sdk и требует рядом установленных пакетов ai седьмой версии и @ai-sdk/provider четвёртой версии. Главная хитрость, на которой легко споткнуться при замене старых вызовов, кроется в способе записи имени модели. В документации провайдера для AI SDK жёстко ограничены три формата текстовых строк: модели самой площадки через префикс @cf/…, динамические маршруты dynamic/… и модели из каталога шлюза в формате провайдер/модель. Любая строка, не попавшая в эти три шаблона, мгновенно вызывает ошибку типа TypeError.

Подвох в том, что каталог шлюза и сами создатели нейросетей иногда пишут названия одних и тех же версий по-разному. Документация приводит показательный пример: строковый вызов anthropic/claude-opus-5.5 через точку сработает штатно, а привычная запись через дефис anthropic/claude-opus-5-5 приведёт к отказу. При этом, если вы решите подключить официальную библиотеку поставщика @ai-sdk/anthropic и передать в createAI не текстовую строку, а готовый программный объект модели, там потребуется как раз вариант с дефисом — claude-opus-5-5. Перепутать эти два способа записи при копировании старого кода проще простого.

Меняются и мелкие названия настроек в зависимости от того, где именно крутится ваш скрипт. Внутри облачного сценария Worker достаточно заменить старый вызов на createAI({ binding: env.AI }). Но если вы вызываете нейросеть с внешнего сервера по идентификатору аккаунта, параметр apiKey превращается в apiToken, а имя шлюза нужно передавать в поле gateway вместо прежнего id. Кроме того, при оплате внешних нейросетей через единый счёт Cloudflare (Unified Billing) на самом шлюзе обязательно должна быть включена проверка доступа — иначе запрос вернётся с кодом ошибки 2049.

Практические разборы таких обновлений и рабочих связок для автоматизации мы регулярно публикуем в нашем Telegram-канале.

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

Полноценную замену двух прежних пакетов разработчики собрали в релизе agents версии 0.29.0, закрыв задачу по выравниванию возможностей. Но внутренняя механика отказоустойчивости в createAI устроена иначе, чем в прежнем универсальном шлюзе, и об этом стоит знать до обновления боевых сервисов.

Когда вы задаёте список запасных моделей через параметр fallback, переключение между ними теперь происходит внутри самого сценария Worker. Система делает ровно по одной попытке на каждую резервную нейросеть и спасает запрос только в том случае, если основная модель упала до выдачи первого кусочка текста. Как только хотя бы один фрагмент ответа ушёл пользователю, результат считается окончательным: если сбой случится на середине абзаца, переключения на запасную модель уже не будет. К тому же индивидуальный ключ доступа к внешнему поставщику (vendorKey) на резервную модель автоматически не передаётся.

Для потоковой выдачи текста появилась автодокачка: если связь прервалась, провайдер продолжит чтение с места разрыва, но только через привязку binding и только для каталога или динамических маршрутов. После пяти обрывов одного потока или удаления записи на шлюзе попытки прекращаются, а модели @cf/ и объекты вендоров вообще не поддерживают докачку. В голосовых моделях @cf/deepgram/flux требует WebSocket и в обычном вызове бросает CloudflareAIError — вместо него документация рекомендует @cf/deepgram/nova-3 или @cf/openai/whisper-large-v3-turbo.

Стоит ли переписывать рабочий проект прямо сейчас

Главная причина не устраивать срочный ночной переезд видна прямо на странице документации: сразу под словами о том, что createAI заменяет оба старых пакета, висит предупреждение о бета-статусе. Разработчики честно предупреждают, что программный интерфейс провайдера ещё может измениться даже в небольшом промежуточном обновлении, а внутренний файл описания в пакете agents@0.29.0 по-прежнему помечает этот модуль как экспериментальный.

Есть и сопутствующий риск для тех, кто решит заодно обновить весь пакет agents до самой свежей версии 0.30.0, вышедшей 22 октября. Этот релиз переводит хранение сессий встроенного инструмента Pi на схему версии 1.4, причём откатить уже обновлённые сессии обратно на версию 1.3 невозможно. Поэтому безопасная стратегия сейчас — оставить стабильно работающие старые провайдеры в покое до момента, когда вам действительно понадобятся новые модели или функции, а переход на createAI сначала обкатать на отдельном тестовом маршруте с проверкой всех строковых имён. А как вы поступаете, когда инфраструктурный сервис объявляет рабочую библиотеку устаревшей, но взамен предлагает бета-версию: переписываете код сразу или ждёте стабилизации?

Поделиться статьей:
Telegram VK
Ссылка скопирована в буфер обмена
Артур Хорошев
Автор материала

Артур Хорошев

CEO Maya AI · Основатель «Ковчег»

Делюсь реальным опытом по вайбкодингу, автоматизации процессов в Make.com и созданию ИИ-агентов в Cursor. Автор курса и закрытого клуба «Контент-завод».

Клуб практиков

Создавайте контент и сервисы с помощью ИИ-агентов

В клубе «Контент-завод» — 181 практическое занятие, закрытые эфиры дважды в неделю (веду лично), готовые связки Make.com, MCP-серверы и круглосуточная поддержка.