J'en ai révé (vous aussi sans doute), Google l'a fait (en partie au moins)... Combien de fois avez-vous envoyé un message en réalisant quelque temps plus tard que vous avez oublié la pièce attachée ? Embarras garanti. C'est presque devenu pour moi une plaisanterie standard de dire que la détection automatique des attachements manquants serait l'un des programmes de traitement automatique des langues les plus vendables au monde. J'ai même eu il y a quelques années des discussions avec des étudiants dans mes séminaires sur les diverses façons de développer une telle fonctionnalité.
Eh bien, figurez-vous que Google annonce avoir mis au point cette fonctionnalité dans le cadre de GMail, sous le nom moyennement sexy de "Forgotten attachment detector".
Cela paraît sans doute un peu magique à certains d'entre vous, limite science-fiction (Google pourrait-il désormais deviner, voire anticiper nos pensées ? Ça fait frémir...). Je suis le premier à dénoncer les annonces bidons, qui font plus de mal que de bien au domaine des technologies du langage (on en a eu une flopée depuis un demi-siècle ou plus, sur la traduction automatique, le dialogue homme-machine, et autres). On connaît la difficulté de ces technologies, et la plus grande modestie est toujours de mise. Comme je dis dans mon premier cours, en cinquante ans on a réussi à décoder le génome de l'Homme, pas son langage... Mais dans ce cas précis, je pense que c'est tout à fait faisable.
Comment Google a-t-il bien pu faire ? Honnêtement je n'en sais rien, mais je peux vous dire la façon dont j'aurais procédé (et qui me paraît être à peu près la seule). La mauvaise idée, à mon avis est de se creuser la tête et d'essayer de trouver des expressions à détecter dans les mails : "veuillez trouver ci-joint", etc. Même en recrutant les meilleurs linguistes du monde, on a toutes les chances d'en rater la plus grande partie.
Voici donc ma recette de cuisine :
Prendre une très grande base de mails, des millions, milliards si possible (Google a largement ça).
Faire deux paquets : les mails avec attachement, les mails sans attachement.
Extraire de chacun des deux paquets le dictionnaire des mots rencontrés, ou encore mieux des n-grammes c'est-à-dire des suites de n mots rencontrés.
Extraire à l'aide d'outils statistiques les n-grammes qui apparaissent fréquemment dans les mails avec attachement et pas dans les mails sans attachement.
Pour chaque nouveau mail, regarder si un de ces n-grammes magiques est présent dans le texte, et si oui déclencher une alerte.
Je viens de faire un petit essai à la louche dans mes propres mails et je vois apparaître des suites comme : "ci-joint(e)(s)", "fichier(s) attaché(s)", "pièce(s) jointe(s)", "je t'envoie", "je te fais parvenir", "voici le compte-rendu", "voici le fichier", "voici le/un document", "voici le devis", "veuillez trouver", etc.
Bien entendu, un tel programme comportera un peu de bruit (des fausses alertes) et de silence (des attachements ratés), mais si on détecte déjà 95% des cas, c'est une fonctionnalité plus qu'utile.
Mon estimation :
Réalisation d'une maquette : un jour.
Développement et test d'une version opérationnelle : un mois.
Peut-être vais-je proposer mes services à Google, car si j'en crois le mini-test paru sur Pulse 2.0, ce n'est pas brillant. Le détecteur reconnaît "I have attached", mais pas "Attach a document" ni "Here is the attachment"... J'ai testé moi-même, avec des phrases comme "Attached please find a copy of...", et je n'ai guère eu plus de succès. Un peu gros quand même.
Reste à savoir si (après avoir reglé ces quelques détails...) Google proposera une version française. J'ai déjà mentionné dans le passé les délais importants de Google pour la localisation de ses produits. Parfois plusieurs années. A suivre, donc.