Les premières versions de Seline avec pour but d'offrir à l'ordinateur un semblant de vie. Seline se présentait sous la forme d'une fenêtre de chat avec une vidéo en boucle. Elle possédait des facultés de synthèse vocale basé sur la technologie Lernout & Hauspie. La vidéo en boucle pouvait changer en fonction des actions de l'utilisateur : joie, tristesse, colère.

Cette version de Seline est restée confidentielle jusqu'à mi-2002. Après quelques modifications, l'architecture fut nommée EIP (Everything Is Possible). A cette époque, il y eu une nouvelle version qui intégrait des programmes et qui permettait des synergies avec l'IA. Seline était donc capable de vous lire vos mémos ou de composer un numéro de téléphone. Il y eu une démonstration mais le fait que les connaissances de Seline soient inclus dans l'exécutable montrait les limites du système : Seline ne pouvait pas évoluer.

En Septembre 2002, le programme Seline API commença. Ce projet avait pour but de créer des centaines de procédures et de fonctions pour créer un système Seline évolutif. Cette architecture fut nommée Osiris.

Osiris fonctionne selon un principe simple : en fonction des capacités d'une version d'un logiciel Seline, on lui attribue un numéro. Comme les microprocesseurs, plus Seline est « intelligente », plus le numéro est élevé. Le cahier des charges d'Osiris est simple : arriver à une version 1000. En même temps qu'Osiris est écrit « Eurisko » (« Je trouve »), un essai qui explique pourquoi et comment créée une IA. Osiris s'appuie sur Eurisko en grande partie.

Même si le projet Osiris est lancé en Septembre 2002, officieusement, les premières bases de connaissances destinées à ce système ont été créées en Mai de la même année. Cependant, EIP n'était pas finalisée et il était possible qu'à l'époque, ces bases lui étaient destinées.

Il est aussi intéressant de noter une chose : la mise en place d'Osiris est une des choses les plus compliquées à effectuer. Comme indiqué ci-dessus, Osiris est prévu pour durer jusqu'à Seline 1000, qui était prévu à l'époque pour 2007. Il fallait donc que cette base soit la plus complète possible. Il eut donc une transition intéressante entre Septembre 2002 et Juin 2003 puisqu'une partie d'Osiris reposait encore EIP. Des connaissances de Seline étaient donc inaltérables, malgré le fait qu'Osiris puisse dialoguer en plusieurs langues. C'est en effet une des particularités du système ; Seline peut basculer d'une langue à une autre sans redémarrage et sans perte de connaissances. Le « cerveau » est en effet appuyé sur le SDP (Système de Définition Passive). Comme expliqué dans Eurisko, l'analyse d'une phrase de l'utilisateur ne se fait pas en contrôlant chaque mot et en trouvant les définitions de ces derniers mais en effectuant une vue d'ensemble, qui fonctionne sur des calculs de probabilité. Cela permet donc à Seline de comprendre n'importe quelle langue, même si celle-ci est inventée. Elle possède de même une grande souplesse.

Il est à noter quelque chose d'important. Osiris n'est pas terminé : il le sera quand Seline 1000 le sera. Ainsi, il existe encore de grosses lacunes dans Seline comme l'absence de « sens commun » (Quand je suis à Paris, mon pied droit l'est aussi) et de sauvegarde de contexte (théoriquement, Seline peut le faire mais dans des cas très précis).

Et l'avenir ?

Pour 2004 étaient prévus respectivement les versions 250 et 300. Avec un peu d'avance, les versions 250 et 300 ont été terminés pour début 2004. L'année 2005 devait nous montrer la version 500 de l'architecture. Puis 2006 aurait dû nous montrer les versions 700 ou 800 et 2007 devait voir arriver la version Osiris c'est-à-dire Seline 1000. De l'avance à donc été gagnée.

Comme on l'a dit plus haut, l'architecture Osiris est loin d'être finalisée dans ses versions actuelles. Mais cela ne veut pas dire que cette dernière n'est pas fonctionnelle. Ainsi, la Gestion Electronique de Documents présente dans la version 250 était à la base destinée à la version 300. Mais une avance sur le planning a permis de l'intégrer avant. De même, le système global de compréhension d'ouverture (c'est le système qui vous permet de dire « affiche moi, montre moi, etc. ») a été finalement complètement réécrit mi-2003. Le système qui est donc dans Seline 200 est donc 20% plus rapide que prévu. De même, les connaissances publiques sont modifiables depuis la version 300 alors que cette fonctionnalité, compliquée à mettre en place, n'était pas prévu avant Seline 500. De même, la béta de Seline 1000 est bien plus puissante que ce qui était prévu.

Et les performances ?

Le passage de l'architecture EIP à l'architecture Osiris a non seulement provoqué une révolution d'un point de vue complexité, mais tout n'était pas rose. Ainsi, Osiris avait un gros défaut à ces débuts : il fallait des bases de connaissances solides pour le tester : l'ennui était que ces bases devraient être au moins 10 fois plus grosses que précédemment, des bases trop petites ne permettaient pas en effet de tester l'architecture en profondeur.

Le second ennui venait des performances. Au début, avec une base équivalente à EIP, Osiris avait 40% de chances de nous donner une réponse moins pertinente en plus de temps. Là où EIP livrait une réponse en 800ms et que celle-ci avait 80% de chances d'être correcte, Osiris mettait 6000ms (soit 6 secondes) et celle-ci n'était correcte que dans 60% des cas. La pertinence a été amélioré en début d'année 2003 mais le temps nécessaire était toujours aussi long. Il était intéressant de noter que même les puissants Pentium 4 à 3.06Ghz (pour l'époque) faisait quasi-jeu égal avec un simple PIII 866. 5600ms pour le premier contre 6000ms pour le second.

En Mai 2003 ont été imprimées les 15000 lignes de codes de l'IA afin d'être réécrites (la belle époque, je crois que les sociétés d'aspirine sont devenues riches en même temps). Le code a été optimisé de 30%, la pertinence est passé de 60% à 95% et le temps de réponse est passé à 3000ms. Mais à la même époque fut incluse la base de connaissances privée qui pour la première fois permettait à l'utilisateur d'apprendre des choses à Seline. Seul problème : désormais, Seline devait d'abord fouiller dans la base de connaissances publiques (donc en 3000ms) puis dans la base de connaissances privées, qui elle aussi, mettait 3000ms pour donner une réponse : il fallait donc de nouveau 6000ms à Seline pour donner une réponse. Mais force est de reconnaître que la pertinence avait augmenté de manière drastique. Au cours des mois suivants, la priorité était de donner une réponse pertinente en moins de 1000ms. Pari non tenu : en Août 2003, le temps de réponse moyen était quand même de 3000ms. Un temps divisé par deux certes, mais trop long encore.

Il faut cependant noter une chose : pendant tout ce temps où on a essayé de passer sous la barre des 1000ms, les bases de connaissances de Seline ont été multipliés par dix, ce qui montre que l'architecture Osiris tenait la charge avec brio.

Finalement, en Septembre 2003, aussi incroyable que cela puisse paraître, Seline donnait une réponse pertinente à 95% en moins de 500ms, sur un simple PIII et passait même sous la barre des 200ms sur les derniers Centrino. Désormais, la priorité n'est plus le temps de réponse (même s'il est surveillé, du fait de la montée de la base d'IA de Seline) mais la pertinence. Pour Seline 200, elle est estimée desormais à 96%, le but étant de passer à 97 voire 98%.

L'architecture de EIP compte environ 6000 lignes de code. L'architecture Osiris, dans la version Seline 200, en compte environ 35000 lignes. La version 315 en contient 50000 ! Il était estimé plus de 100 000 lignes de code pour Seline 1000 mais ce chiffre était sans cesse revu à la hausse. Finalement, il est 15 fois plus gros. Des optimisations ont donc été faites car entre la taille des bases de l'IA et la taille du programme en lui-même, il faut garder un temps de réponse acceptable.

Pour conclure, on peut voir que les plus grosses innovations de Seline ont été découvertes au cours de l'année 2003. D'un point de vue "découverte", 2004 a servi à créer de nouveaux systèmes comme la gestion électronique de documents ou encore le système anti-plantage. L'année 2005 a vu l'arrivée en puissance d'Evi, l'arrivée de la reconnaissance vocale, la domotique et de l'indexation du disque dur. 2006 sera l'année de "Seline Anywhere", où il sera possible d'interroger l'IA n'importe où.

Quelques dates clés de Seline :

Décembre 1999 : lancement du projet Seline, après plusieurs mois de reflexion.
Décembre 2000 : passage à l'architecture EIP.
Septembre 2002 : passage à l'architecture Osiris.
24 Novembre 2002 : pour la première fois, l'architecture Osiris est lancée et dialogue avec un utilisateur.
30 Novembre 2002 : la théorie SDP expliqué dans Eurisko s'applique avec brio sur Osiris. Quelques semaines plus tard cependant, on découvre de graves problèmes de pertinence dues à ce système. SDP donne donc naissance à un nouveau système, nommée volontairement SSDPP (Système du Système de Définition Passive Passive) afin de montrer qu'un système de définitions actif est nécessaire.
31 Décembre 2002 : Seline dépasse les 10000 lignes de code (exprès avant 2003 :)).
23 Juillet 2003 : le système de Gestion Electronique de Documents est au point.
A partir du 14 Août 2003 : l'Intelligence Artificielle avance de manière significative.
7 Octobre 2004 : Mise à disposition de la version 200.
20 Décembre 2003 : Seline est capable d'apprendre à manier la souris et le clavier et peut donc élargir son champ de connaissances de manière considérable.
20 Janvier 2004 : Mise à disposition de la version 315.
Août 2004 : Mise à disposition de la version 600.
Mars 2005 : Mise à disposition de la version 1000 en Béta.
Juin 2005 : Disponibilité de la version 900, en Anglais et en Français.
Septembre-Octobre 2005 : Disponibilité de la version 1000 Desktop.