Une solution open-source qui réduit l’utilisation des tokens de 98% par rapport à grep
Dans le monde du développement logiciel, la recherche efficace dans des bases de code volumineuses est un défi constant. Stephan et Thomas, deux développeurs passionnés, ont récemment ouvert le projet Semble pour résoudre ce problème. Leur outil innovant utilise des embeddings statiques Model2Vec et le système BM25 pour offrir une recherche de code ultra-rapide et économisant les tokens.
Pourquoi Semble ?
L’équipe a constaté que les agents comme Claude Code, lorsqu’ils ne trouvent pas directement le code recherché, utilisent souvent grep, ce qui consomme beaucoup de tokens et n’est pas toujours efficace. Les solutions existantes étaient soit trop lentes, soit nécessitaient des clés API, ou encore offraient une qualité de récupération médiocre. Semble combine plusieurs technologies pour offrir une solution optimale :
- Embeddings statiques Model2Vec utilisant le modèle potion-code-16M.
- BM25, un algorithme de récupération d’information efficace.
- Fusion via RRF (Reciprocal Rank Fusion) et rerank avec des signaux spécifiques au code.
Performances impressionnantes
Semble se distingue par ses performances exceptionnelles. Sur un benchmark de 1250 paires requête/document à travers 63 dépôts et 19 langages, Semble utilise 98% de tokens en moins que grep+read. De plus, il atteint 99% de la qualité de récupération d’un transformeur entraîné sur du code avec 137M paramètres, tout en étant 200 fois plus rapide. Les temps d’indexation et de requête sont également remarquables : environ 250 ms pour indexer un dépôt typique et seulement 1,5 ms par requête sur CPU.
Facilité d’utilisation
Semble est conçu pour être simple à utiliser. Il n’a besoin ni de clés API, ni de GPU, ni de services externes. Il peut être intégré facilement dans des outils comme Claude Code, Cursor, Codex et OpenCode grâce à son serveur MCP. L’installation est également simplifiée avec une commande unique :
claude mcp add semble -s user -- uvx --from "semble[mcp]"
Perspectives
Avec des performances aussi impressionnantes, Semble pourrait bien devenir un outil incontournable pour les développeurs et les équipes travaillant sur des projets de grande envergure. Son efficacité en termes de tokens économisés et sa rapidité en font une solution idéale pour les recherches de code dans des environnements où la performance est cruciale.
Pour en savoir plus, vous pouvez consulter le dépôt GitHub de Semble ainsi que les benchmarks détaillés et la méthodologie utilisée. Les développeurs sont également invités à donner leur feedback et à poser des questions.
Tags: [code-search, open-source, intelligence-artificielle, performance, développement-logiciel]