Свой ИИ-шлюз для команды или компании на VPS
Когда с ИИ работает вся команда, раздавать каждому личный ключ — путь к хаосу и утечкам. Единый шлюз на зарубежном VPS даёт один вход, общий биллинг и учёт по каждому сотруднику.
Содержание
Зачем команде общий шлюз
['Личные ключи у каждого разработчика — это неконтролируемые расходы, риск утечки и невозможность быстро отозвать доступ у уволившегося. Шлюз решает всё сразу: настоящие ключи провайдеров лежат на сервере, а сотрудники получают виртуальные ключи с лимитами.', '- Один биллинг — видите общий и персональный расход.
- Лимиты — бюджет на человека и на проект.
- Быстрый отзыв — удалили виртуальный ключ, и доступ закрыт.
- Единый доступ из РФ — шлюз на зарубежном VPS ходит к OpenAI и Anthropic, сотрудники — на ваш домен.
Нужен сервер под эту задачу?
Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK и США. Оплата картой РФ и по СБП.
Арендовать VPS для ИИ-шлюза командыВыбор сервера
['Шлюз — легковесный сервис, но он критичен: если он ляжет, встанет вся команда. Берите VPS с запасом по надёжности и быстрым диском. AMD EPYC + NVMe у MAATRIX даёт низкие задержки, а ежедневные бэкапы страхуют конфигурацию.', 'Локации UK и US подходят под большинство ИИ-провайдеров. Оплата картой РФ, СБП, криптой или токеном MAAT снимает вопрос с зарубежным биллингом хостинга — компании не нужна иностранная карта, чтобы держать инфраструктуру за рубежом.', 'Ещё один довод в пользу выделенного сервера — данные команды остаются под вашим контролем. Промпты, история и логи не уходят в чужой сторонний сервис-посредник, а лежат на вашем VPS с root-доступом. Для компаний, которым важна конфиденциальность переписки с ИИ, это часто решающий фактор.']Нужны сами нейросети для контента?
Генерируйте изображения, видео и озвучку нейросетями на falapi.io — десятки моделей в одном окне. Оплата картой РФ и по СБП.
Ставим LiteLLM в Docker
['LiteLLM — популярный прокси-шлюз, который говорит с десятками провайдеров через единый OpenAI-совместимый интерфейс. Ставим Docker и запускаем:', 'curl -fsSL https://get.docker.com | sh\nmkdir -p /opt/ai-gateway && cd /opt/ai-gateway', 'Файл config.yaml с двумя провайдерами:', 'model_list:\n - model_name: gpt-4o\n litellm_params:\n model: openai/gpt-4o\n api_key: os.environ/OPENAI_API_KEY\n - model_name: claude\n litellm_params:\n model: anthropic/claude-3-5-sonnet-20241022\n api_key: os.environ/ANTHROPIC_API_KEY', 'Запуск контейнера с мастер-ключом:', 'docker run -d --name gateway --restart always -p 4000:4000 \\\n -e OPENAI_API_KEY=sk-... \\\n -e ANTHROPIC_API_KEY=sk-ant-... \\\n -e LITELLM_MASTER_KEY=sk-master-... \\\n -v $(pwd)/config.yaml:/app/config.yaml \\\n ghcr.io/berriai/litellm:main-latest --config /app/config.yaml']
Выдаём виртуальные ключи с лимитами
['Мастер-ключ остаётся у вас. Сотрудникам генерируйте отдельные ключи с бюджетом:', 'curl -X POST http://localhost:4000/key/generate \\\n -H "Authorization: Bearer sk-master-..." \\\n -H "Content-Type: application/json" \\\n -d \'{"models":["gpt-4o","claude"],"max_budget":20,"duration":"30d"}\'', 'В ответ придёт ключ вида sk-..., который вы отдаёте человеку. Он использует его как обычный OpenAI-ключ, указывая base_url вашего шлюза.', 'Когда сотрудник уходит или проект закрывается, ключ удаляется одной командой — и доступ мгновенно перекрыт, при этом основной ключ провайдера остаётся в безопасности:', 'curl -X POST http://localhost:4000/key/delete \\\n -H "Authorization: Bearer sk-master-..." \\\n -H "Content-Type: application/json" \\\n -d \'{"keys":["sk-удаляемый"]}\'']
Публикуем шлюз наружу безопасно
['Не выставляйте порт 4000 в открытый интернет напрямую. Спрячьте его за nginx с HTTPS:', 'location / {\n proxy_pass http://127.0.0.1:4000;\n proxy_set_header Host $host;\n proxy_buffering off;\n}', 'Дальше certbot --nginx -d ai.company.ru — и сотрудники подключаются к https://ai.company.ru из любой точки, включая российские офисы.']
Мониторинг и типичные ошибки
['Расход по каждому ключу виден через endpoint учёта — удобно раз в неделю выгружать статистику и сверять с бюджетом:', 'curl http://localhost:4000/spend/logs \\\n -H "Authorization: Bearer sk-master-..."', '- Контейнер падает при старте — не проброшены переменные с ключами провайдеров.
- Виртуальный ключ не работает — модель не указана в его списке
models. - Стриминг обрывается — в nginx не отключён
proxy_buffering. - После перезагрузки шлюз не поднялся — забыт флаг
--restart alwaysу контейнера.
Нужен сервер под эту задачу?
Разверните VPS MAATRIX за пару минут: NVMe, AMD EPYC, root-доступ, локации UK и США. Оплата картой РФ и по СБП.
Арендовать VPS для ИИ-шлюза командыНужны сами нейросети для контента?
Генерируйте изображения, видео и озвучку нейросетями на falapi.io — десятки моделей в одном окне. Оплата картой РФ и по СБП.
Частые вопросы
Сколько людей потянет один шлюз?
Небольшой VPS спокойно обслуживает десятки одновременных пользователей — узкое место обычно у провайдера ИИ, а не у прокси.
Можно ли смешивать OpenAI и Anthropic?
Да, в этом суть LiteLLM: команда обращается к одному endpoint, а модель выбирается по имени.
Как считать расходы по людям?
LiteLLM ведёт учёт по каждому виртуальному ключу — видно траты на пользователя и проект.
Как оплатить сервер из России?
MAATRIX принимает карту РФ, СБП, криптовалюту и токен MAAT, поэтому зарубежный VPS доступен без иностранной карты.