Bloop Gratuit

-

Bloop est un moteur de recherche de code basé sur la compréhension sémantique de l'IA. Il utilise une application de bureau pour aider les développeurs à localiser, comprendre et parcourir rapidement les bibliothèques de codes en langage naturel. Il prend en charge l'indexation locale et la protection de la vie privée.

Bloop Interface du produit

Le moteur de recherche de code sémantique IA de Bloop

Paramètres et statistiques de base

Paramètres Données
Positionnement du produit Moteur de recherche de code sémantique IA (application de bureau)
Compétences de base Recherche de code en langage naturel, compréhension de la base de code, interprétation du code IA Code Studio
Plateforme de course macOS, Windows, Linux (application de bureau Tauri)
Méthode de recherche Recherche sémantique en langage naturel, recherche d'expressions régulières, recherche de symboles
Moteur d'indexation Index hybride Tantivy (lexical) + Qdrant (vecteur)
Navigation des codes Tree-sitter Navigation précise par symboles (10+ langues)
Politique de confidentialité Intégration locale sur l'appareil, le code n'est pas téléchargé
Licence Open Source Apache2.0
Étoiles GitHub 9,5k+
Dernière version v0.6.5 (2024-04-24)
Statut du projet Archivé en janvier 2025, hors maintenance

Différences générationnelles dans les méthodes de recherche : La différence essentielle entre les recherches Bloop et grep traditionnelles est la compréhension de l'intention. La recherche traditionnelle nécessite que les développeurs connaissent avec précision les mots-clés qu'ils souhaitent rechercher (noms de fonctions, noms de variables). Bloop autorise les questions en langage naturel telles que « Où est la vérification des autorisations une fois que l'utilisateur s'est connecté ? » et l'IA mappe la sémantique à des emplacements de code spécifiques. Cette capacité est particulièrement critique lorsque l'on travaille avec des bases de code inconnues : les développeurs n'ont pas besoin de savoir « comment s'appelle cette fonction », juste « ce qu'elle fait ».

Reconnaissance des utilisateurs et du marché

Bloop a accumulé plus de 9,5 000 étoiles GitHub et 597 Forks dans la communauté open source, couvrant les utilisateurs de bureau sur trois plates-formes : macOS, Windows et Linux. Le projet a publié un total de 48 versions et 29 contributeurs ont participé au développement.

Utilisation de signaux :

  • La version open source a été intégrée par Gitpod et Codeanywhere et prend en charge le démarrage cloud en un clic
  • Le montant total du téléchargement n'a pas été divulgué, mais la page GitHub Releases fournit les packages d'installation dmg/deb/AppImage/NSIS pour chaque version, couvrant les plates-formes de bureau grand public.
  • Le formulaire produit est utilisé comme référence de référence pour les fonctions de recherche sémantique par Sourcegraph Cody, Tabnine et d'autres outils similaires.

Statut d'archivage : en janvier 2025, Bloop a officiellement marqué le référentiel GitHub comme archive (lecture seule). Cela signifie que la version open source ne recevra plus de nouvelles fonctionnalités ni de mises à jour de sécurité, mais que les versions existantes fonctionneront toujours.

Avantage de coût

La structure de coûts de Bloop est extrêmement simple : elle est entièrement gratuite et sans paywall.

Client C/Personnel : le client de bureau est gratuit et peut indexer les bases de codes locales sans inscription. La limitation vient principalement du quota du LLM intégré (les premières versions utilisant GPT-4 doivent fournir leur propre clé API, la dernière version a un quota gratuit intégré mais il existe une limite d'appels quotidienne, qui est soumise aux invites de l'application).

Développeur/API : Aucune solution API indépendante n'est divulguée. L'auto-construction peut être utilisée pour le développement secondaire et le déploiement personnalisé basé sur la version open source + le SDK Rust de Bloop, mais vous devez supporter le coût de la clé API OpenAI ou du LLM d'auto-déploiement.

Entreprise/Privé : version entreprise non divulguée. Les entreprises peuvent utiliser le code open source pour créer le leur, mais elles doivent prêter attention aux exigences de conformité de la licence Apache 2.0 et au risque de manquer des mises à jour de sécurité causées par l'archivage du projet.

Coûts cachés : le produit a été archivé et il n'y a aucune mise à jour de maintenance ni de sécurité ultérieure. Les entreprises doivent supporter elles-mêmes les coûts de maintenance.

Fonctions principales

  • Recherche sémantique en langage naturel : recherchez du code avec une description familière ("Trouver la logique pour l'authentification de l'utilisateur") et l'IA fait automatiquement correspondre les fonctions, les classes, les modules et les fichiers. Par rapport à la recherche par mot clé pure, le seuil de recherche est considérablement abaissé, ce qui est particulièrement adapté aux bases de codes peu familières.
  • Code Studio : le panneau interactif LLM intégré prend la base de code actuelle comme contexte et prend en charge la pose de questions, la génération d'extraits de code et la génération de correctifs git diff. Les développeurs peuvent terminer le processus « rechercher → comprendre → modifier » sans quitter Bloop.
  • Recherche régulière extrêmement rapide : conserve les capacités de recherche d'expressions régulières traditionnelles, obtient une réponse en millisecondes basée sur l'indexation et est compatible avec les habitudes de recherche existantes des développeurs.
  • Navigation précise du code : basé sur l'analyse syntaxique de Tree-sitter, il prend en charge la navigation « passer à la définition » et « trouver une référence » dans plus de 10 langages de programmation, couvrant les langages courants tels que TypeScript, Python, Rust, Go et Java.
  • Recherche de symboles et filtrage des requêtes : prend en charge la recherche de symboles par nom de fonction, nom de variable et nom de type ; les résultats peuvent être affinés par des filtres tels que la langue, le chemin du fichier et la plage de répertoires.
  • Index agrégé multi-entrepôts : la v0.6.0 introduit la prise en charge de plusieurs entrepôts, permettant l'indexation et l'analyse simultanées de plusieurs entrepôts Git, adaptées à l'architecture de microservices et aux scénarios Monorepo.

Synergie fonctionnelle : La combinaison de la recherche en langage naturel et de Code Studio est la synergie clé : après avoir recherché l'emplacement du code, vous pouvez directement demander dans Code Studio "Quelles sont les conditions aux limites de cette logique" et "Quels appelants seront affectés par la modification de cela", sans passer à d'autres outils ou IDE. La recherche, l'interprétation et la modification sont effectuées en série au sein d'une seule application, réduisant ainsi les coûts de changement de contexte.

Evolution du modèle et de la version

L'évolution de la version de Bloop peut être divisée en trois étapes :

Exploration précoce (~2023)

Le produit a été lancé sous forme alpha/bêta, se concentrant sur la recherche sémantique de base et les capacités d'indexation de l'entrepôt Git. La version initiale utilise GPT-3.5 comme LLM sous-jacent, prenant en charge la recherche dans un référentiel unique et la navigation par symboles.

Période d'expansion des fonctions (2023-12 ~ 2024-04)

  • v0.5.11 (2023-12-15) : introduction de la recherche hybride (recherche hybride lexicale + sémantique), la précision de la recherche est considérablement améliorée ; prend en charge GPT-4 Turbo (contexte 24k) ; permet une indexation rapide de copie superficielle de l'entrepôt Git.
  • v0.5.12 (2023-12-22) : Filtrage du chemin des mots clés Qdrant pour améliorer la pertinence de la recherche ; plusieurs optimisations de stabilité.
  • v0.6.0 (2024-01-31) : introduction de la prise en charge de plusieurs référentiels, permettant d'indexer plusieurs référentiels Git en même temps ; Qdrant on_disk_payload réduit l'utilisation de la mémoire.
  • v0.6.3 (2024-02-21) : prise en charge de la coloration du code COBOL ; résoudre le problème des caractères répétés dans la saisie chinoise ; Correction de panique lors de l'analyse du symbole de l'agent.
  • v0.6.4 (09/04/2024) : Code Studio prend en charge l'ajout de fichiers par lots ; de nouveaux tests unitaires front-end sont ajoutés.
  • v0.6.5 (2024-04-24) : version finale, prend en charge l'interprétation des fichiers par langue de l'interface utilisateur (capacité d'interprétation multilingue).

Période d'archivage (2025-01)

Le 2 janvier 2025, le référentiel Bloop a été marqué pour archivage. La raison officielle du dépôt n'a pas été annoncée, mais elle serait liée à l'obstruction de la commercialisation ou à l'ajustement des ressources de l'équipe.

Avantages techniques

Architecture d'index hybride (recherche hybride) : Bloop utilise Tantivy (moteur de recherche lexical) et Qdrant (base de données vectorielle) pour créer des index doubles en même temps. L'index lexical gère la correspondance exacte et les requêtes régulières, et l'index vectoriel gère la correspondance de similarité sémantique. Les deux sont fusionnés et triés via l’algorithme RRF (Reciprocal Rank Fusion). La valeur pratique de cette architecture est que l'indexation lexicale est rapide (au niveau de la milliseconde) lors d'une correspondance exacte, et que l'indexation vectorielle est précise (compréhension de l'intention) lors d'une correspondance floue. Les deux se complètent et couvrent l’ensemble du scénario de recherche.

L'intégration côté appareil garantit la confidentialité : l'intégration vectorielle de la recherche sémantique est entièrement calculée côté appareil local et le contenu du code n'est téléchargé sur aucun serveur cloud. Il s'agit d'un différenciateur essentiel de Bloop par rapport aux solutions basées sur le cloud comme Sourcegraph Cody : les équipes d'entreprise sensibles à la sécurité du code peuvent indexer en toute confiance des bases de codes privées.

Pile technologique Tauri + Rust : le bureau utilise le framework Tauri (backend Rust + frontend React), qui utilise moins de mémoire (environ 50 à 100 Mo de mémoire libre) et un package d'installation plus petit (environ 80 Mo) que la solution Electron. Le noyau de recherche du backend Rust utilise des E/S asynchrones et des fichiers mappés en mémoire, et les performances d'indexation et de recherche des grands entrepôts sont meilleures que celles des produits concurrents basés sur Node.js.

Navigation respectueuse de la syntaxe Tree-sitter : utilisez Tree-sitter au lieu d'expressions régulières pour l'analyse des symboles de code, qui peut comprendre avec précision la structure arborescente de syntaxe abstraite du code et prendre en charge la navigation dans des structures syntaxiques complexes telles que les étendues imbriquées, les paramètres génériques et l'expansion des macros.

Comment utiliser

Le chemin d'utilisation de Bloop est simple et direct, utilisant principalement le client de bureau :

  1. Téléchargement et installation : Téléchargez le package d'installation pour la plate-forme correspondante à partir de la page des versions de GitHub (https://github.com/BloopAI/bloop/releases) (macOS prend en charge Intel/Apple Silicon, Linux fournit deb et AppImage et Windows fournit le package d'installation NSIS).
  2. Premier lancement : l'application démarre la sélection d'un référentiel Git local ou d'un référentiel GitHub cloné à indexer. Le processus de création d'index varie en fonction de la taille de l'entrepôt (~ 1 à 3 minutes pour un entrepôt de taille moyenne).
  3. Code de recherche : saisissez une requête en langage naturel (telle que « gérer le rappel de paiement ») ou une expression régulière (telle que « function.auth. ») dans la zone de recherche. Les résultats sont triés par pertinence, affichant des extraits de code et des chemins de fichiers.
  4. Utilisez Code Studio : cliquez sur "Ouvrir dans Studio" sur la page des résultats de recherche ou de navigation dans le code pour accéder au panneau Code Studio, utilisez le segment de code actuel comme contexte pour parler à l'IA, prendre en charge la logique du code, générer des suggestions de modification ou créer git diff.
  5. Code de navigation : double-cliquez sur le résultat de la recherche pour ouvrir la vue des fichiers et utilisez la navigation arborescente pour accéder aux définitions et aux références.

Solution d'auto-construction : les développeurs peuvent également créer à partir du code source (nécessite la chaîne d'outils Rust et Node.js), voir les instructions de construction dans la branche oss README du référentiel GitHub. La version auto-construite ne collecte pas de données de télémétrie et vous devez configurer vous-même la clé API OpenAI.

Prix des produits

Bloop est totalement gratuit.

Planifier Prix ​​ Descriptif
Client de bureau Gratuit Fonctionnalités complètes, y compris la recherche sémantique Code Studio, la navigation dans le code
Version auto-construite Gratuit Compilez vous-même le code open source, vous devez apporter votre propre clé API LLM

Côté/Individuel : utilisation gratuite, sans aucune restriction de fonctions payantes. Il peut y avoir des quotas quotidiens pour les appels LLM intégrés, qui sont soumis aux invites réelles de l'application.

Développeurs/API : aucune API autonome fournie. La version open source peut s'intégrer dans CI/CD ou d'autres workflows.

Entreprise/Privé : aucune version entreprise officielle n'est disponible. Vous pouvez créer le code et le déployer vous-même, mais vous devez gérer vous-même l'exploitation, la maintenance et les mises à jour de sécurité (le projet a été archivé).

Scénarios d'application

  • Exploration de la base de code héritée : lorsque les développeurs reprennent un ancien projet auquel ils n'ont jamais touché auparavant, ils peuvent localiser les fonctions d'entrée et la logique des clés grâce à la recherche en langage naturel, réduisant ainsi le temps moyen nécessaire pour « trouver le code correspondant » de 30 à 60 minutes (navigation fichier par fichier) à 3 à 5 minutes (recherche sémantique). Point de validation : testez la précision de la recherche dans de vrais projets existants (tels que des projets Java/Spring avec plus de 100 000 lignes).
  • Transfert collaboratif entre équipes : lorsque l'équipe A remet les microservices à l'équipe B, l'équipe B utilise Bloop pour rechercher et comprendre la logique métier de base de l'équipe A, remplaçant ainsi la manière traditionnelle de lire les documents de conception et les commentaires de code un par un. Point de vérification : la qualité de la correspondance sémantique lors de la recherche implique des termes commerciaux tels que « processus de remboursement » et « contrôle des risques ».
  • Évaluation et sélection de projets open source : Avant de décider d'introduire un projet open source, le leader technique utilise Bloop pour rechercher ses modules clés (certification de sécurité, conception d'API de persistance des données), et évaluer rapidement si la qualité du code et l'architecture correspondent aux besoins de l'équipe. Point de vérification : pour les projets open source dont la langue maternelle n'est pas l'anglais (tels que les projets open source nationaux avec des annotations chinoises), si la compréhension sémantique de la recherche est toujours valide.
  • Localisation rapide des bugs : testez les commentaires sur des problèmes tels que "Le jeton n'est pas effacé après la déconnexion". Recherchez « déconnexion », « effacer le jeton », « destruction de session » et d'autres descriptions en langage naturel pour localiser directement la logique de nettoyage du jeton correspondante, ce qui permet d'économiser 40 à 60 % du temps de dépannage par rapport au suivi manuel de la chaîne d'appels.

Personnes concernées

  • Développeurs full stack et back-end : le groupe d'utilisateurs principal de Bloop. Qu'il s'agisse de reprendre un ancien projet, de participer à un grand monorepo ou à une architecture de microservices, la recherche sémantique peut réduire considérablement le temps nécessaire pour « trouver le bon code ». La prise en charge de la navigation arborescente pour les langages grand public tels que Rust, TypeScript, Go et Java est complète.
  • Leader technique et architecte : Lorsqu'il est nécessaire de comprendre l'état actuel de l'architecture sur plusieurs bases de code, les capacités d'indexation et de recherche multi-entrepôts rendent possible la révision globale du code. La fonction contextuelle de fichier batch de Code Studio convient à l'analyse architecturale.
  • Contributeur Open Source : lorsque vous entrez en contact pour la première fois avec un projet open source inconnu, utilisez Bloop pour rechercher des implémentations de fonctions clés, remplaçant ainsi la manière inefficace de lire fichier par fichier. Pour les grands projets open source (par exemple Kubernetes, React), la recherche sémantique est beaucoup plus rapide que la navigation dans la structure des répertoires.
  • Ne convient pas aux personnes :
    • Scénarios qui nécessitent une complétion de code approfondie et un développement basé sur l'IA (Bloop se positionne comme un IDE de recherche et de compréhension, pas comme un IDE de génération de code)
    • Entreprises nécessitant une maintenance de projet à long terme (Bloop a été archivé et ne sera pas mis à jour)
    • Nécessite une fonction de collaboration d'équipe cloud (Bloop se concentre sur la recherche locale et ne fournit pas de partage de base de connaissances en équipe)

Résumé et Outlook

Bloop offre une excellente expérience dans le scénario segmenté de « recherche de code sémantique IA » : la technologie d'indexation hybride permet à la recherche de prendre en compte à la fois la précision et la vitesse, l'intégration côté appareil garantit la confidentialité du code et la pile technologique Tauri+Rust apporte une expérience de bureau réactive et fluide. Sa suite de produits « rechercher → comprendre → modifier » (barre de recherche → Code Studio → git diff) permet aux développeurs d'effectuer des tâches courantes sans quitter l'application.

Limites et incertitudes actuelles : Le fait que le projet ait été archivé signifie qu'il n'y aura pas de mises à jour de fonctionnalités ni de correctifs de sécurité ultérieurs, ce qui constitue un risque sérieux en termes de durabilité pour les utilisateurs qui ont besoin d'une utilisation à long terme. Pour les grands monorepo (au niveau d'un million de lignes), la première création d'index prend encore beaucoup de temps (des dizaines de minutes). La précision de la recherche sémantique pour les langages dynamiques (Python/JavaScript) est inférieure à celle des langages typés statiquement (Rust/Go/Java), et des extraits de code peu pertinents seront mélangés dans les résultats de la recherche.

Évaluation des risques d'approvisionnement/d'adoption : Bloop convient aux développeurs individuels ou aux petites équipes qui peuvent l'utiliser gratuitement pour améliorer l'efficacité de la recherche de code. Pour une adoption au niveau de l'entreprise, des évaluations clés doivent être effectuées : disponibilité à long terme après l'archivage du projet (il est recommandé que le code fork soit maintenu indépendamment), sécurité des données d'indexation (bien qu'elles soient traitées localement, la télémétrie de la version open source téléchargera toujours les données d'utilisation et la version auto-construite peut être désactivée) et si la précision de la recherche répond aux scénarios de base de l'équipe. Il est recommandé d'effectuer un test comparatif d'une semaine (recherche Bloop vs recherche grep/IDE traditionnelle) à petite échelle (2-3 personnes) avec une vraie base de code, puis de décider s'il faut déployer à grande échelle après avoir quantifié les gains de temps de recherche.

Outils associés : github-copilot, cursor

Informations de version

  • Bloop 0.6.5 :La version finale rendue publique prend en charge l'interprétation des fichiers en fonction de la langue définie par l'utilisateur et de plusieurs correctifs de stabilité. Projet archivé en janvier 2025.
  • Bloop 0.6.4 :Prend en charge l'ajout de plusieurs fichiers à la fois dans Code Studio, l'ajout de tests unitaires FE et la mise à jour des dépendances.
  • Bloop 0.6.0 :Introduisez la prise en charge de plusieurs référentiels (Multi-repo) et prenez en charge Qdrant on_disk_payload pour améliorer la stabilité des index à grande échelle.
  • Bloop 0.5.11 :Présentation de la recherche hybride (recherche hybride lexicale et sémantique), prenant en charge l'indexation rapide des copies superficielles de l'entrepôt Git et la prise en charge de GPT-4 Turbo.

Avis des utilisateurs

  • Chargement des avis...