SARAH: Google vs Microsoft

Les deux mon capitaine !

Depuis que j’ai lancé le projet, la question revient régulièrement sur le tapis. On me dit souvent:

  • Pourquoi la reconnaissance Microsoft ?
  • Pourquoi ne pas utiliser Google ?
  • Je vais tout recoder en Java ! sous RPi ! avec Google ! etc, …

Bon je ne vais pas revenir sur le fonctionnement des grammaires dans SARAH qui utilisent Google ET Microsoft.

Voici plusieurs arguments:

Performances

Les utilisateurs sont exigeant. Faut que ça marche. Donc il faut utiliser un Microphone Array avec un bon rapport/qualité/prix: Kinect.

De plus le Kinect à l’avantage d’être prévu pour le salon, éprouvé à grande échelle avec une partie du traitement côté hardware.

Grammaire

« By Design », l’API Microsoft ne gère pas des Wildcard mais des Grammaires.

  • Avantage: Vous êtes sur de matcher les phrases attendues
  • Inconvénient: Vous ne pouvez pas matcher « SARAH recherche * sur Wikipedia »

Les gens qui partent sur du Google rencontrent 2 problèmes :

1. Trigger

Quand déclencher la requête à Google ? Quand est ce que ce morceaux d’Audio est valide ?

Si vous n’appuyez pas sur un bouton, comme SIRI, Google Now, … il faut alors un trigger « vocale ». C’est le problème qu’essayent de résoudre les gens du projet Kickstarter Ubi.

Et c’est compliqué … visiblement le principe est le même que dans Lucene en calculant une distance de Levenshtein sur l’audio.

2. Réponse

La réponse est aussi floue. Typiquement « SARAH recherche une belle voiture sur wikipedia » peut se transformer en plein de variantes:

  • SARAH recherche belle voiture sur wikipedia
  • SARAH recherche une voiture sur wikipedia
  • SARAH recherche belle voiture wikipedia

Bref côté code il faut faire le travail de Microsoft soit avec des Regexp ou carrément avec un moteur de recherche Lunr.

Offline

Comme pour les box domotiques de nombreuses personnes ne veulent / peuvent pas sortir du réseaux pour convertir l’Audio.

Sans compter les problèmes de lags car il faut « uploader » l’audio à Google et attendre une réponse.

Pourquoi les 2 dans SARAH ?

Car les grammaires sont quand même super limitées ! Et c’est quand même cool de pouvoir, par moment, avoir un ChatterBot à la maison pour poser des questions ouvertes ! Donc je mélange les deux monde:

Microsoft

Sarah recherche <garbage> sur wikipedia

Cette grammaire sert de trigger pour prendre l’audio et l’envoyer à Google. Microsoft fait la partie compliqué 2.1

Google

Google reçoit tout l’audio et me renvoie le texte qu’il faut malheureusement parser. MAIS on est déjà assuré que certains mots sont valides/présents.

Pourquoi tout l’audio ? Car Google gère très mal les bouts de phrase.

One more thing !

SARAH sait réécrire ses propres grammaires. C’est ce qui est fait par le plugin Allociné ou XBMC. C’est parfois plus simple de préparer le terrain 🙂

6 pensées sur “SARAH: Google vs Microsoft

  • 23 mai 2013 à 20 h 30 min
    Permalink

    Très bon article récapitulatif. Ça permet d’éviter de se répéter… Et encore..

    Répondre
  • 23 mai 2013 à 22 h 12 min
    Permalink

    Je plussoie 🙂 Avant SARAH, j’utilisais google voice sur mon tel portable avec Tasker pour avoir ma propre assistante, Nelly (expliquer ici : http://blog.guiguiabloc.fr/index.php/2012/08/16/controler-votre-domotique-par-la-voix-avec-android/)
    Honnetement, depuis que j’utilise SARAH, c’est le jour et la nuit. Les reconnaissances sont plus fines et plus précises, le temps de traitement extrèmement rapide et les erreurs peu fréquentes. Il est désormais inconcevable pour moi de repartir sur du google voice. Rien que le fait de pouvoir parler librement sans appuyer sur un bouton pour déclencher une reconnaissance vocale est un must dont on ne peut pas se passer.
    Bref, même si google voice est très puissant, en utilisation personnelle a la maison, je penche sincèrement que SARAH se démarque largement, même si c’est sous windows 🙂 (après tout, JP a réussi a me faire installer un windows a la maison, c’est bien la preuve qu’il est fort… très fort…)

    Répondre
  • 23 juin 2014 à 9 h 55 min
    Permalink

    Sarah pourrait être évolutive à la manière d’une I.A plus qu’une simple assistante ? à la manière de Her (Spikes Jonze, 2014) ? Avoir une réelle conversation serait des plus futuristes non ! 😉

    Répondre

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *