SortieCode / SDK · Prêt à l'emploiHabr AI→ original

AnythingLLM permet de créer en une soirée un assistant RAG privé à partir de vos documents

AnythingLLM est une application open source qui découpe vos PDF et DOCX en fragments, les stocke dans une base vectorielle et ne transmet au modèle que les passages nécessaires. Elle fonctionne sur ordinateur ou dans Docker et se connecte à Ollama, Claude ou toute passerelle compatible avec OpenAI. Une soirée suffit pour monter un assistant privé. Mais le RAG prêt à l'emploi reste moyen, et de sérieuses vulnérabilités ont été découvertes en 2026.

Traité par IA depuis Habr AI ; édité par Hamidun News
AnythingLLM permet de créer en une soirée un assistant RAG privé à partir de vos documents
Source : Habr AI. Collage: Hamidun News.
Écouter l'article
Fiche synthèse et chiffres clés
ParamètreDonnées
Source primaireHabr AI ↗
Rédacteur en chef
Chiffre clé #1Le mode Embed, contrairement à l'ajout en pièce jointe, ne sature pas la fenêtre de contexte
CVE-2026-48116 permet une RCE dans Dockermettez à jour vers la version 1.13.0 ou ultérieure
Chiffre clé #3Max tokens vaut 1024 par défaut, ce qui tronque silencieusement les réponses longues

La situation est familière : une centaine de PDF contenant des contrats, des notes de cours et de la documentation interne traînent sur le disque. Vous chargez un fichier dans un chatbot, et il s'en sort. Vous en chargez vingt, la fenêtre de contexte déborde et une partie des données se perd. À cela s'ajoutent l'abonnement, le VPN et la réticence à confier ses documents au cloud d'un tiers. AnythingLLM a précisément été conçu pour ce type de tâche.

De quoi s'agit-il et comment fonctionne-t-il ?

AnythingLLM est une application full-stack open source. Elle récupère les fichiers, les découpe en chunks, les vectorise, les stocke dans une base et ne fournit au modèle que les fragments pertinents. Les formats pris en charge sont nombreux : PDF, DOCX, TXT, pages web et audio via Whisper.

Le principal piège pour les débutants tient aux deux méthodes permettant d'ajouter un document. Si vous « joignez » un fichier au chat, l'intégralité de son texte est injectée dans la fenêtre de contexte. C'est rapide, mais deux gros fichiers suffisent à épuiser cette fenêtre. Le mode Embed fonctionne comme un véritable RAG : seuls les fragments proches de la question entrent dans le prompt.

Les documents résident dans un workspace. Il s'agit d'espaces isolés par projet, chacun avec sa propre mémoire, ses propres fichiers et son propre modèle. Un workspace peut utiliser Ollama en local, tandis qu'un autre interroge Claude par API. La version 1.13.0 a ajouté Model Router : il envoie les requêtes simples à un modèle bon marché et les requêtes complexes à un modèle haut de gamme. Vous définissez vous-même les règles, par exemple selon des mots-clés ou la taille de la requête. Cette version a également introduit Scheduled Jobs, autrement dit des agents planifiés.

La base vectorielle intégrée par défaut est LanceDB. Il est également possible de connecter PGVector, Chroma, Milvus, Pinecone, Qdrant et d'autres solutions.

Application de bureau ou Docker

La version de bureau s'installe en un clic sur Mac, Windows et Linux. Tout s'exécute sur votre machine, et le modèle intégré propose trois variantes GGUF adaptées à votre matériel. C'est une bonne manière de déterminer en dix minutes si l'outil vous convient. Mais ce mode est limité à un seul utilisateur, et le moteur intégré commence à peiner avec une grande base documentaire.

Docker est nécessaire pour un serveur : mode multiutilisateur, invitations, contrôle de l'accès aux workspaces, widgets de chat pour les sites web et API complète. La sauvegarde consiste simplement à copier un répertoire de stockage. Deux pièges sont fréquents :

  • le conteneur s'exécute sous un utilisateur ayant l'UID/GID 1000. Si le dossier de l'hôte appartient à root, SQLite ne pourra pas créer la base et le conteneur redémarrera indéfiniment. La commande chown -R 1000:1000 appliquée au répertoire de stockage corrige le problème ;
  • l'option --cap-add SYS_ADMIN paraît suspecte, mais elle est nécessaire au navigateur headless intégré utilisé pour les pages web.

Un modèle externe se connecte via le fournisseur Generic OpenAI : il suffit d'indiquer la Base URL, la clé et l'ID exact du modèle. C'est ainsi que l'on connecte des passerelles russes comme Bothub, mais aussi LM Studio, Ollama en mode compatible, vLLM et OpenRouter. Le principe reste le même, seule l'adresse change. Deux champs doivent être renseignés immédiatement : Token context window, selon la taille réelle de la fenêtre du modèle, et Max tokens. Ce dernier vaut 1024 par défaut, ce qui tronque les réponses longues sans avertissement.

Les points faibles

Le premier est la qualité du RAG. Il fonctionne dès l'installation, mais ses performances restent moyennes. Le résultat dépend de la taille des chunks, du modèle d'embeddings et du seuil de similarité ; les valeurs par défaut constituent un compromis, pas un réglage adapté à votre cas d'usage. Symptôme typique : le modèle répond à partir d'un paragraphe situé au milieu d'un PDF et ignore trois autres passages qui expriment la même chose avec des mots différents. La première soirée sera consacrée à comprendre ces réglages.

Le deuxième est la stabilité des agents. Des fuites de mémoire ont été observées en 2026 : chaque requête RAG effectuée dans une session agent ajoutait entre 100 et 650 Mo qui n'étaient pas libérés. C'est tolérable pour des essais à domicile, mais pas pour un serveur utilisé par une dizaine de personnes.

Le troisième est la sécurité. CVE-2026-48116 permettait d'exécuter une commande arbitraire à l'intérieur du conteneur grâce à une injection d'argument dans ripgrep. Le plugin de fichiers étant activé par défaut dans l'image officielle, il suffisait d'envoyer un message à l'agent. CVE-2026-45403 permettait une traversée de chemins à l'aide de liens symboliques. Les deux failles ont été corrigées dans la version 1.13.0 ; la version actuelle au moment de la rédaction est la 1.19.0. En outre, la version de bureau ne dispose pas d'authentification, et la version Docker ne demande aucun mot de passe tant que vous ne l'activez pas vous-même. Un port ouvert sans mot de passe n'offre aucune confidentialité : c'est une loterie.

Je ne recommande pas la version cloud hébergée à 50 dollars par mois pour un travail sérieux sur des documents : elle n'intègre aucun LLM, son embedder fonctionne sur CPU avec des limites strictes, et les agents personnalisés ainsi que MCP y sont désactivés.

Conclusion pratique

Si vous disposez d'un corpus de textes que vous ne voulez pas confier à des clouds publics, AnythingLLM fournit en une soirée une base fonctionnelle. Commencez par la version de bureau, passez à Docker pour une équipe, activez immédiatement un mot de passe, installez toujours la dernière version et prévoyez du temps pour ajuster le chunking. Pour une utilisation en production avec des données critiques, mieux vaut encore superviser l'assistant comme un stagiaire disposant d'un accès à la production.

Dossier

Questions clés sur cet article

De quoi s'agit-il et comment fonctionne-t-il ?

AnythingLLM est une application full-stack open source. Elle récupère les fichiers, les découpe en chunks, les vectorise, les stocke dans une base et ne fournit au modèle que les fragments pertinents. Les formats pris en charge sont nombreux : PDF, DOCX, TXT, pages web et audio via Whisper. Le principal piège pour les débutants tient aux deux méthodes permettant d'ajouter un document. Si vous « joignez » un fichier au chat, l'intégralité de son texte est injectée dans la fenêtre de contexte.

Que sait-on sur Application de bureau ou Docker ?

La version de bureau s'installe en un clic sur Mac, Windows et Linux. Tout s'exécute sur votre machine, et le modèle intégré propose trois variantes GGUF adaptées à votre matériel. C'est une bonne manière de déterminer en dix minutes si l'outil vous convient. Mais ce mode est limité à un seul utilisateur, et le moteur intégré commence à peiner avec une grande base documentaire.

Que sait-on sur Les points faibles ?

Le premier est la qualité du RAG. Il fonctionne dès l'installation, mais ses performances restent moyennes. Le résultat dépend de la taille des chunks, du modèle d'embeddings et du seuil de similarité ; les valeurs par défaut constituent un compromis, pas un réglage adapté à votre cas d'usage. Symptôme typique : le modèle répond à partir d'un paragraphe situé au milieu d'un PDF et ignore trois autres passages qui expriment la même chose avec des mots différents.

ZK
Zhemal Khamidun — CPO d'Alpina Digital, product manager d'AlpinaGPT. Conçoit des produits IA depuis 2019. Hamidun News est un projet personnel devenu un agrégateur en production avec plus de 6 000 lecteurs.
✦ Unified AI Workspace · Nomad

Test Frontier LLMs & Autonomous Agents in One Workspace

Run Claude Opus 5.5, GPT-6, Gemini 3.1, and DeepSeek side-by-side in Nomad AI (nomadnet.ai) — unified model routing, deep research, and multimodal workflows under one subscription.

Try Nomad AI →Launch Nomad Agent
Qu'en pensez-vous ?
Chargement des commentaires…