À propos du projet
Torvian Chatbot est un espace de travail IA auto-hébergé destiné aux utilisateurs qui souhaitent contrôler leurs données, leurs fournisseurs de modèles et l'exécution des outils. Vous exécutez vous-même le serveur, connectez votre propre configuration LLM et gardez les humains dans la boucle pour les actions agentiques.
Principales fonctionnalités décrites dans le README :
- Apportez vos propres fournisseurs LLM : API compatibles OpenAI et modèles Ollama locaux.
- Diffusez les réponses des modèles en temps réel, avec des réponses simultanées provenant de différentes sessions de chat.
- Organisez les longues conversations avec des flux de messages en fils de discussion/branches.
- L'exécution des outils nécessite une approbation par défaut, avec des préférences optionnelles d'approbation automatique ou de refus automatique par outil.
- Redémarrez les conversations agentiques à partir de n'importe quel message précédent, en restaurant le contexte et l'état des outils.
- Accès multi-utilisateurs avec authentification et autorisation basée sur les rôles/permissions.
- Clients multiplateformes pour bureau, web (WASM) et Android, tous connectés au même serveur.
- Les outils peuvent fonctionner 24h/24 et 7j/7 sur n'importe quelle machine (locale, distante, VM), indépendamment de l'endroit où les clients s'exécutent.
Architecture : un serveur Ktor fournit l'API centrale et la couche d'orchestration pour l'authentification/l'autorisation, les sessions de chat, le traitement des messages, l'intégration LLM, le cycle de vie des outils et la persistance (SQLite via Exposed ORM). Les clients Compose Multiplatform couvrent Desktop, Web (WASM) et Android. Un processus worker autonome optionnel gère l'exécution des outils MCP, utile pour l'isolation de l'espace de travail et une disponibilité permanente ; le serveur communique avec les workers via WebSocket en utilisant un protocole JSON personnalisé.
État du projet : développement actif. Le serveur associé à Desktop est décrit comme la combinaison la plus complète et la plus stable ; Web (WASM) est stable avec certaines limitations ; Android en est à un stade précoce avec des limitations UX connues.
Pour commencer : des paquets prébuilds sont publiés sur la page Releases (serveur, worker, client de bureau pour Windows/Linux et client web statique). Le serveur peut être exécuté via des scripts de démarrage ou une image Docker depuis ghcr.io ; une commande Docker de démarrage rapide est fournie. La connexion par défaut est admin/admin123 avec un changement de mot de passe obligatoire à la première connexion. Le worker est requis pour l'exécution des outils MCP, nécessite un compte utilisateur actif pour s'authentifier et génère un certificat SSL pendant la configuration ; les identifiants du signataire de confiance peuvent être enregistrés via un indicateur CLI ou des variables d'environnement. Docker est recommandé pour le worker car il offre une meilleure isolation pour l'exécution des outils.
La compilation depuis les sources nécessite Git, JDK 21+ et le wrapper Gradle inclus ; des tâches Gradle distinctes compilent le serveur, l'application de bureau, l'application web et le worker. La documentation inclut la configuration LLM, la configuration du serveur MCP, les signataires de confiance et des guides de déploiement VPS/Docker. Stack technique : Kotlin, Compose Multiplatform avec Material 3, Ktor, SQLite avec Exposed, Koin, Arrow, kotlinx.serialization et Gradle. Sous licence MIT.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.