Sirius, un assistant personnel libre

Sirius

Il aura fallu que je blog que Linux prenait du retard dans le domaine de l’intelligence artificielle et des assistants personnels, pour que j’apprenne aussitôt une bonne nouvelle :)

Clarity Lab et l’Université du Michigan ont récemment publié sur GitHub un projet sous licence libre (BSD) d’assistant personnel, intégrant la reconnaissance vocale, avec traitement automatique du langage naturel, la reconnaissance de formes / recalage d’images (ce qui permet de soumettre une image ou de prendre une photo avec son smartphone, et de pouvoir interroger l’assistant sur ce que l’on voit), ainsi qu’un système de questions-réponses.


Dans la vidéo de présentation, Jason Mars, le co-directeur du projet, compare Windows et Linux, tout en mettant en avant le fait que contrairement au premier, le second est modifiable à l’envi, et permet d’obtenir ce que l’on souhaite réellement. Avec Sirius, ils souhaitent offrir les même possibilités en créant une plate-forme ouverte, tout en espérant que de nombreuses universités et startup de part le monde, participeront à son développement.

Et tout comme je l’indiquais dans mon précédent billet, la co-directrice Lingjia Tang semble partager le même avis quant à nos interactions futures avec les machines qui nous entourent, actuellement contrôlées par des claviers, qu’ils soient physiques ou virtuels, comme sur les smartphones, pour quelque chose de plus naturel, comme le langage.

Il est intéressant de noter que le projet a été en parti financé par la DARPA, déjà à l’origine d’ARPANET, qui fini par devenir Internet, ainsi que par ARM, la National Science Foundation, mais également par Google, pourtant à l’origine du concurrent Google Now ;)

Plus intéressant encore, le projet n’a pas été développé de zéro, mais s’appuie en réalité sur plusieurs briques libres, telles que CMU Sphinx (développé par l’université Carnegie-Mellon) ou Kaldi pour la reconnaissance vocale, OpenCV pour la reconnaissance d’image et OpenEphyra pour le système de questions-réponses.

Par contre, je m’interroge sur la base de connaissances utilisée. Dans la vidéo, ils semblent indiquer utiliser une méthode pour extraire les réponses depuis Wikipédia, alors que Wikidata a justement été conçu pour pouvoir être facilement utilisé par les machines, tout en offrant des possibilités beaucoup plus puissantes.

Plus qu’à espérer que ce soit rapidement repris par la communauté, et qu’on le retrouve un jour sur nos distributions Linux ou sur nos smartphones Firefox OS.

Que reste t-il pour Linux ?

Durant les années 80-90, pendant l’ère MS-DOS, les utilisateurs de systèmes Unix se moquaient de la médiocrité technique de ce dernier : système toujours 16 bits, quand les architectures 32 bits étaient déjà démocratisées; système mono-tâche, l’utilisateur ne pouvant faire qu’une seule chose à la fois; système mono-utilisateur, la gestion des droits et la sécurité étaient inexistantes; ne disposait pas non plus de pile TCP/IP; et ne proposait qu’un shell particulièrement limité. Le système était pourtant déjà vendu pré-installé sur tous les PC, et la vente forcée fit le succès commercial de Microsoft.

En août 1995, l’éditeur sortit Windows 95. Le système passa enfin au 32 bits, apporta le multitâche préemptif, ainsi qu’une interface graphique relativement moderne pour l’époque, tout en facilitant nombre d’actions. Bien que très loin derrière les possibilités offertes par BeOS, encore une fois, la vente forcée aidant, ce fut un succès populaire. Et ce, malgré l’instabilité chronique du système, les utilisateurs subissant de nombreux et réguliers BSoD, ce qui les obligeait à redémarrer leur machine et perdre tout leur travail en cours.

Avec la sortie de Windows 2000, et surtout, Windows XP, Microsoft fit converger ses branches pro et grand public. Ce dernier bénéficia d’un tout nouveau noyau, enfin robuste, qui apporta une certaine stabilité au système. Il n’est désormais plus rare de trouver des Windows qui servent de stations de travail, avec plusieurs centaines de jours d’uptime. L’un des premiers avantages de Linux s’envola.

Microsoft continua son petit bonhomme de chemin, malgré certaines versions, telles Vista ou Windows 8, relativement boudées par le public. Mais vous connaissez la chanson. Avec la vente forcée, le système continua de se vendre comme des petits pains. Néanmoins, avec l’arrivée de Windows 8, ce ne sont plus les qualités techniques du système qui furent décriées, mais sa nouvelle interface. En février 2014, Steve Ballmer quitta la direction de l’entreprise, pour laisser la place à Satya Nadella. Avec lui, Microsoft fit preuve d’une plus grande ouverture, tout en étant plus à l’écoute des utilisateurs.

Durant les pré-versions de Windows 10, la presse se fait élogieuse à la sortie de chaque nouvelle build. Mais surtout, ce sont les nombreux avantages de Linux qui tombent un à un. Tout d’abord, l’apparition des bureaux virtuels, qui étaient demandés depuis de nombreuses années. Ensuite, avec OneGet, les administrateurs systèmes bénéficieront désormais d’un gestionnaire de paquets, capable d’installer, supprimer et gérer des applications depuis des dépôts. Microsoft décide également d’apporter le support de tous les codecs et conteneurs populaires à son lecteur multimédia, y compris ceux provenant du libre, comme FLAC ou Matroska. Les utilisateurs de Windows 10 n’auront donc plus besoin d’installer VLC pour pouvoir tout lire. Même chose du côté de la visionneuse d’images, qui va jusqu’à supporter les formats RAW.

Nous avons donc un système stable, avec bureaux virtuels, gestion des applications centralisée (Windows Store ou dépôts pour les administrateurs), tous les formats supportés par défaut… Mais en plus de rattraper son retard sur Linux et OS X, Microsoft prend également de l’avantage dans certains domaines. Tout d’abord, l’intégration. Microsoft vise une plateforme unique, aussi bien pour les PC, les tablettes, les smartphones ou sa console. Ainsi que des applications universelles qui pourront tourner partout. Les différents appareils devant également pouvoir communiquer et interagir entre eux. Du côté de Linux, c’est tout juste si nous avons les prémisses d’un projet permettant à une machine sous Linux de communiquer avec un smartphone sous Android. L’avantage qu’on pourrait avoir, ça serait de supporter aussi bien tous les systèmes, là ou Apple, Google ou Microsoft, préfèreront ne supporter que leur solution maison.

Cortana, l’assistant personnel de Microsoft, jusqu’à présent uniquement disponible sur Windows Phone, le sera également sous Windows 10. Que ce soit celui de Microsoft, ou ceux d’Apple ou Google, les assistants ne sont pas encore très évolués, et on peut se demander l’intérêt d’en avoir un sur PC, et l’air bête  qu’on aurait en parlant à sa machine. Mais je pense que le plus important, c’est de voir à quel point ils investissent sur l’intelligence artificielle, et tout ce que ça permettra dans le futur. Pour ceux qui ont regardé la série Extant, je pense qu’on peut avoir un aperçu plutôt plausible de ce que seront les maisons intelligentes et connectées de demain. On ne parlera plus à son PC, en devant se situer physiquement à proximité de ce dernier, mais on pourra parler naturellement à une entité intelligente, où que l’on soit dans le bâtiment.

GNOME, avec son shell, a permis de faciliter certaines actions. On peut taper le nom d’une ville pour obtenir l’heure locale; taper le nom d’un contact, et pouvoir plus rapidement accéder à sa fiche pour obtenir ses informations ou lui envoyer un email; pouvoir taper des opérations arithmétiques sans avoir besoin de lancer la calculatrice… mais sans intelligence artificielle, nous ne pourrons guère aller plus loin qu’économiser un ou deux cliques de souris.

Il y a bien le Projet Pensées Profondes, développé par des étudiants de l’ENS de Lyon, qui fait appel à des projets libres comme Wikidata ou OpenStreetMap, pour pouvoir répondre à des questions (pour le moment, uniquement en anglais). Mais ça reste un projet étudiant, là ou de gros acteurs tels que Canonical, Red Hat ou Mozilla, qui n’a aucun assistant personnel sous Firefox OS, auraient du investir sur un projet commun. Projet qui nécessite également des algorithmes de reconnaissance et de synthèse vocale, pour lesquels les concurrents propriétaires obtiennent des résultats de plus en plus naturels, là où le couple libre Orca / eSpeak, donne rapidement envie de se taper la tête contre les murs.

Bien entendu, nous ne pouvons pas compter uniquement sur les entreprises et organisations qui soutiennent le libre, et j’avais placé de grands espoirs dans les campagnes de financement participatif. Malheureusement, malgré quelques succès (OpenShot ou Builder) et ce, même si l’ensemble des paliers n’ont pas été atteints, j’ai l’impression de voir beaucoup plus d’échecs (Geary, GCompris ou Pitivi, pour ne citer qu’eux).

Pire encore. Non seulement nous avons de moins en moins d’avantages à faire valoir, mais surtout, j’ai l’impression que c’est nous qui courrons désormais derrière le monde propriétaire. Quand PulseAudio est sorti, il ne faisait que rattraper son retard sur les piles audio concurrentes. Il en sera de même pour la partie vidéo, quand nous passerons enfin à Wayland. Ou quand on pourra enfin isoler les programmes dans des sandbox, de façon plus simple et transparente. Mais quel autre gros projet avons-nous, à moyen terme ? De son côté, Microsoft arrive encore à surprendre, avec des projets comme HoloLens, ou la traduction audio à la volée, avec Skype Translator.

Certains seraient tentés de dire que le libre a de toute façon gagné, qu’on le retrouve partout. Oui, mais non. Le libre sert effectivement de base solide, qui fait gagner du temps et de l’argent aux industriels, mais c’est accompagné à chaque fois d’une surcouche propriétaire, comme c’est le cas d’Android, ChromeOS ou SteamOS. Ou se trouve être inaccessible à l’utilisateur, comme c’est souvent le cas dans l’embarqué.

On pourrait également penser qu’avec la démocratisation de Linux apportée par Ubuntu ou l’arrivée de Steam, on pourrait gagner en popularité. Effectivement, je pense que de plus en plus de gens vont bénéficier de machines sous Linux, Canonical et Dell ayant signés des accords pour une commercialisation en Inde et en Amérique du Sud. Mais si les utilisateurs ne sont pas éduqués au libre, Linux ne deviendra qu’une pâle copie des systèmes propriétaires. Même chose du côté des éditeurs de logiciels, qui ne respectent pas les bonnes pratiques, et commencent à pourrir le système de l’utilisateur. Gaming on Linux avait publié un article qui prenait en exemple des jeux qui effectuaient leurs sauvegardes directement à la racine du répertoire de l’utilisateur, ou dans son répertoire Documents…

Au final, que reste t-il pour Linux. Pour le moment, sa liberté. Cette même liberté, qui nous permet de garantir un système propre, sûr, et dans lequel nous pouvons avoir confiance, quand il est développé par une distribution soucieuse des libertés, et que l’utilisateur y accorde également une certaine importance.

Selon le développeur et activiste Matthew Garrett, « les gens n’ont pas besoin d’un meilleur environnement de bureau, ils ont besoin d’un environnement différent, où la sécurité serait une préoccupation prioritaire dans la conception du système. Un environnement qui serait ouvert et respectueux de leur vie privée » (People don’t need a better desktop, they need a different desktop, a desktop where security is a priority concern in OS design, which respects privacy and is open).

Bien évidemment, nous devons miser là-dessus. Mais si nous n’avons rien d’autre de plus sexy à proposer, en regard du peu de changements de comportement apportés par les révélations d’Edward Snowden, je doute que cela change grand-chose. Les gens continueront de préférer céder leurs libertés, pour un peu plus de confort.

Et non, le fait que Linux soit bidouillable à l’envi, et qu’il propose de nombreux environnements de bureau, n’y changera rien.