
LinkingMem — Graph-native RAG Engine
khapu2906 · Programmation · Apprentissage
LinkingMem est un moteur RAG natif du graphe qui tourne comme service Docker auto-hébergé et relie la recherche vectorielle au parcours de graphe pour qu'un LLM réponde à vos questions à partir de vos propres documents. Au lieu de faire correspondre des morceaux de texte par similarité seule, il parcourt les arêtes entre entités pour rassembler des faits liés dans une réponse ancrée. Voilà toute l'idée. Si vous voulez un pipeline RAG que vous maîtrisez de bout en bout, sur votre propre matériel, c'est fait pour ça.

À propos de LinkingMem — Graph-native RAG Engine
Qu'est-ce que LinkingMem
LinkingMem est un moteur de récupération pour construire des systèmes de questions-réponses sur des données privées. Il associe un cœur de calcul en Rust à des plugins Python, et il traite le graphe de connaissances comme une partie centrale de la récupération, pas comme un ajout tardif. Une requête entre dans le pipeline, devient un vecteur, atteint un index vectoriel HNSW, puis s'étend par les arêtes du graphe avant que le LLM rédige la réponse finale. Cet ordre compte. L'étape de graphe est ce qui relie des faits qui ne partagent pas le même vocabulaire.
Le moteur est livré sous forme d'image Docker, donc vous l'exécutez vous-même. Le traitement du texte et des images se trouve dans des plugins séparés que vous pouvez lancer ou ignorer, et le client LLM parle le protocole compatible OpenAI. Choisissez votre backend. Les points d'accès compatibles OpenAI, Ollama, Groq et Gemini fonctionnent, ce qui est utile quand vous voulez garder l'inférence en local.
Le principal obstacle, c'est le coût de configuration. LinkingMem exige Rust 1.80+ et Python 3.11+, et c'est à vous de câbler la configuration, la clé LLM et les fichiers de données. C'est un outil de développeur, pas une application qu'on installe et qu'on oublie.
Pour commencer
- Récupérez l'image Docker depuis Docker Hub (khapu2906/linkingmem) ou clonez le dépôt et installez Rust 1.80+ et Python 3.11+ avec uv.
- Copiez
.env.examplevers.env, puis définissez au moinsOPENAI_API_KEY; pointezOPENAI_BASE_URLvers Ollama ou un autre fournisseur compatible si vous préférez tourner en local. - Parcourez
plugins.tomlpour décider quels plugins lancer (celui du texte sur le port 8001, celui de l'image sur le port 8002) et comment le pipeline de requête est ordonné. - Ingérez vos documents avec les points d'accès
POST /ingest/textouPOST /ingest/jsonpour construire les nœuds, les arêtes et les vecteurs. - Envoyez une question à
POST /queryet lisez la réponse ancrée du LLM, ou utilisezPOST /query/multihopquand vous avez besoin que le moteur suive plusieurs sauts.
Informations sur le produit
Aperçu des tarifs, des plateformes compatibles et des performances de LinkingMem — Graph-native RAG Engine.
Idéal pour
Les utilisateurs, tâches et cas d'usage où cet outil convient le mieux.
Utilisateurs
- Ingénieurs backend et IA
- Équipes avec des documents privés
- Développeurs qui testent des idées de RAG de graphe
Tâches
- Construire un service de questions-réponses sur des documents internes
- Questions à plusieurs sauts
- Mélanger récupération d'images et de texte
Cas d'usage
- Faire tourner une base de connaissances privée sur votre propre serveur
- Prototyper un backend de récupération avant de vous engager sur un service managé
- Ajouter un ancrage à un LLM que vous hébergez déjà
Fonctionnalités clés
Récupération hybride vecteurs et graphe
LinkingMem exécute un pipeline de récupération en deux étapes. Une requête devient un vecteur et est comparée à un index vectoriel HNSW pour une recherche rapide des plus proches voisins, puis les résultats s'étendent par les arêtes du graphe via un parcours en largeur. L'étape vectorielle trouve les points d'entrée. L'étape de graphe rassemble le contexte alentour. Pour les questions qui reposent sur les relations entre entités, cette seconde étape est souvent ce qui rend la réponse correcte.
Point d'accès de raisonnement à plusieurs sauts
Le moteur expose un point d'accès dédié /query/multihop qui suit plusieurs sauts dans le graphe de connaissances avant de générer une réponse. Il vise les questions qu'aucun document unique ne résout, où le modèle doit combiner des faits de nœuds différents. Vous obtenez une chaîne de preuves liées plutôt qu'un seul morceau correspondant.
Plugins modulaires texte et image
L'inclusion de texte, l'extraction d'entités et la génération de réponses vivent dans un plugin de texte en Python sur le port 8001, tandis que le stockage et l'inclusion d'images tournent dans un plugin séparé sur le port 8002. Vous ne lancez que ce dont vous avez besoin. Le plugin d'image propose deux backends : un mode légende par LLM de vision qui partage l'espace vectoriel du texte, ou un encodeur CLIP pour une vraie similarité visuelle sans appel au LLM.
Client LLM compatible OpenAI
Le client LLM parle l'API compatible OpenAI, donc vous branchez OpenAI, Ollama, Groq, les points d'accès compatibles Gemini et services similaires. Changer de fournisseur est une modification de configuration, pas de code. Besoin d'une inférence locale ? La voie Ollama s'en charge.
Cœur en Rust avec stockage delta résistant aux pannes
La couche de calcul est écrite en Rust et sert une API HTTP sur le port 8000. Elle inclut un stockage delta de type LSM avec journal d'écriture anticipée et verrouillage de fichiers, si bien que les modifications ingérées survivent à un redémarrage. Un cache d'inclusion concurrent (moka) et un cache de résultats réduisent le travail répété sur les requêtes courantes.
Observabilité et authentification intégrées
Les points d'accès d'administration exposent /health, /metrics, /graph/stats et des listes de nœuds, et les métriques arrivent dans un format compatible Prometheus. L'authentification par clé d'API et un limiteur de débit à jetons se trouvent dans le middleware. C'est une couche de moins à construire. Vous placez le moteur devant plusieurs clients dès le départ.
Avantages et inconvénients
Avantages
- Auto-hébergé par défaut, donc les documents privés restent sur votre propre infrastructure.
- L'expansion du graphe traite les questions à plusieurs sauts que la recherche vectorielle simple manque souvent.
- Le client LLM compatible OpenAI vous permet de lancer l'inférence en local via Ollama.
- Les plugins modulaires vous laissent ignorer le support des images ou des fonctions de texte dont vous n'avez pas besoin.
- Code ouvert, avec le cœur Rust complet et les plugins Python disponibles pour lecture et modification.
Inconvénients
- La configuration est de niveau développeur : il faut Docker en plus de Rust 1.80+ et Python 3.11+ pour compiler depuis les sources, ce qui exclut les utilisateurs non techniques.
- Aucune offre hébergée ni tableau de bord web, donc l'hébergement, la montée en charge et la disponibilité sont à votre charge.
- La documentation privilégie le code, ce qui veut dire que vous passerez du temps à lire le dépôt et les fichiers de configuration avant que votre première requête fonctionne.
Questions fréquentes
C'est un moteur de récupération qui répond à des questions à partir de vos propres documents en combinant recherche vectorielle et parcours de graphe, puis en transmettant le contexte récupéré à un LLM. L'étape de graphe est ce qui le distingue d'une configuration RAG basique par correspondance de morceaux.
Contenus associés
Découvrez des outils, des compétences et des articles liés à LinkingMem — Graph-native RAG Engine.
Alternatives à LinkingMem — Graph-native RAG Engine
Base Code
Base44 (Wix) · Programmation · ProductivitéBase Code est un environnement de développement cloud partagé signé Base44. Votre équipe décrit des modifications sur un dépôt GitHub dans le chat, les vérifie en aperçu et les renvoie sous forme de pull requests.
Google EmbeddingGemma 2
Google DeepMind · Rédaction · Image · ProgrammationGoogle EmbeddingGemma 2 est un modèle ouvert de 740 millions de paramètres qui transforme texte, code, images, audio et images vidéo en vecteurs d'un même espace de 768 dimensions, sur un téléphone ou un ordinateur portable.
GitGlow
GitGlow · Programmation · ProductivitéGitGlow est un client Git de bureau qui place votre code et les modifications de vos agents IA dans une même revue, pour savoir ce qui quitte votre machine avant de livrer.
