
openai-nim-proxy (LLM Gateway)
Node.js-шлюз, объединяющий NVIDIA NIM, Chutes, Ollama, GPT4Free и OpenRouter за одним OpenAI-совместимым API — с явными префиксами провайдеров вместо поддельных алиасов OpenAI.
Шлюз никогда не подделывает алиасы моделей OpenAI. Каждая модель провайдера доступна под явным префиксом — nim:, chutes:, ollama:, g4f:, openrouter: — поэтому клиент всегда знает, куда уходит запрос.
Реестр моделей обнаруживает модели от каждого настроенного провайдера параллельно (отказ одного не ломает объединение), удаляет дубликаты по ID и кеширует результат с настраиваемым TTL. Пул ключей с round-robin выбирает между несколькими ключами на провайдера с экспоненциальной задержкой и учётом Retry-After.
Поверх маршрутизации — встроенный браузерный чат на SQLite с указанием провайдера/модели для каждого сообщения, TTS-бенчмарк для Kokoro/KittenTTS/Piper через единый /v1/audio/speech, опциональный GPT4Free-сайдкар (чат + генерация изображений) в отдельном Docker-контейнере и Responses-API транслятор для Codex CLI 0.136+.
Key features
- OpenAI-совместимые /v1/models, /v1/chat/completions, /v1/responses, /v1/audio/speech, /v1/images/generations.
- Явные префиксы провайдеров (nim:, chutes:, ollama:, g4f:, openrouter:) — без подмены алиасов.
- Round-robin пул ключей с экспоненциальной задержкой + Retry-After для пула бесплатных ключей.
- Браузерный чат на SQLite с указанием провайдера/модели для каждого сообщения.
- TTS-бенчмарк для Kokoro / KittenTTS / Piper через единый OpenAI-совместимый endpoint.
- Responses-API транслятор для Codex CLI 0.136+ (провайдеры только с chat/completions).
- Проброс tool-call (streaming + non-streaming) + заглушка для тестирования.
- Ограниченное отладочное логирование (ring buffer + файл с лимитом); скрипты установки на VPS через systemd.