Если у вас больше одного приложения — или один агент, который расходится на несколько моделей — вы рано или поздно упираетесь в одну стену: у каждого провайдера свой SDK, свои ключи, свои лимиты и нет единого места, где виден расход. LiteLLM решает это, ставя один OpenAI-совместимый эндпоинт перед всем. Ваш код вызывает один URL с именем модели; LiteLLM маршрутизирует к OpenAI, Anthropic, Groq, Together, Mistral, локальной Ollama — что настроите — и даёт бюджеты, фолбэки и один лог каждого вызова.
Self-hosting на VPS означает, что ключи провайдеров, ваши промпты и данные о расходах живут на машине, которой управляете вы, с оплатой криптой без KYC.
Что нужно LiteLLM-прокси
- Немного вычислений — это шлюз. Тяжёлое происходит у провайдеров; LiteLLM только маршрутизирует. Small ($8/мес — 4 vCPU, 4 ГБ RAM) комфортно держит прокси плюс Postgres для виртуальных ключей и учёта расходов.
- Выделенный IP, домен и HTTPS. Приложения и агенты подключаются входящими, поэтому нужен план с выделенным IPv4, домен и TLS. NAT-планы не принимают входящий веб-трафик.
- Исходящий к провайдерам. Машине нужен обычный исходящий HTTPS к API моделей — он есть у любого плана.
Настройка через Docker (Ubuntu 24.04)
# план с выделенным IP, root-шелл
apt update && apt install -y docker.io docker-compose-v2
systemctl enable --now docker
mkdir -p /opt/litellm && cd /opt/litellm
cat > config.yaml <<'EOF'
model_list:
- model_name: gpt-4o
litellm_params:
model: openai/gpt-4o
api_key: os.environ/OPENAI_API_KEY
- model_name: claude
litellm_params:
model: anthropic/claude-sonnet-4-5
api_key: os.environ/ANTHROPIC_API_KEY
- model_name: local-llama
litellm_params:
model: ollama/llama3.1
api_base: http://host.docker.internal:11434
general_settings:
master_key: sk-CHANGE-ME # admin-ключ; вместо него выдавайте виртуальные ключи по приложениям
EOF
cat > docker-compose.yml <<'EOF'
services:
litellm:
image: ghcr.io/berriai/litellm:main-latest
restart: always
ports: [ "127.0.0.1:4000:4000" ]
environment:
OPENAI_API_KEY: sk-... # ваши ключи провайдеров
ANTHROPIC_API_KEY: sk-ant-...
DATABASE_URL: postgresql://litellm:change_me@postgres:5432/litellm
volumes: [ ./config.yaml:/app/config.yaml ]
command: [ "--config", "/app/config.yaml" ]
postgres:
image: postgres:16
restart: always
environment:
POSTGRES_USER: litellm
POSTGRES_PASSWORD: change_me
POSTGRES_DB: litellm
volumes: [ ./pgdata:/var/lib/postgresql/data ]
EOF
docker compose up -d
Поставьте перед ним Caddy или Nginx для автоматического HTTPS на вашем домене — и любой OpenAI SDK просто работает:
curl https://llm.yourdomain.com/v1/chat/completions \
-H "Authorization: Bearer sk-your-virtual-key" \
-H "Content-Type: application/json" \
-d '{"model":"claude","messages":[{"role":"user","content":"ping"}]}'
Почему это отлично для агентов
ИИ-агент или флот из нескольких агентов обычно делает много вызовов моделей. За LiteLLM-прокси вы можете: ограничить каждого агента своим виртуальным ключом и бюджетом, автоматически откатываться с фронтир-модели на дешёвую, смешивать локальную Ollama с облачными API и читать один лог того, сколько потратил каждый агент. Меняйте модели без правки кода агента — просто меняйте конфиг.
Почему EQVPS для LiteLLM-шлюза
- Выделенный IPv4 от $8/мес, удобно для домена + HTTPS, все порты, самостоятельный rDNS.
- Локации в ЕС (Германия, Финляндия) — чистые маршруты, реальный закон о защите данных; ваши ключи и логи остаются в ЕС.
- Без KYC, оплата криптой. Email для регистрации, USDC/USDT для оплаты.
- Root за ~60 секунд. Чистые образы Ubuntu/Debian;
docker compose up— и шлюз работает.
Комментарии
Пока нет комментариев. Будьте первым.