Claude Code Custom API Endpoint: Third-Party Gateway Setup with Chinese Open-Source Models
Настройка собственного API-эндпоинта Claude Code через третьего поставщика с использованием китайских открытых моделей
Клиент Claude Code может быть настроен для взаимодействия с эндпоинтом, совместимым с Anthropic, вместо прямого использования эндпоинта поставщика. Это позволяет тестировать работу маршрутизации через шлюз, где модели предоставляются через шлюз, включая китайские открытые модели из текущего каталога моделей ECAIX.
Эта инструкция касается работа с совместимостью для поставщика, специфичного для третьих сторон. Официальная документация шлюза Anthropic не поддерживает маршрутизацию Claude Code к моделям, не совместимым с Claude, через шлюз. ECAIX не утверждает, что данный рабочий процесс официально поддерживается Anthropic, и модель, не совместимая с Claude, может не обеспечивать все возможности Claude Code.
Прочтите перед настройкой
Используйте эту инструкцию для понимания конфигурации эндпоинта и тестирования совместимости. Официальная документация Anthropic не поддерживает маршрутизацию Claude Code к моделям, не совместимым с Claude, через шлюз. ECAIX не публиковал утверждение о том, что все возможности Claude Code работают с каждой моделью, не совместимой с Claude. Проверьте условия использования, документацию вашей версии Claude Code, шлюза и поставщика моделей перед использованием рабочего процесса для производственных данных.
Быстрая настройка
Если вы уже понимаете границы совместимости, начните с этого краткого пути:
- Откройте текущий каталог моделей ECAIX и выберите активный идентификатор модели.
- Создайте ключ API ECAIX и храните его вне контроля версий.
- Установите переменную окружения
ANTHROPIC_BASE_URLвhttps://ecaix.com/api/ai/v1/anthropic. - Отправьте диагностическую запрос ниже и запишите статус HTTP.
- Запустите Claude Code в тестовом проекте с режимом только для чтения с флагом
claude -p. - Тестируйте инструменты, потоковый вывод, ограничения контекста и разрешения по отдельности.
Статус валидации на момент публикации
| Площадка | Статус | Граница доказательства |
|---|---|---|
| Публичные идентификаторы моделей | Измерено | Проверено против публичного каталога ECAIX на 2026-10-23 |
| Путь эндпоинта | Измерено | Соответствует опубликованным документам ECAIX, совместимым с Anthropic |
| Прямой запрос API с живым ключом | Не проверено в данной статье | Запустите диагностическую команду с вашим собственным авторизованным ключом |
| Полный сеанс Claude Code | Не проверено в данной статье | Должно быть протестировано против вашей установленной версии Claude Code |
| Вызов инструментов, потоковый вывод, длинный контекст | Не проверено | Тестируйте независимо; совместимость текста не является совместимостью функционала |
Эта таблица намеренно: пример конфигурации не эквивалентен измеренному результату совместимости.
Что изменится в настройке
Настройка состоит из четырёх отдельных частей:
- Claude Code — это клиент, который создаёт задачи по кодированию и отправляет запросы.
- Шлюз, совместимый с Anthropic — принимает запросы на эндпоинте в стиле Anthropic.
- Идентификатор модели — выбирает модель-прототип, предоставляемую через шлюз.
- Ключ API — обеспечивает аутентификацию запроса и определяет учётную запись, квоты и разрешения.
Изменение эндпоинта не превращает несовместимую с Claude модель в модель Claude. Это лишь изменяет, какой совместимый API-интерфейс получает запрос. Использование инструментов, обработка контекста, модели-алиасы, поведение потокового вывода и потоки разрешения могут различаться в зависимости от версии клиента и реализации шлюза.
Перед началом
Для этого требуется:
- Установка Claude Code, поддерживающая конфигурацию эндпоинта через переменные окружения или настройки.
- Ключ API ECAIX.
- Идентификатор модели, который присутствует в текущем каталоге моделей ECAIX.
- Терминал, где можно запустить небольшой тестовый запрос без размещения ключа API в контроле версий.
Каталог моделей изменяется со временем. Перед копированием идентификатора модели в файл конфигурации откройте директорию моделей ECAIX и убедитесь, что модель активна и доступна для стиля API, который вы планируете использовать.
Настройка шлюза
Claude Code хранит настройки в файле ~/.claude/settings.json на многих установках. Точная схема настроек может изменяться, поэтому используйте приведённый ниже шаблон и сравните его с документацией вашей установленной версии.
{
"env": {
"ANTHROPIC_BASE_URL": "https://ecaix.com/api/ai/v1/anthropic",
"ANTHROPIC_API_KEY": "YOUR_ECAIX_API_KEY",
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1",
"CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT": "1"
},
"model": "deepseek-v4.1-flash"
}
Не сохраняйте этот файл в публичном репозитории, если он содержит реальный ключ API. Предпочтительнее использовать локальную переменную окружения, менеджер секретов или механизм аутентификации, рекомендованный вашей установкой Claude Code.
Также можно настроить эндпоинт в тестовой сессии терминала:
export ANTHROPIC_BASE_URL="https://ecaix.com/api/ai/v1/anthropic"
export ANTHROPIC_API_KEY="YOUR_ECAIX_API_KEY"
export ANTHROPIC_MODEL="deepseek-v4.1-flash"
Имена переменных и поддерживаемые настройки конкретной версии клиента могут меняться. Если клиент игнорирует ANTHROPIC_MODEL, используйте поле модели или механизм алиасов модели, описанный в вашей версии. Шлюз всё равно должен распознавать финальный идентификатор модели.
Проверка эндпоинта, совместимого с Anthropic
Перед началом интерактивной сессии кодирования отправьте один небольшой запрос. Это отделит проблемы с эндпоинтом, аутентификацией и идентификатором модели от специфичных поведений Claude Code.
Ниже приведён командный пример, сохраняющий заголовки ответа и тело ответа отдельно, затем выводит статус HTTP. Используйте реальный авторизованный ключ только в локальной оболочке; никогда не вставляйте его в статью, issue или общий лог.
curl -sS -D /tmp/ecaix-anthropic-headers.txt \
-o /tmp/ecaix-anthropic-response.json \
-w '\nHTTP %{http_code}\n' \
"${ANTHROPIC_BASE_URL}/messages" \
-H "x-api-key: ${ANTHROPIC_API_KEY}" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"model": "deepseek-v4.1-flash",
"max_tokens": 128,
"messages": [
{"role": "user", "content": "Reply with one short sentence."}
]
}'
Ожидаемая интерпретация:
200: изучите форму ответа и подтвердите наличие возвращаемых полей модели или использования.401или403: проверьте ключ, заголовки, учётную запись и область разрешения перед изменением запроса.404: проверьте базовую URL, суффикс/messagesи развёртывание эндпоинта.400: уменьшите запрос до минимального валидного тела и проверьте специфичные для модели поля.5xxили тайм-аут: запишите время запроса и тело ответа, затем разделите поведение тайм-аутов шлюза, модели-прототипа и клиента.
Успешный ответ подтверждает, что ключ, эндпоинт, формат запроса и идентификатор модели работали вместе для данного запроса. Это не гарантирует, что все возможности Claude Code будут работать.
Выбор идентификатора модели
Каталог ECAIX содержит семейства моделей от китайских поставщиков. Правильный начальный выбор модели зависит от задачи, а не только от названия модели.
Кодирование и общее разработка
Начните с текущей модели DeepSeek, Qwen, GLM или Seed, способной кодировать и видимой в каталоге. Например, каталог может экспонировать идентификаторы, такие как deepseek-v4.1-flash, qwen3.8-flash, glm-5.3 или seed-2.0-code. Доступность и возможности могут меняться, поэтому всегда проверяйте текущую страницу модели перед публикацией конфигурации.
Работа с большими репозиториями и документами
Для больших репозиториев или длинных технических документов сравните длину контекста, показанную в каталоге модели. Больший контекстный окно не автоматически означает лучшие результаты для работы с репозиториями: структура запроса, поддержка инструментов, ограничения вывода и ограничения шлюза также важны.
Вызов инструментов и агентные рабочие процессы
Если рабочий процесс требует вызова функций или инструментов, проверьте документацию модели и эндпоинта. Некоторые поставщики предлагают вызов инструментов через совместимые с OpenAI API, в то время как другие используют разные имена полей или поддерживают только часть поведения инструментов. Начните с теста вызова инструментов небольшого размера перед предоставлением модели доступа к реальному репозиторию или внешней системе.
Разработка на китайском языке
Китайские открытые модели могут быть полезны, если в базе кода, документации, трекеторе задач или рабочем процессе команды присутствует материал на китайском языке. Оцените модель с вашими собственными запросами и примерами репозиториев, а не полагайтесь только на общие рейтинги.
Тестирование кода Claude после успешного запроса к API
После успешного прямого запроса начните с команды только для чтения или низкорискового задания:
claude -p "Explain what this repository does without editing files."
Затем протестируйте узкоспециализированную задачу. Например:
claude -p "List the likely entry points for the web application. Do not modify files."
Используйте все более сложные тесты:
- Ответ в текстовом формате.
- Краткое объяснение кода.
- Навигация по репозиторию.
- Контролируемая модификация в временной ветке.
- Использование инструментов или многозадачная задача.
- Стремирование и поведение с большим контекстом.
Не предполагайте, что успешный текстовый ответ означает, что поведение запросов на разрешение, вызов инструментов, потоковое выведение и ограничение контекста идентично сессии с использованием Claude.
Выбор правильного API-пути
Claude Code — это только один из рабочих процессов клиента. Правильный путь API зависит от клиента и набора функций, которые вам нужны:
| Вариант | Лучшее применение | Что сравнивать |
|---|---|---|
| Официальный API Claude | Поддержка Claude и официальная документация | Условия поставщика, native функции и счета за услуги |
| Третьесторонний шлюз, совместимый с Anthropic | Рабочий процесс, управляемый шлюзом с запросами в стиле Anthropic | Покрытие протокола, маршрутизация, ограничения, логирование и не-клаудовые ограничения |
| Нативный API поставщика моделей | Уникальные возможности модели поставщика | Нативные поля, ограничения контекста и SDK поставщика |
| Шлюз, совместимый с OpenAI | Существующие SDK и инструменты OpenAI | Изменение основного URL, преобразование полей, поддержка ответов и семантика инструментов |
Для ECAIX используйте документацию по сообщениям Anthropic для пути в стиле Anthropic и документацию по Chat Completions для клиентов, совместимых с OpenAI. Используйте каталог моделей для проверки текущей модели и страницу цен для текущих отображаемых цен.
Матрица совместимости
Ниже приведена таблица, которая является границей публикации доказательств, а не утверждением о том, что все функции поддерживаются:
| Пробная область | Доказательства в данной статье | Следующее обязательное тестирование |
|---|---|---|
| Авторизация ключа API | Формат запроса и диагностическая команда | Запустите с авторизованным ключом и запишите статус |
| Маршрутизация моделей | Текущий публичный каталог идентификаторов | Убедитесь, что модель в ответе или используемых полях |
| Генерация текста | Минимальная форма запроса | Запишите реальный ответ |
| Поток | Не проверено здесь | Тестируйте формат событий и обработку клиента |
| Вызов инструментов | Не проверено здесь | Тестируйте один безвредный схема функции |
| Многозадачная задача агента | Не проверено здесь | Используйте временный репозиторий |
| Большой контекст | Не проверено здесь | Измерьте самую большую успешную просьбу |
| Поведение разрешения | Не проверено здесь | Тестируйте с задачами только для чтения и контролируемыми изменениями |
Эта разница предотвращает представление успешного минимального запроса как полной сертификации совместимости с Claude Code.
Страницы деталей моделей и текущие идентификаторы
Используйте страницы деталей моделей вместо копирования устаревшего имени модели из блога:
Эти ссылки — входные точки для проверки текущего идентификатора модели, информации о контексте и деталей страницы.
После ошибки используйте следующий порядок вместо изменения сразу нескольких переменных:
- Сохраните статус HTTP и тело ответа.
- Убедитесь, что основной URL и суффикс пути корректны.
- Убедитесь, что API-ключ присутствует локально и имеет ожидаемый раздел прав.
- Убедитесь, что точный идентификатор модели в текущем каталоге моделей.
- Повторите с минимальным допустимым запросом.
- Сравните результат с запросами, отправленными клиентом Claude Code.
- Только после этого исследуйте маршрутизацию, таймауты или различия в схемах инструментов.
Для ошибки "Модель не найдена", это разделяет опечатку от проблемы с правами, проблемы с маршрутизацией шлюза и неудачу поставщика. Для ошибок "401" и "403" изменять модель обычно не стоит первым шагом. Для успешного текста/неудачи инструмента следующий тест должен быть схемой инструмента, а не другим текстовой просьбой.
Общие ошибки
| Симптом | Вероятная причина | Что проверить |
|---|---|---|
401 или 403 | Отсутствует, недействительный или неавторизованный API-ключ | Значение ключа, разрешения аккаунта и заголовки пути |
| Модель не найдена | Идентификатор модели не в текущем каталоге или недоступен для ключа | /models, опечатка и доступ к модели |
| Неподдерживаемый параметр | Шлюз или модель поддерживает только часть формата запросов Anthropic | Удалите необязательные поля и тестируйте минимальный запрос |
| Пустой или некорректный вызов инструмента | Различие в схеме инструмента или карте поставщика | Тестируйте простую функцию перед полным агентным рабочим процессом |
| Тайм-аут | Контекст, вывод, нагрузка поставщика или тайм-аут клиента слишком велики | Уменьшите размер запроса, ограничение вывода или сферу задачи |
| Клиент игнорирует настройку модели | Установленная версия Claude Code использует другой путь конфигурации | Проверьте документацию настройки для версии |
| Текст работает, но задача агента не выполняется | Совместимость текста не равна совместимости инструментов | Тестируйте инструменты, разрешения, поток и контекст независимо |
Безопасность и обработка данных
Требуйте рассматривать шлюз как отдельную границу сервиса. Перед отправкой исходного кода или данных клиентов проверьте:
- Какие сервисы получают запросы и содержимое файлов.
- Являются ли запросы и ответы логируемыми.
- Как хранятся и обновляются API-ключи.
- Является ли маршрут модели реальным соединением с поставщиком или альтернативным маршрутом другого поставщика.
- Какие инструменты может вызвать клиент.
- Как отменить ключ после тестирования.
Никогда не вставляйте ключ производства в публичный issue, статью, скриншот или историю командной строки, которые делятся с другими.
Чем это отличается от официальной поддержки Claude Code
Официальная документация Anthropic является авторитетом для поддержки Claude Code. Третьесторонний шлюз может экспонировать совместимый формат запросов, но совместимость не равна официальной поддержке. Безопасный способ описания этого рабочего процесса:
- Поддерживается этой конфигурацией шлюза: конечная точка, заголовки авторизации, идентификаторы моделей и функции, которые ECAIX протестировал.
- Не автоматически поддерживается: все функции Claude Code, поведение моделей, не-клаудовые семантики инструментов поставщика и будущие версии клиента.
- Требует повторного тестирования после изменений: доступность моделей, поля запросов, ограничения контекста, потоковые вызовы, инструменты и цены.
Вопрос-ответ
Нужна ли подписка на Claude для этого рабочего процесса?
Это зависит от вашего установленного Claude Code, условий аккаунта и конфигурации шлюза. Эта статья не изменяет требования подписки или продуктов Anthropic. Проверьте текущую официальную документацию Claude Code и условия шлюза, который вы планируете использовать.
Можно ли использовать любой идентификатор модели из каталога?
Нет. Используйте идентификатор модели, который сейчас виден, активен и совместим с конечной точкой и аккаунтом. Модель может быть в каталоге, но недоступна для конкретного стиля API или ключа.
Гарантирует ли совместимый с Anthropic конечный пункт вызов инструментов?
Нет. Совместимость протокола и поведение инструментов — это отдельные проверки. Запустите тест на простом вызове функции и проверьте документацию модели перед использованием инструментов в автоматизированном рабочем процессе.
Где следует проверять текущие модели и цены?
Используйте каталог моделей ECAIX и страницу цен. Эти страницы являются источником истины для текущей доступности и отображаемых цен; не копируйте старые идентификаторы моделей или цены из этой статьи.
Итог
Безопасная последовательность интеграции:
- Прочитайте официальную документацию Claude Code и шлюза.
- Создайте API-ключ ECAIX без публичного разглашения.
- Выберите доступный идентификатор модели из
/models. - Настройте локально переменную
ANTHROPIC_BASE_URLи ключ. - Тестируйте
/api/ai/v1/anthropic/messagesс минимальным запросом. - Тестируйте Claude Code с задачей только для чтения.
- Тестируйте инструменты, поток, контекст и разрешения отдельно.
- Перепроверяйте совместимость при изменении клиента, шлюза, модели или конечной точки.
Для следующего шага прочтите документацию по API сообщений Anthropic, обзоры текущего каталога моделей и создайте ключ из API-ключей.
Практический список проверки совместимости
Перед тем как считать интеграцию полезной для команды, запишите результат каждого теста:
| Тест | Результат для записи |
|---|---|
| Минимальный текстовый запрос | HTTP-статус, форма ответа и идентификатор модели |
| Стремительный поток | Приходят ли события в формате, ожидаемом вашим клиентом |
| Вызов инструмента | Принимается ли схема инструмента и аргументы возвращаются корректно |
| Длинный контекст | Самый большой запрос, который завершается в пределах вашего тайм-аута |
| Редактирование файлов | Ведут себя ли разрешения и применение патчей так, как ожидается |
| Обработка ошибок | Как клиент сообщает о лимитах скорости, тайм-аутах и ошибках верхнего уровня |
| Отзыв ключа | Можно ли отключить и заменить тестовый ключ |
Этот список проверки полезнее, чем одно успешное приветствие. Портал может принимать текстовые запросы, но может требовать разных настроек для инструментов, потокового вывода, окон контекста или алиасов моделей.
Когда не использовать конфигурацию
Не используйте эту настройку для чувствительных производственных репозиториев, пока вы не поймете логирование, хранение данных, маршрутизацию и контроль доступа. Не полагайтесь на то, что совместимый с провайдером эндпоинт обеспечивает такое же поведение безопасности, системные подсказки, разрешения инструментов или учет контекста, как у оригинального провайдера. Для регулируемых или конфиденциальных задач выполните внутренний аудит безопасности и используйте путь развертывания, который одобрил ваш орган.
Обновление конфигурации
Проверьте настройки, если произойдут следующие изменения:
- Обновление Claude Code.
- Изменения в реализации портала, совместимой с Anthropic.
- Изменение идентификатора модели, её переименование, удаление или отображение на другой исходный модель.
- Изменения в потоке данных, инструментах, ограничениях контекста или поведении ошибок.
- Изменения в ECAIX в моделях или API-ограничениях в живом каталоге.
Сохраняйте конфигурацию в небольшом, документационном тестовом проекте. Это облегчит сравнение поведения после обновления клиента или модели без риска для производственного репозитория.