Assistant AI Standalone
Un AI standalone zero-knowledge pour ce site
Sur ce site, j’ai implémenté ChaD GPT, un assistant web capable de répondre à des questions sur moi et sur le contenu du site. La particularité est qu’il tourne directement dans le navigateur avec le hardware de l’utilisateur. Pas de server-side processing, et quasiment aucun coût AI côté serveur. Données et processing restent locaux, avec un bon niveau de privacy et de security.
Important: ce n’est pas un assistant ultra-intelligent et il necessite un hardware moderne. Une GPU de 3GiB est souvent suffisante. Il peut fonctionner sur desktop, laptop et plusieurs appareils mobile.
Key Concepts
What is a GPU?: une Graphics Processing Unit est un processeur spécialisé pour le parallel processing. De nombreux algorithmes AI et graphiques reposent sur Matrix Calculus et des opérations vectorielles comme Dot Product, facilement parallélisables.
How it works
ChaD GPT est construit avec Transformer.js, une bibliothèque pour exécuter des large language models en JavaScript. Pour l’accès hardware, il utilise WebGPU, la nouvelle graphics API haute performance. Cela permet une exécution locale sans dépendance à un serveur externe.
Le modèle d’inférence est SmolLM 1.7B, un bon compromis entre taille et performance.
Le modèle n’a pas nativement la connaissance spécifique du site. Pour cela, la connaissance est augmentée via RAG. Les informations sont indexées dans Qdrant sous forme d’embeddings pour un retrieval pertinent.
Autre composant important: la chat memory. Comme le modèle est compact, le context window est limité. Une mémoire applicative conserve les éléments utiles dans Neo4j, un graph database.
Requirements
Les navigateurs modernes supportent WebGPU, notamment Chrome et Safari sans configuration spéciale.
Pour Firefox sous Linux, il est recommandé d’utiliser Firefox Nightly, où WebGPU est généralement disponible.
Une GPU est nécessaire: plus elle est puissante, plus les réponses sont rapides. 3GiB de VRAM suffisent souvent.
How to use it
Pour utiliser ChaD GPT, clique sur l’icône de chat en bas à droite (ou dans le menu top sur mobile). Au premier lancement, il faut autoriser le téléchargement du modèle (environ 1.7GiB). Ensuite, tu peux poser tes questions. L’assistant est configuré pour répondre sur les sujets liés à moi et au site.
Si le navigateur ne supporte pas WebGPU, un message indiquera que la fonctionnalité AI n’est pas disponible.
Privacy considerations
ChaD GPT tourne dans le navigateur, donc le processing se fait sur l’appareil utilisateur. Pour des raisons pratiques, j’utilise une version privée des bases de données accessible via internet, mais l’architecture reste orientée minimisation d’exposition des données.