f45ed0d11c7f351c5e0b35fe3a83db5ade55a37d
Build LLM Proxy / Build and push (release) Successful in 22s
llm-proxy
Прозрачная прослойка OpenAI API перед RouterAI (routerai.ru). Принимает
/v1/chat/completions и /v1/models, модифицирует запрос и проксирует дальше.
Что добавляет в запрос
provider.ignore— исключение дорогих провайдеров (список из envEXCLUDED_PROVIDERS, напр.deepseek) +allow_fallbacks: false(иначе ignore не жёсткий — RouterAI может уйти на исключённого резервной попыткой).reasoning: {"enabled": false}— для моделей с суффиксом-no-think(отключение думанья; проверено наdeepseek/deepseek-v4-flash-0731: работаетreasoning.enabled=false, не работаетinclude_reasoning=false). Суффикс снимается перед отправкой — RouterAI видит оригинальное имя.
Каталог /v1/models
Модели, чей id содержит любую из подстрок THINKING_MODELS, дублируются в
каталоге с суффиксом -no-think (напр. deepseek/deepseek-v4-flash-0731-no-think).
Конфиг (env)
| Переменная | Default | Описание |
|---|---|---|
PORT |
8100 | Порт сервера |
UPSTREAM_URL |
https://routerai.ru/api/v1 |
Куда проксировать |
ROUTER_API_KEY |
— (обязателен) | Bearer-ключ RouterAI |
EXCLUDED_PROVIDERS |
пусто | slug'и провайдеров через запятую |
THINKING_MODELS |
deepseek/deepseek-v4-flash-0731,deepseek/deepseek-v4-flash |
подстроки id «думающих» моделей |
Сборка и деплой
- CI (Gitea Actions, на release):
./gradlew shadowJar→ образimages.binom.pw/llm-proxy:<tag>(zot). - Запуск на 76.179 (llm-router):
podman-compose up -dизpodman-compose.yaml(образ тянется изimages.binom.pw, сетьbifrost_default— туда же Bifrost ходит по имениllm-proxy). - Bifrost: в
config_providersпровайдераRouterainetwork_config_json.base_url=http://llm-proxy:8100(после смены — рестарт bifrost_gateway).
Description