Recherche sémantique locale pour conversations IA avec fastembed et LanceDB

✍️ OpenClawRadar📅 Publié: March 20, 2026🔗 Source
Recherche sémantique locale pour conversations IA avec fastembed et LanceDB
Ad

Un développeur a mis en œuvre un système de recherche sémantique local pour l'historique des conversations IA, traitant 368 000 messages sans dépendances cloud ni clés API. Le projet utilise fastembed avec le modèle BAAI/bge-small-en-v1.5 pour les embeddings basés sur CPU et LanceDB comme base de données vectorielle qui fonctionne comme un simple répertoire sans processus serveur.

Stack technique

  • Embeddings : fastembed avec le modèle BAAI/bge-small-en-v1.5 (384 dimensions)
  • Base de données vectorielle : LanceDB - répertoire unique, pas de processus serveur, compatible avec l'ajout
  • Ingestion : Récupère depuis des transcriptions de session JSONL (Claude Code, toute exportation de chat)
  • Performance des embeddings : ~500 documents/sec sur CPU M4
Ad

Détails clés de l'implémentation

Le développeur a tiré plusieurs leçons pratiques pendant les 4 mois d'itération :

  • Embedding sélectif : Les premières versions embarquaient chaque message, ce qui réduisait le rapport signal/bruit. L'implémentation actuelle n'embarque que les messages utilisateur et les messages assistant avec du contenu substantiel (en ignorant les réponses comme "bien sûr, voici ce code"), réduisant le nombre de vecteurs de 60 % tout en améliorant la qualité de recherche.
  • Stratégie de segmentation : Passer de segments de taille fixe à des segments par tour de conversation a fait une énorme différence dans la pertinence de la récupération. Le choix du modèle (essayé nomic-embed-text, bge-large, all-MiniLM) a montré des différences marginales par rapport à l'approche de segmentation.
  • Avantages de LanceDB : Le développeur a trouvé LanceDB "stupidement sous-estimé pour l'échelle personnelle" - pas de serveur, pas de Docker, juste un répertoire avec ajout instantané de nouveaux vecteurs, remplaçant une configuration pgvector surdimensionnée.
  • Workflow de ré-embedding : Le modèle bge-small-en-v1.5 à 384 dimensions est suffisamment rapide pour ré-embarquer toutes les heures via une tâche cron. Une ré-indexation complète de 117 000 vecteurs prend environ 4 minutes sur du matériel M2.

Métriques de performance

  • Messages ingérés au total : 407 000
  • Vecteurs indexés : 87 000
  • Latence de recherche (p50) : 12 ms sur 117 000 vecteurs
  • Temps de ré-indexation complet : ~4 minutes (M2)
  • Stockage : ~180 Mo sur disque
  • Clés API nécessaires : 0

Le projet est open source sous licence MIT et disponible sur github.com/mordechaipotash/brain-mcp. L'installation se fait via pipx install brain-mcp && brain-mcp setup.

📖 Read the full source: r/LocalLLaMA

Ad

👀 See Also

ScreenMind : Mémoire IA locale qui indexe l’intégralité de votre activité informatique
Tools

ScreenMind : Mémoire IA locale qui indexe l’intégralité de votre activité informatique

ScreenMind capture votre écran, vos réunions et notes vocales en local via Gemma 4 E2B et llama.cpp. Fonctionne avec 4 Go+ VRAM en quantification Q4. Recherchez vos activités passées, discutez avec votre historique et connectez-vous à Claude/Cursor via MCP.

OpenClawRadar
Cadre de Défense en Couches pour l'Application des Règles de Code Claude
Tools

Cadre de Défense en Couches pour l'Application des Règles de Code Claude

Un professionnel des opérations informatiques a construit un cadre de défense à 8 couches pour faire respecter les règles de Claude Code après avoir découvert que les invites CLAUDE.md et les crochets de blocage pouvaient être contournés. L'approche adapte le modèle du fromage suisse de l'investigation d'accidents pour empêcher les contournements.

OpenClawRadar
Clooks : Un environnement d'exécution de hooks persistants pour Claude Code
Tools

Clooks : Un environnement d'exécution de hooks persistants pour Claude Code

Clooks est un démon HTTP persistant qui gère la distribution des hooks Claude Code sans création de processus, réduisant la latence de ~34,6 ms à ~0,31 ms par invocation. Il inclut la migration automatique, des gestionnaires LLM avec modèles de prompts, la résolution des dépendances et l'empaquetage des plugins.

OpenClawRadar
Agent Smith : Une commande pour structurer les serveurs MCP, les compétences et un pipeline ticket-vers-PR pour Claude Code
Tools

Agent Smith : Une commande pour structurer les serveurs MCP, les compétences et un pipeline ticket-vers-PR pour Claude Code

Agent Smith scanne votre dépôt, détecte la stack exacte (Go/Echo, React/Zustand, golang-jwt, pgx, etc.), met en place les serveurs MCP, hooks et compétences adaptés à votre configuration, et fournit un pipeline autonome du ticket à la PR.

OpenClawRadar