Plateforme PaaS des hyperscalers versus plateforme PaaS d’Oracle, que choisir ?
Ces dernières années ont vu émerger les plateforme PaaS généralistes telles qu’AWS, Azure, Google et plus récemment les plateforme PaaS des grands éditeurs de progiciels tels qu’Oracle.
A cela se rajoute une offre très abondante de briques Open Source.
Cela offre aux entreprises un choix très vaste pour répondre à leurs besoins d’applications spécifiques mais complique aussi leurs choix et nous constatons que face à la pression des fournisseurs qui cherchent à mettre en avant leurs solutions, les DSI ont du mal à y voir clair.
A travers un service particulier proposés par ces plateformes : la reconnaissance de caractère (OCR), l’objectif de cet article est de mettre en évidence les principales caractéristiques de 3 approches et de montrer que le choix entre elles relève finalement d’une alternative « make or buy ».
Il arrive couramment dans les processus transverses de l’entreprises que les supports d’origine soient en format papier, image ou PDF (ex de la commande reçue d’un client, la facture fournisseur ou un PV de recette). Or les applications de gestions de l’entreprise traitent de la donnée structurée et sans données structurées pour les alimenter, ce type d’outil serait caduque. Pour traiter la donnée texte, il faut d’abord l’extraire de son support d’origine, avant de la transférer d’une interface à une autre du SI de gestion. Pour résoudre ce problème, il existe des outils de reconnaissance de texte, les OCR.
Ces outils permettent d’extraire les données voulues dans un format exploitable par les applications métier. Pour ce faire, ils procèdent en deux étapes :
- Reconnaissance et extraction des caractères depuis le document source
- Analyse sémantique du fichier généré pour identifier les champs pertinents
Dès lors, quelle solution choisir ?
Nous allons déterminer ici les caractéristiques de ces différentes solutions, pour vous permettre de déterminer celle qui serait la mieux adaptée à votre usage.
Parmi les différents OCR, on peut distinguer les solutions open source (à héberger sur un serveur local), les services OCR proposés par les plateformes PaaS généralistes (Azur, AWS, Google…), et les services OCR proposés par les plateformes PaaS des éditeurs de progiciels ou des éditeurs de solutions métiers spécialisés comme Oracle.
Reconnaissance et extraction des caractères depuis le document source
Les OCR Open Source :
Pour cette première étape, ils génèrent un fichier texte, à partir d’un scan du document. C’est une solution qui a l’avantage d’être gratuite en elle-même, car il existe des librairies open source sur python. Elle ne demande pas non plus de connexion vers le cloud. Cependant, elle présente des résultats aléatoires en termes de qualité. Si le document initial est flou ou chiffonné, la qualité du texte obtenu est très aléatoire.
Les Plateformes Paas généralistes (OCR cloud d’extraction des données brutes)
Cette solution génère un fichier .Json, plus précis que le fichier texte, ce qui en fait un outil beaucoup plus précis que l’OCR local, avec de bonnes performances même en cas de documents flous ou mal scannés. Il s’agit d’un outil distant, qui demande une connexion vers le cloud. Le document scanné est envoyé à l’OCR cloud, qui répond par un fichier .Json. Ce type de fichier a comme avantage d’être plus précis qu’un fichier texte, car il contient en plus des caractères, des informations de position du texte dans la page sous forme de boîtes englobantes, ce qui permet d’en manipuler les coordonnées. Certaines versions mettent à disposition une autre information utile : un indice de confiance dans la détection des caractères, qui permet de juger de la probabilité d’erreur. Les informations relatives à la disposition des éléments dans la page sont hiérarchisées selon différents niveaux de précision : paragraphe, ligne, mot, et caractère par exemple. Il existe plusieurs API pour implémenter cette solution, comme G vision et MS Azure. Elles offrent toutes deux un bon niveau de performance, avec une extraction de la donnée en moins de 5 secondes. D’autres API comme Recognition par Amazon sont moins performantes.
Plateformes Paas des éditeurs de progiciels. (OCR cloud clé en main)
Les OCR cloud clef en main eux, ne demandent pas cette première étape. Ils se charge de réaliser tout le le travail de la chaîne et restitue directement les informations des champs demandés.
Analyse sémantique du fichier généré pour identifier les champs pertinents
Les OCR Open Source :
Dans le cas de la solution locale, cela demande l’écriture d’un fichier template spécifique qui permette de requêter les informations recherchées. Un travail supplémentaire est demandé, mais des programmes sont disponibles en open source sous python.
Les Plateformes Paas généralistes (OCR cloud d’extraction des données brutes):
Pour la solution cloud classique, après génération du fichier.Json, il faut de même écrire un script personnalisé en fonction des coordonnées des informations à chercher dans le document. La nature du fichier .Json rend néanmoins ces informations plus aisées à extraire que dans le cas de l’OCR open source.
Plateformes Paas des éditeurs de progiciels. (OCR cloud clé en main)
La solution cloud clef en main elle retourne directement les champs spécifiques demandés. Certaines API proposent de plus un apprentissage type intelligence artificielle avec des réseaux de neurones, qui permet d’améliorer la performance. C’est le cas de Nanonets et Verify. D’autres API ne demandent pas d’apprentissage, et permettent d’extraire directement les informations des champs avec la même fiabilité que les Plateformes Paas généralistes.
Cette solution est très performante, avec des résultats similaires à la solution des plateformes Paas classiques, mais a tout de même des défauts. En effet, si elle ne demande aucun effort d’intégration, l’absence d’accès au code a un inconvénient : en cas de bug, il ne peut pas être résolu directement par l’équipe informatique, mais seul l’éditeur est en mesure d’intervenir.
Structure des coûts
Les OCR Open Source :
Pour cette solution, pour une moindre performance, le seul coût est fixe : un coût d’intégration non négligeable afin d’écrire le fichier template de récupération des données souhaitées. Cette solution est la moins performante, mais dès lors qu’on atteint un volume pour lequel son coût d’intégration est inférieur à la facturation de la plateforme Paas des éditeurs de progiciels, elle est la moins chère de toutes.
Les Plateformes Paas généralistes (OCR cloud d’extraction des données brutes)
Pour cette solution, il y a un coût fixe d’intégration non négligeable afin de développer le script maison de récupération des données souhaitées, et un coût variable de facturation du service cloud, en fonction du nombre de documents traités (relativement accessible : environ 1$50 les 1000 documents scannés).
Ainsi, quand le volume de documents est important, elle est moins chère que la solution des plateformes Paas des éditeurs de progiciels, pour une performance équivalente.
Plateformes Paas des éditeurs de progiciels (OCR cloud clé en main)
Pour cette solution, en l’absence d’effort d’intégration, le seul coût est celui de la facturation, en fonction du nombre de documents traités.
Ainsi, pour un volume faible, la Plateforme PaaS des éditeurs de progiciels est à la fois la moins chère et la plus performante des solutions. En revanche, pour un volume élevé, elle est la plus chère de toutes.
A noter par ailleurs que si l’utilisation attendue sort du champ pour laquelle la plate-forme a été conçue, la valeur ajoutée apportée par l’analyse sémantique proposée par l’éditeur devient sans intérêt et la plate-forme perd de son intérêt par rapport aux plateformes PaaS généralistes. Ainsi une telle plate-forme peut faire gagner beaucoup de temps à l’entreprise pour de la reconnaissance de facture fournisseur si elle a été prévue pour cela mais perdra de son intérêt si l’entreprise veut l’utiliser pour reconnaitre des tickets de caisses si la plate-forme n’a pas prévu ce cas de figure.
Que choisir ?
Pour un volume faible ou un besoin assez standard
Assez faible pour que le coût facturé de la solution Paas des éditeurs de progiciels descende en dessous du coût d’intégration supérieur de la solution Paas généraliste, voire de la solution OCR Open Source.
Pour un volume élevé ou des besoins très spécifiques
Assez élevé pour que le coût facturé de la solution Paas des éditeurs de progiciels soit supérieur au coût d’intégration de la solution Paas généraliste et de la solution OCR Open Source.
En synthèse on peut résumer le choix entre solution open source, service de plateforme PaaS généraliste ou service de plateforme PaaS des éditeurs de progiciels métier à une décision « make or buy ».
Les solutions Open Source ont un coût d’entrée faible mais nécessitent un effort d’intégration important de la part de l’entreprise, un maintien et une exploitation de la solution complètement à la charge de l’entreprise. Cette approche peut à notre avis se justifier pour des besoins très spécifiques ou des gros volumes qui permettent d’amortir les coûts d’investissements.
Les services PaaS des éditeurs de progiciels tels qu’Oracle, a contrario, présentent un coût à l’usage beaucoup plus important mais sont des solutions clé en main qui nécessitent peu d’efforts d’intégration de la part de l’entreprise ainsi que peu d’efforts de maintenance et d’exploitation car ceux-ci sont pris en charges par le fournisseur du service. Ces services sont pertinents lorsqu’un ou plusieurs des critères suivants sont réunis : besoin de mettre en œuvre la solution rapidement, volumes modérés, cas d’usages assez standards couverts par la plateforme.
Les services PaaS des éditeurs généralistes se situent entre les deux, ils permettent de décharger l’entreprise de la composante de reconnaissance brute pour un coût à l’usage assez modéré. Par contre l’entreprise devra investir dans un effort d’intégration pour traiter la dimension analyse sémantique (via des développements ou en utilisant éventuellement des services complémentaires proposés par les plateformes SaaS). Cette approche est souvent un bon compromis car elle permet à l’entreprise de bénéficier de l’effet d’échelle et de la robustesse des services PaaS des généralistes et de se concentrer sur la composante qui lui est spécifique, qui réside en générale dans l’analyse sémantique.