À propos du projet
Switchboard est une passerelle d'IA local-first qui s'exécute entièrement sur votre machine, offrant un point de terminaison compatible OpenAI pour router les requêtes vers 16 fournisseurs différents incluant Groq, Cerebras, Google, OpenRouter, DeepSeek, Mistral, OpenAI et Anthropic. Il sélectionne intelligemment le fournisseur optimal pour chaque requête en fonction de facteurs en temps réel tels que la santé, la latence, le coût et le niveau d'offre — privilégiant les offres gratuites et basculant automatiquement si un fournisseur échoue. Chaque décision de routage est stockée et expliquée en détail, montrant pourquoi chaque candidat a été choisi ou exclu, y compris les détaillés de coût et les raisons d'échec.
Le système ne nécessite aucun compte cloud ni télémétrie ; les identifiants sont chiffrés localement en AES-256-GCM et ne quittent jamais votre appareil sauf pour les appels API amont. Il prend en charge les complétions de chat en streaming et non-streaming, les embeddings, la génération d'images, la parole audio et la transcription, le reranking et les endpoints de modération. Toutes les réponses incluent des en-têtes de métadonnées de routage tels que le fournisseur utilisé, le modèle, le niveau, le coût, la latence et la raison de fallback lorsque cela s'applique.
Switchboard inclut un tableau de bord accessible à http://localhost:7272 et un outil CLI (sb) pour gérer les fournisseurs, clés, modèles et politiques. Vous pouvez simuler des décisions de routage sans envoyer de trafic, affiner des stratégies comme 'auto' (priorité gratuit), 'fast', 'quality' ou 'failover', et consulter des journaux détaillés et rapports d'utilisation. Il est développé avec Node.js 22.13+, utilise SQLite pour la persistance sans modules natifs, et fonctionne de manière identique sur Windows, macOS et Linux.
Les fonctionnalités de résilience incluent des disjoncteurs par connexion, des verrouillages de modèle après les limites de taux, et des fallbacks jusqu'à maxAttempts. Les réponses en streaming ne sont jamais réessayées une fois démarrées. La configuration est optionnelle avec des valeurs par défaut raisonnables, et le CORS est désactivé par défaut pour des raisons de sécurité. L'application desktop se compile via Electron et s'exécute dans la barre d'état système avec support du démarrage automatique au login.
Toujours en pré-1.0, il a traité les principales conclusions d'audit y compris la couverture de tests (désormais ~1035 tests), la journalisation structurée avec rédaсtion, la limitation de taux persistée et la gestion sécurisée des identifiants. Les limitations connues incluent l'absence de publication npm encore (installation via git clone), pas de tests end-to-end, pas de journal d'audit pour les actions administratives, et pas d'arrêt gracieux. Pas conçu pour l'exposition sur internet public sans proxy inverse et authentification.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.