Unitex

Unitex est un système open-source de traitement du langage naturel particulièrement puissant. Il a été crée par l’IGM / Université de Marne la Vallée. A l’origine, Unitex était essentiellement conçu pour répondre aux besoins de la recherche. Depuis la version 2.1, Unitex est adapté à une utilisation industrielle.

Les logiciels Convex et AssistanTV d'Ergonotics utilisent ainsi Unitex sur iPhone et iPad.

Améliorations d'Unitex

Ergonotics a été l’acteur essentiel de l’effort d’adaptation d’Unitex 2.1 aux contraintes liée à l’intégration dans un logiciel commercial. Tout ce travail n’aurait pas été possible sans l’ouverture de l’IGM aux contributions extérieures, au choix de la licence LGPL et à la collaboration de Sébastien Paumier.

Ainsi, la contribution d’Ergonotics à Unitex 2.1 version public (depuis avril 2009) a permis :

  • Suppression des fuites mémoires
  • Compatibilité multithread
  • Très gros gain de vitesse
  • Gain d’occupation mémoire
  • Débogage
  • Système de log et outils associés
  • Paramétrage généralisé de l’encodage Unicode (UTF8/UTF16LE/UTF16BE)
  • Mise en Librairie et regroupement dans UnitexTool
  • Compatibilité Visual C++
  • Création des outils Untokenizer (et DuplicateFile)
  • Création de l’outil Fst2Check à partir du compilateur Grf2Fst2
  • Compatibilité avec système de gestion de persistance des graphes et dictionnaire externe et allocateur de mémoire optimisé
  • Gestion des lectures de gros fichiers par accès fichier en mémoire, avec code Posix et MS-Windows

Ergonotics a également proposé une librairie JNI permettant d’appeler aisément les outils Unitex à partir d’application Java, qui est maintenant integrée dans Unitex 3.0.

Enfin, Ergonotics propose un ensemble logiciel permettant d’enrichir encore la souplesse et les performances d’Unitex 2.1, 3.0 et 3.1 beta.

Cela permet d’obtenir les performances d’exécutions maximales, et de protéger votre propriété intellectuelle des ressources linguistiques lors de la distribution d’un logiciel. Avec :

  • Un gestionnaire de persistance de ressource et système de fichier virtuel optimisé, compatible multithread
  • Un gestionnaire d’allocation mémoire spécifique et optimisé par opération
  • Un format de fichier graphe binaire optimisé, offrant la possibilité de ne pas avoir sur disque les graphes en clair et de les crypter
  • Un format binaire INP remplaçant le format INF pour les dictionnaires Unitex 2.1, immédiat à charger et ne demandant pas d’allocation mémoire (mais uniquement un fichier mappé en mémoire, ce qui est plus efficace, notamment sur iPhone)

Guide d'utilisation de la bibliothèque Unitex

Vous pouvez lire l'article A NLP engine from the lab to the iPhone qui décrit les premières optimisations apportées et leurs résultats

La page http://igm.univ-mlv.fr/~unitex/index.php?page=12 contient une liste d'entreprise utilisant Unitex

Contact

N'hésitez-pas à nous contacter pour toute question.