LLM шлюзы предоставляют централизованный прокси-слой между Claude Code и поставщиками моделей, предлагая:

  • Централизованная аутентификация - Единая точка для управления API ключами
  • Отслеживание использования - Мониторинг использования по командам и проектам
  • Контроль затрат - Внедрение бюджетов и ограничений скорости
  • Журналирование аудита - Отслеживание всех взаимодействий с моделями для соответствия требованиям
  • Маршрутизация моделей - Переключение между поставщиками без изменения кода

Конфигурация LiteLLM

LiteLLM является сторонним прокси-сервисом. Anthropic не поддерживает, не обслуживает и не проводит аудит безопасности или функциональности LiteLLM. Это руководство предоставляется в информационных целях и может устареть. Используйте на свой страх и риск.

Предварительные требования

  • Claude Code обновлен до последней версии
  • LiteLLM Proxy Server развернут и доступен
  • Доступ к моделям Claude через выбранного поставщика

Базовая настройка LiteLLM

Настройка Claude Code:

Методы аутентификации

Статический API ключ

Простейший метод с использованием фиксированного API ключа:

# Установить в окружении
export ANTHROPIC_AUTH_TOKEN=sk-litellm-static-key

# Или в настройках Claude Code
{
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "sk-litellm-static-key"
  }
}

Это значение будет отправлено как заголовки Authorization и Proxy-Authorization, хотя Authorization может быть перезаписан (см. Vertex “Учетные данные, указанные клиентом” ниже).

Динамический API ключ с помощником

Для ротации ключей или аутентификации по пользователям:

  1. Создайте скрипт-помощник для API ключа:
#!/bin/bash
# ~/bin/get-litellm-key.sh

# Пример: Получение ключа из хранилища
vault kv get -field=api_key secret/litellm/claude-code

# Пример: Генерация JWT токена
jwt encode \
  --secret="${JWT_SECRET}" \
  --exp="+1h" \
  '{"user":"'${USER}'","team":"engineering"}'
  1. Настройте параметры Claude Code для использования помощника:
{
  "apiKeyHelper": "~/bin/get-litellm-key.sh"
}
  1. Установите интервал обновления токена:
# Обновлять каждый час (3600000 мс)
export CLAUDE_CODE_API_KEY_HELPER_TTL_MS=3600000

Это значение будет отправлено как заголовки Authorization, Proxy-Authorization и X-Api-Key, хотя Authorization может быть перезаписан (см. Google Vertex AI через LiteLLM). apiKeyHelper имеет более низкий приоритет, чем ANTHROPIC_AUTH_TOKEN или ANTHROPIC_API_KEY.

Конфигурации для конкретных поставщиков

Anthropic API через LiteLLM

Использование сквозной конечной точки:

export ANTHROPIC_BASE_URL=https://litellm-server:4000/anthropic
Amazon Bedrock через LiteLLM

Использование сквозной конечной точки:

export ANTHROPIC_BEDROCK_BASE_URL=https://litellm-server:4000/bedrock
export CLAUDE_CODE_SKIP_BEDROCK_AUTH=1
export CLAUDE_CODE_USE_BEDROCK=1
Google Vertex AI через LiteLLM

Использование сквозной конечной точки:

Рекомендуется: Учетные данные, указанные прокси

export ANTHROPIC_VERTEX_BASE_URL=https://litellm-server:4000/vertex_ai/v1
export ANTHROPIC_VERTEX_PROJECT_ID=your-gcp-project-id
export CLAUDE_CODE_SKIP_VERTEX_AUTH=1
export CLAUDE_CODE_USE_VERTEX=1
export CLOUD_ML_REGION=us-east5

Альтернатива: Учетные данные, указанные клиентом

Если вы предпочитаете использовать локальные учетные данные GCP:

  1. Аутентифицируйтесь с GCP локально:
gcloud auth application-default login
  1. Установите окружение Claude Code:
export ANTHROPIC_VERTEX_BASE_URL=https://litellm-server:4000/vertex_ai/v1
export ANTHROPIC_VERTEX_PROJECT_ID=your-gcp-project-id
export CLAUDE_CODE_USE_VERTEX=1
export CLOUD_ML_REGION=us-east5
  1. Обновите конфигурацию заголовков LiteLLM:

Убедитесь, что ваша конфигурация LiteLLM имеет general_settings.litellm_key_header_name установленным в Proxy-Authorization, поскольку сквозной токен GCP будет расположен в заголовке Authorization.

Унифицированная конечная точка

Использование конечной точки формата Anthropic LiteLLM:

export ANTHROPIC_BASE_URL=https://litellm-server:4000

Выбор модели

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

Если вы настроили пользовательские имена моделей в LiteLLM, установите вышеупомянутые переменные окружения в эти пользовательские имена.

Для получения более подробной информации обратитесь к документации LiteLLM.

Дополнительные ресурсы