FreeLLMAPI Catalog Proxy

Прозрачный кэширующий реверс-прокси для доставки оригинального официального каталога моделей FreeLLMAPI (api.freellmapi.co/v1/latest).

Зачем это нужно

FreeLLMAPI не запрашивает список моделей напрямую у сторонних провайдеров (кроме LongCat и SiliconFlow). Для остальных (Routeway, UnoRouter, BazaarLink, OrcaRouter и др.) список моделей подгружается из внешнего подписанного каталога: https://api.freellmapi.co/v1/latest (~560 КБ).

При прямой загрузке на российских каналах передача файла зависает после первых ~20 КБ из-за DPI/фильтрации больших ответов. Контейнер FreeLLMAPI падает по таймауту, и в базе остаются только предзашитые базовые модели, а добавленные ключи получают пустой список моделей.

Как это работает

  1. Прокси подключается к https://api.freellmapi.co/v1/latest через стабильный SOCKS5-маршрут (Германия).
  2. Забирает оригинальные байты и официальный криптографический заголовок x-catalog-signature (Ed25519).
  3. Кэширует файл локально на 12 часов.
  4. Отдаёт каталог контейнеру FreeLLMAPI по локальной сети (http://catalog-proxy:8080/v1/latest).
  5. FreeLLMAPI штатно верифицирует оригинальную цифровую подпись Ed25519 (PINNED_CATALOG_PUBKEY) и применяет актуальные модели.

Запуск в Docker Compose

  1. Скопируйте .env.example в .env и укажите переменные:
    cp .env.example .env
    
  2. Запустите стек:
    docker compose up -d
    
  3. Проверьте логи синхронизации:
    docker compose logs -f freellmapi
    
S
Description
Caching proxy for FreeLLMAPI signed model catalog sync
Readme 29 KiB
Languages
Python 97.7%
Dockerfile 2.3%