2 moteurs de recherche libres et décentralisés Seeks et Yacy 2/2

closeCet article a été publié il y a 9 ans 6 mois 21 jours, il est donc possible qu’il ne soit plus à jour. Les informations proposées sont donc peut-être expirées.

Après vous avoir présenté Yacy, c’est au tour d’une autre solution dénommée Seeks. L’approche proposée est différente. Seeks s’apparente davantage à un meta-moteur doté de fonction d’apprentissage de vos préférences de navigation et d’un fonctionnement en pair à pair.

Seeks Meta-engine / Meta-sourcesInstallation

Il y a différentes possibilités selon la distribution GNU/Linux que vous utilisez. Elles sont décrites sur cette page du Wiki de Seeks. J’ai personnellement testé l’installation sur une machine virtuelle avec la distribution Debian en version 6.0. J’ai utilisé pour cela le dépôt mis à disposition à cet effet.

Après quelques soucis, peut-être liés à mon installation et avoir tenté de compiler Seeks suite à l’indisponibilité du dépôt Debian, j’ai finalement réussi à faire fonctionner ce dernier. Mais c’est essentiellement grâce au retour en ligne du dépôt Debian qui permet alors facilement d’installer les librairies dont a besoin Seeks pour fonctionner.

Je n’ai pas pu cependant faire fonctionner la version dite « experimental » et j’ai donc continué mes tests sur la version stable qui, elle, n’a posé aucun problème. J’ai laissé quelques traces de cette expérience sur le forum francophone de seeks, où l’on a répondu à mes questions rapidement.

Par défaut, Seeks fonctionne comme un proxy web. Il faut donc configurer votre navigateur pour passer par seeks. Les recherches sont alors interceptées et redirigées vers Seeks qui vous présentera le résultat.

Il est également possible de configurer Seeks pour disposer d’une page de type portail de recherche si on souhaite rendre son installation public à l’image par exemple de www.seeks.fr.

Utiliser Seeks

On ne peut pas vraiment comparer Yacy et Seeks, car les deux logiciels n’ont pas fait le même choix technologique. Là où Yacy est un « pur » moteur de recherche, Seeks est un méta-moteur. C’est-à-dire qu’il construit le résultat de ces recherches en allant interroger d’autres moteurs. Il effectue alors une synthèse des différents résultats pour les soumettre à l’utilisateur.

En face de chaque résultat se trouve une icône indiquant l’origine du résultat, à savoir le moteur de recherche dont il est issu. Il est également possible de filtrer le résultat des recherches par type de média : texte, image, vidéo ou encore par tweet ce qui est pour le moins original mais restreint à Twitter à ce que j’ai pu voir. Autre option, le regroupement par type qui permet de regrouper les résultats selon qu’il s’agisse de pages web, de wiki ou encore de vidéos.

Quand on compare les résultats avec une recherche sur Google, on retrouve effectivement une bonne partie des résultats, mais pas dans le même ordre ; certains sont d’ailleurs absents. Cela est probablement dû au fait que Google est interrogé par Seeks au lieu de recevoir la requête de mon navigateur. Il doit manquer toutes les informations que Google stocke sur notre profil et qui lui permettent « d’améliorer » les résultats présentés. Mais est-ce un mal ?

Les résultats vont aussi être triés selon nos habitudes de navigation, mais cette fois c’est Seeks qui gère ces informations. J’ai constaté ce comportement en voyant que des articles que j’avais consultés, étaient remontés dans le résultat d’une seconde recherche par rapport à une première fois.

Seeks offre aussi un fonctionnement en mode pair à pair. L’objectif est d’affiner encore les résultats à l’aide de ceux des autres utilisateurs. Bien évidement ce partage d’informations se fait de façon anonyme et il n’est pas possible de savoir qui a cherché quoi à l’aide de seeks. Tout passe par une table de hachage distribuée. Elle permet de mettre en relation les utilisateurs effectuant des recherches similaires.

La contre-partie de ce fonctionnement en mode pair à pair est le même que pour Yacy, les temps de réponses sont plus long. Une différence sur ce point, puisque dans Seeks il faut ajouter les pairs avec lesquelles on souhaite collaborer. Il n’y a pas comme pour Yacy de mécanisme de découverte automatique.

Et si on faisait YaSeeks ?

Globalement, Seeks donne des résultats au premier abord plus pertinents que ceux de Yacy, mais cela n’est guère étonnant au vu des choix technologiques effectués. Je n’ai pas essayé de voir si cela pouvait fonctionner, mais il serait intéressant de vérifier si Seeks peut utiliser Yacy comme moteur de recherche. Nous aurions alors une plateforme alliant le meilleur des deux technologies, tout en permettant, grâce à Yacy, de réduire notre dépendance (pour autant que ce soit possible) par rapport aux grands moteurs de recherche du Web.

On notera aussi les modèles économiques différents qui ont été choisis pour soutenir les deux projets. Yacy est soutenu par une association allemande, alors qu’une société commerciale vient d’être créée pour Seeks. Un choix que je regrette personnellement, car je ne pense pas que ce soit le modèle approprié pour supporter des logiciels libres. Je préfère sans conteste le modèle façon Mozilla de la fondation qui créé une entreprise afin de garder la gouvernance (et les bénéfices) de cette dernière. C’est d’ailleurs possible aussi pour une simple association Loi 1901; pas la peine de sortir l’artillerie lourde de la fondation.

Pour terminer, Il y a d’autres moteurs de recherches open source comme Nutch qui est désormais un sous-projet de Lucene. A noter aussi que le standard OpenSearch définit la façon dont les résultats d’une recherche doivent être présentés.

Retrouver l’article sur Yacy.

Philippe Scoffoni

Je barbote dans la mare informatique depuis 30 ans (premier ordinateur à 16 ans, un ORIC ATMOS) et je travaille à mon compte au travers de ma société Open-DSI. J'accompagne les associations, TPE et PME dans leurs choix et dans la mise en oeuvre se solutions informatiques libres.

29 réponses

  1. bartounet dit :

    Bonjour.
    Interessant.
    Quel est l’interêt de l’installer soi même, il existe déjà en ligne non ?

  2. LJS31 dit :

    Bonjour!
    J’ai essayé de compiler tout le tremblement pour Win7: patatras! 🙁

  3. manu dit :

    @bartounet, quand tu utilises (ou un autre node seeks), tu utilises bien le meta-moteur mais tu n’es pas dans le mode P2P.

    C’est en installant une instance seeks que tu peux passer en P2P.

    j’en profite pour indiquer que dans FF, pour rendre seeks.fr moteur de recherche par défaut (celui qui est configuré sur google quand on tape n’importe quoi dans la barre d’URL), il faut initialiser la variable (cf. about.config) keyword.URL à

  4. fwix dit :

    Salut,
    oui il est possible d’ajouter une instance de yacy à seeks puisque celui-ci est un méta-moteur. Je n’en voies cependant pas forcément l’utilité à l’heure actuelle…

    En ce qui concerne le choix du soutien par une entreprise plutôt qu’une association/fondation, cela ne me choque absolument pas : je trouve normal que des développeurs de logiciels libres puissent vivre de leur travail, et je trouve souhaitable de trouver des fonctionnements (modèle éco etc…) permettant cela.

    Longue vie à Seeks

    🙂

  5. piti dit :

    bartounet:

    l’intêret est d’obtenir des résultats qui te sont personnalisés, et pas une personnalisation agglomérpe des utilisateurs d’un node publique (tu peux profiter de l’expérience des nodes publiques, mais ta personnalisation reste prépondérante)

    D’ailleurs, les nodes publiques sont surtout mis à disposition pour tester le logiciel.

  6. beniz dit :

    Nutch est un crawler, qui va chercher les pages pour les passer à un indexer. C’est un morceau d’un moteur de recherche, mais ca n’est certainemant pas un moteur de recherche à lui tout seul.

  7. Philippe dit :

    @fwix : quelle drôle d’idée tu te fais des associations.. Tu te doutes bien qu’elles peuvent avoir des salariés tout comme une entreprise. Donc l’entreprise c’est pas le seul modèle pour valoriser son travail…Et lorsque l’on parle de logiciel libre (des outils d’intérêts généraux) avec des bénévoles qui gravitent autour, l’association offre un mode de gouvernance plus adapté par rapport à une entreprise où s’exprimeront tot ou tard des objectifs de « performance économique » qui pourraient être incompatible avec l’intérêt général. Que s’est-il passé pour MySQL, OpenOffice, etc… Faut-il rappeler leur histoire ?

  8. beniz dit :

    @philippe: seeks a d’abord été soutenu par une association. Malheureusement, le type d’investissement nécessaire au développement de Seeks (>60K lignes de C++, cf. n’a pas pu être réuni par l’association. L’association ressucitera peut être un jour, l’avenir le dira. Note qu’il aurait suffit de nous le demander, et nous t’aurions informé 🙂

    C’est l’entreprise qui remplit ce rôle. Il faut aussi bien comprendre que le niveau professionnel demandé à un logiciel de ce type ne peut ni reposer uniquement sur du bénévolat à cause des moyens et du temps mis en oeuvre, ni plonger dans la précarité les gens qui décident d’y passer du temps.

    Enfin, il se trouve qu’il y a une demande pour les fonctionnalités de Seeks, autant les remplir, ca ne fait qu’accélérer et améliorer le projet. Avec un peu de chance la « performance économique » ira dans le sens de la « performance du logiciel », pour tout le monde.

    En effet, comme bien expliqué ici, http://seeks.pro/a-startup-for-the-seeks-project/ , tout le code est libre.

    Pour finir, il faut noter que l’établissement d’une entreprise pour Seeks est une prise de risque encore plus grande par ses auteurs, ce qui ne fait que dénoter leur volonté et leur croyance dans le projet.

  9. Philippe dit :

    @beniz, Je ne remets pas en cause la volonté ou la croyance des porteurs dans leur projet ou dans les valeurs du logiciel libre, cela n’a rien à voir. Il faudrait un article (qui viendra) pour bien expliquer en quoi ce choix est un pari risqué et potentiellement « incorrect » vis à vis de tous ceux qui ont contribué au logiciel et qui peuvent y voir une forme de privatisation soudaine, même si le logiciel reste sous licence libre et que rien ne les empêchent d’en faire autant de leur côté.
    Je sais que ce paradigme est difficile à comprendre dans le contexte des logiciels libres et implique un développement assez complet en s’appuyant d’ailleurs sur des travaux liés au crowdsourcing et à « l’exploitation » du travail gratuit de beaucoup pour le profit de quelques-uns.

    Que l’on me comprenne bien, je ne suis pas en train d’accuser l’équipe de Seeks de cela ou de lui faire un quelconque procés je ne connais pas le contexte qui a conduit à cette décision 🙂 !!!

    Il s’agit ici d’une réflexion globale et de fond sur les business model du libre et comme je suis un vilain garnement je profite de l’occasion qui se présente pour aborder le sujet et lancer la discussion 🙂 .

    Je sais que le réflexe aujourd’hui est de créer une entreprise et que souvent quand on est le quasi contributeur unique à un projet cela ne soulève que peu de questionnement éthique. Pourtant l’association aurait pu créer et être propriétaire de cette entreprise en préservant la notion de biens communs propre aux logiciels libres.

    Un accord de licence pour les contributeurs est-il prévu ?

  10. beniz dit :

    Le CLA existe depuis plus d’un an, et a été signé par les principaux contributeurs.
    Nous sommes en discussion pour voir comment le péreniser avec une structure annexe.

  11. bartounet dit :

    Es t’on obligé d’utiliser le proxy .?
    Ce qui m’interesserai c’est de l’installer sur un serveur, et de l’interroger directement du genre: sans avoir à paramétré un proxy sur mes navigateurs…

  12. beniz dit :

    @bartounet
    et plus généralement

  13. piti dit :

    bartounet:
    non, il est possible de ne pas utiliser le proxy, en activant par exemple le plugin http-serv qui fourni un serveur web (très léger)
    cf.

  14. Bonob0h dit :

    Dois je rappeler que lorsqu’on entreprend quelque chose et notamment une « entreprise » on se doit tout autant de maitriser tout autant son sujet « technique » que marketing, commercial, support, etc … mais mais mais aussi les aspects juridiques voir pour le libre « ethiques » …
    Les meilleurs intentions du monde n’empêchent pas une entreprise de se retrouver condamner pénalement pour avoir bénéficier ou fait travailler des bénévoles ! Que ce soit une SA, SAS, Scoop, etc …
    De même qu’il est interdit a une entreprise de créer une association dont l’objectif est similaire, en relation direct a son activité !
    Nul n’est censé ignorer la loi 😉
    Que des entreprises le fasse et n’aient pas de problème ne veux pas dire qu’elles ne pourraient pas en avoir !
    Dois je rappeler qu’il en faudra une, pour qu’ensuite toutes les autres soient dans le collimateur ?

    Par ailleurs que certains utilisent le système car c’est dans leur gènes de profiter, ok !
    Mais pourquoi les Libristes qui sont censés avoir une éthique ne veulent rien entendre de ce point de vu ?
    La notion de libre ne serait elle pas aussi ailleurs que dans le code ?

    +++ pour une lettre au père noël

  15. bartounet dit :

    J’étais parti à m’embeter à la compil, mais je vois qu’il est dispo en ppa sur ubuntu.

    J’ai installé seeks sur une vm ubuntu 10.04, avec le plugin http.
    Pour l’instant ca marche nickel..

    J’ai quelques question:

    1 – La version ppa de ubuntu contient t’elle toute les fonctionnalités

    2- Par contre si je comprend bien c’est un méta moteur, c’est a dire qu’il va interroger différents moteurs mais lesquels ? existe t’il une liste ?

    3- Seeks peut faire du P2P avec d’autre node connecté, faut t’il configurer cette option en quelque part ?

    4- J’ai compris que Seek enregistre au fur et a mesure les habitudes de recherche et essaye de donner une réponse adaptée, mais comment sa marche ? il enregistre les info dans une base ?? non puisqu’aucun SGBD n’est requise

  16. piti dit :

    bartounet:

    – Le ppa d’ubuntu doit être compilé avec tous les plugins ou presque.

    – Il y a une liste configurable des ressources interrogées, dans /etc/seeks/websearch-config

    – On peut configurer les nodes que l’on interroge, ça se trouve dans /etc/seeks/cf-config

    – Seeks utilise bien une base de données, mais non relationnelle, et c’est tokyocabinet. La base doit se trouver dans quelque chose comme /var/lib/seeks/seeks_user.db (pas sur du chemin exact)

  17. bartounet dit :

    J’ai fini par installer la version inclu dans les PPA d’ubuntu:

    J’ai quelques questions:

    1 – Ou trouver la listes des moteurs que Seeks intterogent ?

    2- Comment activer le p2p et comment etre sur qu’il fonctionnent ?

    3 – Comment Seeks se connecte en p2p sur d’autre node ??

    4- Comment Seeks enregistre nos habitude de recherche vu qu’il n’y a pas de base ?

  18. bartounet dit :

    oups doublons désolé

  19. bartounet dit :

    Autre question, quand on l’utilise comme moi avec le plugin Web.
    Faut t’il le sécuriser ?
    Sachant que par défaut il n’est pas sur un port standard 9090

  20. fwix dit :

    @philippe : quel préjugé tu te fais des entreprises : il n’y a pas que un style unique de « boîtes »sales et « managées » par des « requins profiteurs ». On retrouve aussi de nombreux conflits d’intérêts dans les associations (la nébuleuse du libre en est d’ailleurs une illustration criante).

    Mon propos n’est pas de troller : je suis membre de plusieurs associations libristes et je travaille également pour une petite SSLL qui a qq contributions à son actif.

    En ce qui concerne le projet Seeks, j’ai perçu comme une nouvelle étape dans la maturité / perennité du projet la création de cette entreprise et je mesure la prise de risque et d’engagement que cela représente pour les entrepreneurs.

    Donc longues vies à seeks-project et à seeks-pro

    😈

  21. Bonob0h dit :

    @ Fwix … tu devrais prendre des cours de droit 😀 et de bon sens …
    Des enfoirés il y en a partout … comme des gens biens …
    Seulement ethiquement, légalement, etc le bénévolat n’est pas pour des entreprises !
    Il est interdit en ce sens par toutes les conventions et lois internationale et nationale du travail.
    Dans le cas contraire tout le circuit économique se mettrait a ne plus employer de salariés ! Ne prendrait que des bénévoles !
    Quel beau monde !
    Et ceci bien sur peut donner des situations ou par exemple ne pas payer ses impôts devient un tel sport national qu’il fout un pays en l’air et bien sur en entraine d’autre …

    Alors que rien n’empêche et bien au contraire qu’une asso peut très bien
    – avoir une activité économique dont les bénéfices vont au profit de tous …
    – si besoin créer une entreprise pour que les bénéfices aillent au profit de l’asso et non pas d’actionnaire …

    Donc le libre au lieu d’inciter à faire des conneries devrait bien au contraire donner l’exemple !

  22. Philippe dit :

    @fwix : nous sommes bien d’accord qu’il y a des “requins profiteurs” aussi bien dans le camps des entreprises que dans celui des associations. De ce point de vue là les deux peuvent être mis dos à dos. Cependant, comme le dit Bonob0h, il faut être attentif que dans le cas des logiciels libres des gens peuvent contribuer bénévolement et sans objectif professionnel, juste pour le plaisir de la contribution. Pourtant il travaille et créé de la valeur. On a trop tendance à associer travail et emploi… On peut travailler bénévolement pour une association, mais pas pour une entreprise je pense… Or les éditeurs propriétaires pourraient un jour être tenté de chercher des poux à des éditeurs de logiciels libre sur ce terrain… Il faut donc être vigilant…
    Il me semble donc préférable que ces personnes soient prises en charge, accueilli par des associations. De toute façon ces derniers ne s’y tromperont pas. Il suffit de constater que les éditeurs de logiciels open source ont rarement d’importantes communautés de bénévoles. Leur communauté sont au mieux constituées d’autres professionnels. C’est ce que l’on voit autour de logiciels comme Drupal, Asterisk, etc… Et ce n’est pas étonnant, en tant que bénévole non professionnel, je préférerais en général contribuer à un projet sur le modèle de Debian ou de Mozilla.
    Cependant la question reste entière pour les contributeurs « pro ». A quoi/qui préfèrent-ils contribuer ? Une entreprise ou une asso. Sans compter qu’une asso pourra valoriser leur contribution au travers de réductions d’impôts…
    Tout le biais et la difficulté de cette discussion vient que l’on pourrait penser que le logiciel n’appartient à personne. Or on sait que quelqu’un a les droits ou pas de « commit » sur le projet, d’accepter ou de refuser une contribution et donc « pilote » le projet.
    On peut forker, c’est vrai, mais est-ce vraiment une liberté ou juste un pis-aller quand on ne peut pas se faire entendre ?

  23. fwix dit :

    @bonob0h: merci pour tes conseils de cours de droit et de bon sens.
    je ne me permettrais pas de te demander en quoi le salariat serait forcément un bien, ni ce que tu penses des SCOPs, j’ai trop peur que tu me renvoies à mes chères études (on pourrait également choisir d’aborder le sujet d’un point de vue sociologique ou sémantique, mais là ça tournerait clairement au troll, et j’ai autre chose à faire).

    Qd j’étais ado, je ne voulais ni travail ni loisirs, juste des activités dont certaines me rapporteraient le l’argent (de quoi vivre) et d’autres m’en coûteraient. Aujourd’hui j’ai qq dizaines d’années de + et je n’ai pas changé. J’ai certainement eu beaucoup de chance (ou bien suis complètement aliéné et abruti) car le monde du travail (« l’entreprise ») a contribué à mon épanouissement.

    @Philippe: Sinon d’un point de vue logiciel, liberté et pérennité me semblent liées. Typiquement le caractère libre d’un logiciel empêche que celui-ci puisse être accaparé par une entité —entreprise, état, collectivité ou association— : changement de licence, problème de gouvernance, modes de commercialisation… Soit on assiste à un fork, soit la communauté originale est stimulée :
    spip / spip-agora / spip
    mambo / joomla
    OOo / LibreOffice
    Twiki / Foswiki

    Pour conclure (mon intention n’était pas de troller, mais plutôt de communiquer mon enthousiasme pour le projet seeks) je pense que, à l’heure actuelle, que ce soit pour des raisons « organiques » ou « mécaniques », le seul et véritable garant de cette pérennité pour les utilisateurs / développeurs / contributeurs est le caractère libre de la licence et aussi l’intérêt véritable que ce logiciel représente par rapport aux autres solutions existantes sur le marché, permettant la création, ou non, d’une véritable communauté (cf Nuxeo CPS vs Plone). Après, je respecte tout à fait ceux qui refusent de travailler pour des choix idéologiques ou philosophiques ou qui ne jurent que par les associations, fondations, emploi aidés etc…, mais je crois aussi aux (en tout cas à certaines) entreprises…

    librement,
    😛

  24. Bonob0h dit :

    @ Fwix … je crois que tu n’a pas très bien compris … que nous ne sommes pas dans le beau monde des bisounours 😉 …

  25. fwix dit :

    @bonob0h : http://www.canalplus.fr/c-divertissement/pid1782-c-sav-des-emissions.html (saute directement à 01:07)

    en tout cas je te remercie de ta grande et haute vision et de nous expliquer la réalité du monde toi qui le comprends et quis sait. Va sur http://www.touscandidats2012.fr/ : le monde t’attend

    😯

  26. Bonob0h dit :

    @ FWIX … ce qui est marrant avec les trolls c’est que de toute façon ils trouvent toujours a botter en touche au lieu de tenter ce que d’autres proposent !
    Coté lien
    Et qui sait peut être qu’un jour ça t’évitera de faire un tour en taule 😉 Quoique ! Si quelques beaux exemples s’y retrouvaient ça en ferait réfléchir d’autres …
    Sur ce … a toi le dernier mot si ça te dis puisque tu n’a pas le temps … mais que tu le trouve pour fouiller a troller 😀

  27. fwix dit :

    @philippe : dsl pour ce bruit sur ton blog. je continuerai à y venir, mais je tâcherai de rester discret pour éviter de susciter ce genre de dérives. 😉

  28. Lal dit :

    La fiche http://free.korben.info/index.php/Les_moteurs_de_recherche_anonymes complète cet article.

    Même si ce moteur n’est pas décentralisé, il me parait intéressant: VOLUNIA ( http://korben.info/volunia-le-papa-de-lhyper-search-lance-son-moteur-de-recherche.html ).

    Créé par le père de l’hyper search (dont les 2 créateurs de Google se sont très fortement inspiré).

    A suivre… 🙂

  1. 7 décembre 2011

    […] Philippe Scoffoni : 2 moteurs de recherche libres et décentralisés Seeks et Yacy 2/2 Après vous avoir présenté Yacy, c’est au tour d’une autre solution dénommée Seeks. L’approche proposée est différente. Source: philippe.scoffoni.net […]