Об этом проекте

MultiRouter AI выступает в качестве единой конечной точки API, которая интеллектуально маршрутизирует запросы на завершение чата между несколькими аккаунтами AI-провайдеров. Он позволяет пользователям объединять API-ключи бесплатных уровней от таких сервисов, как Groq, Cerebras и Gemini, автоматически переключаясь на другой аккаунт при достижении лимитов запросов. Система полностью совместима со спецификацией OpenAI API, что делает ее готовой к использованию в IDE, таких как Cursor, Windsurf, Claude Code, Aider и других инструментах, поддерживающих пользовательские базовые URL-адреса OpenAI. Конфигурация осуществляется через YAML-файл (`providers.yaml`), в котором пользователи определяют экземпляры провайдеров, API-ключи, поддерживаемые модели и приоритет маршрутизации. Провайдеры опрашиваются по порядку — обычно сначала бесплатные уровни, затем платные — с автоматическим периодом охлаждения и повторной активацией после истечения лимитов. Доступны две стратегии маршрутизации: 'exhaust' (по умолчанию), которая использует каждого провайдера до исчерпания лимита, и 'round-robin', которая равномерно распределяет запросы между активными экземплярами при использовании специального имени модели `multirouter-auto`. Сервер поддерживает потоковые ответы через Server-Sent Events (SSE) в формате OpenAI и предоставляет стандартные эндпоинты, такие как `/v1/chat/completions`, `/v1/models` и `/health`. Он работает на Node.js 20+ с Express 5 и TypeScript 5.9, включает встроенное ограничение скорости и аутентификацию через bearer-токен, а также может интегрировать локальные или self-hosted модели через тип провайдера `openai-compatible` с пользовательским `base_url`. Лучшие практики безопасности включают игнорирование `providers.yaml` в git и поддержку интерполяции переменных окружения для секретов. Проект распространяется под лицензией MIT и предназначен для разработчиков, стремящихся к бесперебойному доступу к AI путем объединения квот нескольких провайдеров без изменения клиентских приложений.