Marginalia : bilan de trois ans
(marginalia.nu)- Marginalia Search est parti d’une petite expérience visant à trouver le « bel Internet » et est devenu en trois ans un projet à temps plein ; le moteur de recherche est également proche de son état le plus stable à ce jour
- Le travail central de l’année a consisté à nettoyer la base de code et à simplifier l’application afin de réduire la charge d’exploitation et de la rendre plus facile à gérer pour d’autres opérateurs et développeurs
- Auparavant, le changement d’index nécessitait plusieurs jours d’interruption, mais ces interruptions ont désormais disparu et, récemment, les mises à niveau sans interruption sont aussi devenues possibles
- La qualité de recherche s’est améliorée après la prise en charge des mots-clés issus du texte d’ancre ; une fois ce signal de pertinence bien intégré, la capacité à trouver des résultats s’est nettement renforcée
- L’objectif d’indexer 1 milliard de documents est toujours en cours, mais le faible rapport signal/bruit du Web rend la tâche plus difficile que prévu ; le prochain axe portera sur l’amélioration de l’analyse et de l’exécution des requêtes
Trois ans pour passer d’une expérience à un projet à temps plein
- Marginalia Search a commencé il y a trois ans comme une petite expérience, et c’est désormais un projet sur lequel son auteur travaille à temps plein
- Le moteur de recherche a encore des points à améliorer, mais il est jugé comme fonctionnant mieux que jamais jusqu’ici
- L’un des jalons les plus importants a été le départ du moteur de recherche du salon vers des serveurs d’entreprise
- Cette année, l’accent a été mis sur la réduction de la charge d’exploitation à un niveau soutenable, ainsi que sur le nettoyage de la base de code et de l’application pour les rendre plus accessibles à d’autres opérateurs et développeurs
- Le mode d’exploitation a lui aussi beaucoup changé
- Auparavant, le basculement d’index nécessitait plusieurs jours d’interruption du service
- Désormais, les interruptions lors du basculement d’index ont disparu
- Récemment, les mises à niveau sans interruption sont également devenues possibles
- Beaucoup de tâches qui relevaient autrefois de processus manuels de plusieurs semaines se font maintenant en cliquant sur un bouton dans une interface graphique
Qualité de recherche et extension de l’index
- La prise en charge des mots-clés issus du texte d’ancre a eu un effet important sur la pertinence de la recherche
- Juste après le changement, l’intégration n’était pas encore suffisante et l’effet n’était pas immédiatement évident
- Une fois le nouveau signal de pertinence installé, la capacité du moteur de recherche à trouver des résultats pertinents s’est nettement améliorée
- Grâce au soutien de NLnet, le projet est devenu un travail à temps plein il y a environ huit mois
- Ne pas trop travailler reste une difficulté
- L’auteur essaie de prendre au moins un jour de repos par semaine et estime qu’il travaille plus intelligemment lorsqu’il est bien reposé
- L’objectif de 1 milliard de documents indexés est toujours en cours
- La difficulté tient moins à la capacité du logiciel à traiter les données qu’au mauvais rapport signal/bruit du Web
- L’une des grandes raisons pour lesquelles le moteur de recherche fonctionne relativement bien est ce qu’il choisit de ne pas indexer
- La taille de l’index est passée de 50 à 100 millions il y a un an à 220 millions lors du dernier crawl
- Une fois le prochain cycle de crawl terminé, sur la base de la croissance des deux partitions déjà achevées, elle pourrait atteindre 290 à 300 millions
Prochaines améliorations et soutien
- La prochaine cible d’amélioration est l’analyse et l’exécution des requêtes
- Ce domaine offre une grande marge de progression
- Avant de s’y attaquer pleinement, un travail préparatoire est en cours pour nettoyer le code concerné
- Les grands bonds en avant du projet sont toujours venus d’expérimentations et, même s’il existe des travaux planifiés, ce qui produira réellement de grands changements pourrait bien être quelque chose de non planifié, comme le texte d’ancre
- Des remerciements sont adressés à NLnet, FUTO, aux soutiens Patreon, aux sympathisants et aux utilisateurs
1 commentaires
Avis sur Hacker News
Je l’ai mis en favori et je m’en sers pour trouver des ressources ultra-niche sur la modélisation numérique.
Pour les solveurs, la génération de maillage et les méthodes d’optimisation, les ressources qu’il trouve sont bien meilleures que ce qu’on peut trouver sur Google, et il ressort aussi bien des documents des années 80–90.
Quand on ne se contente pas d’utiliser des packages commerciaux tout faits, pouvoir trouver ce type de connaissances et des exemples de code Fortran est très précieux.
Oui, ça ressemble vraiment à la recherche d’avant.
Même si une recherche comme « all quiet on the western front book movie differences » ne donne rien, en 1998 AltaVista ne trouvait pas non plus ce genre de requête formulée ainsi.
En revanche, si on tapait seulement « all quiet on the western front », on obtenait plein de sites rares, comme des blogs personnels ; avec « polytopes », on tombait sur des articles universitaires et des sites de code ; et « rust generics » faisait ressortir des discussions de listes de diffusion, des blogs, des groupes de discussion Rust, des sites personnels et des échanges spécialisés.
C’était ça, la recherche web d’autrefois, et la vraie question est de savoir comment rendre ça financièrement viable sur le long terme.
Les coûts réels d’exploitation se résument à environ 100 dollars par mois de colocation, plus les dépenses personnelles, donc l’argent qui rentre dure plus longtemps qu’on ne pourrait le penser.
À l’avenir, avec davantage de finition, il pourrait y avoir des financements supplémentaires venant de personnes partageant la même vision, ou la possibilité de vendre un accès API à d’autres moteurs de recherche.
La recherche est notoirement difficile à monétiser autrement que par la publicité, mais avec des coûts bas, cela semble pouvoir être une voie assez raisonnable.
J’ai essayé de chercher « transformers intuition » et les résultats étaient vraiment impressionnants.
Google m’a envoyé vers des sites optimisés SEO, surtout Medium et des sites clinquants en apparence mais assez pauvres sur le fond, alors que Marginalia s’en sortait bien mieux.
Un fil rétrospectif, six mois après le lancement, qui montre qu’il fonctionnait déjà bien tout en ayant encore des aspects ambigus : https://news.ycombinator.com/item?id=28550764
Cela dit, avec le filtre par défaut actuel, il me semble qu’il y a un peu trop de résultats Reddit, Stack Exchange et Wikipedia.
La partie qui m’a le plus parlé, c’est celle-ci :
si c’est plus difficile que prévu, ce n’est pas parce que le logiciel n’arrive pas à suivre, mais parce que le rapport signal/bruit du web est mauvais ; et si ce moteur de recherche fonctionne relativement bien, c’est en grande partie grâce à ce qu’il choisit de ne pas indexer.
Je n’utilise pas souvent Marginalia, parce que je suis habitué à Google, mais le projet lui-même est excellent.
Comme les sites SEO spammy et les réponses générées par IA semblent se multiplier, je pense que je vais l’utiliser plus souvent à l’avenir.
Dans un scénario optimiste, s’ils terminent les travaux sur les requêtes et l’exécution d’ici cet été, il pourrait s’en approcher.
Je me demande, pour Viktor, si Common Crawl [0] pourrait être utile.
Avec environ 100 To et 3,35 milliards de pages aujourd’hui, le téléchargement prendrait longtemps si ce n’est pas traité directement depuis S3, et je ne sais pas trop ce que vaut le rapport signal/bruit.
[0] https://commoncrawl.org/overview
C’est un super moteur de recherche.
Je compte bientôt regarder le code source ; en cherchant « ROME2D16-2T », il m’a sorti des résultats pertinents depuis des sources obscures, et c’était utile.
J’ai essayé trois recherches Google récentes.
« india test cricket lowest total » n’a donné ni bon résultat ni réponse ; « raid calculator » donnait des résultats corrects, mais à cause du mot raid il y avait aussi du bruit, comme des pages d’éditeurs de sauvegardes/cheats pour Pokémon.
« all quiet on the western front movie book differences » donnait 0 résultat, une page complètement vide.
C’est un outil destiné à trouver des documents sur Internet plutôt qu’à répondre à des questions ; une fonction de réponse serait souhaitable, mais elle se fait souvent au détriment de la capacité à trouver des documents.
Les résultats Pokémon concernaient une application appelée « raidcalc », donc pour un moteur de recherche qui ne profile absolument pas l’utilisateur et ne connaît pas ses centres d’intérêt, cela semble être une correspondance plutôt correcte.
Pour « all quiet on the western front movie book differences », on dirait que la requête a atteint la limite de longueur ; c’est un vieux vestige de l’époque où les requêtes longues étaient mal gérées, et il devrait être possible de le supprimer.
La limite a été relevée, mais les résultats restent assez médiocres, et cela relève précisément du prochain chantier : la compréhension et l’exécution des requêtes.
Aujourd’hui, le moteur ne comprend pas une requête comme le ferait un humain, en regroupant
all quiet on the western frontcomme une expression unique qu’il serait bon de trouver dans le titre ou plusieurs fois, tandis quemovie,booketdifferencessont importants dans le document sans devoir forcément apparaître dans cet ordre exact.Actuellement, il cherche plutôt des documents où tous les mots apparaissent à proximité, ou bien où les mots individuels ont une forte pertinence tf-idf, ce qui n’est pas adapté à cette requête.
Intéressant. Quelqu’un a trouvé un site web quelconque [0] où l’auteur a patché le binaire de C&C Tiberian Sun juste pour le fun afin d’y ajouter la prise en charge d’IPv6.
Ça garde vraiment un fort parfum du vieux web qui me manque.
Curieusement, ça m’a rappelé Searchlores [1] de Fravia ; si Umberto Eco s’était intéressé aux ordinateurs, j’imagine que ça aurait ressemblé à ça.
Le site lui-même donnait aussi l’impression du labyrinthe de la bibliothèque du Nom de la rose : on tourne n’importe quel coin, on découvre quelque chose d’incroyable, puis plus tard on le perd pour toujours :D
[0] http://ts.sesse.net/
[1] https://www.biostatisticien.eu/www.searchlores.org/indexo.ht...