Logo Zéphyrnet

Classification rentable des documents à l'aide du modèle d'intégration multimodale Amazon Titan | Services Web Amazon

Date :

Les organisations de tous secteurs souhaitent catégoriser et extraire des informations à partir de volumes élevés de documents de différents formats. Le traitement manuel de ces documents pour classer et extraire des informations reste coûteux, sujet aux erreurs et difficile à mettre à l'échelle. Progrès en intelligence artificielle générative (IA) ont donné naissance à des solutions de traitement intelligent des documents (IDP) capables d'automatiser la classification des documents et de créer une couche de classification rentable capable de gérer des documents d'entreprise divers et non structurés.

La catégorisation des documents est une première étape importante dans les systèmes IDP. Il vous aide à déterminer la prochaine série d'actions à entreprendre en fonction du type de document. Par exemple, lors du processus de règlement des réclamations, l'équipe des comptes créditeurs reçoit la facture, tandis que le service des réclamations gère les documents contractuels ou politiques. Les moteurs de règles traditionnels ou la classification basée sur le ML peuvent classer les documents, mais atteignent souvent une limite quant aux types de formats de documents et à la prise en charge de l'ajout dynamique de nouvelles classes de documents. Pour plus d'informations, voir Le classificateur de documents Amazon Comprehend ajoute la prise en charge de la mise en page pour une plus grande précision.

Dans cet article, nous discutons de la classification des documents à l'aide du Modèle d'intégration multimodale Amazon Titan pour classer tous les types de documents sans avoir besoin de formation.

Intégrations multimodales Amazon Titan

Amazon a récemment introduit Intégrations multimodales Titan in Socle amazonien. Ce modèle peut créer des intégrations d'images et de texte, permettant ainsi la création d'intégrations de documents à utiliser dans de nouveaux flux de travail de classification de documents.

Il génère des représentations vectorielles optimisées des documents numérisés sous forme d'images. En codant les composants visuels et textuels dans des vecteurs numériques unifiés qui encapsulent la signification sémantique, il permet une indexation rapide, une recherche contextuelle puissante et une classification précise des documents.

À mesure que de nouveaux modèles et types de documents apparaissent dans les flux de travail métier, vous pouvez simplement appeler l'option API Amazon Bedrock pour les vectoriser dynamiquement et les ajouter à leurs systèmes IDP afin d'améliorer rapidement les capacités de classification des documents.

Vue d'ensemble de la solution

Examinons la solution de classification de documents suivante avec le modèle Amazon Titan Multimodal Embeddings. Pour des performances optimales, vous devez personnaliser la solution en fonction de votre cas d'utilisation spécifique et de la configuration du pipeline IDP existant.

Cette solution classe les documents à l'aide d'une recherche sémantique d'intégration vectorielle en faisant correspondre un document d'entrée à une galerie de documents déjà indexée. Nous utilisons les composants clés suivants :

  • embeddings - embeddings sont des représentations numériques d'objets du monde réel que les systèmes d'apprentissage automatique (ML) et d'IA utilisent pour comprendre des domaines de connaissances complexes comme le font les humains.
  • Bases de données vectorielles - Bases de données vectorielles sont utilisés pour stocker les intégrations. Les bases de données vectorielles indexent et organisent efficacement les intégrations, permettant une récupération rapide de vecteurs similaires en fonction de mesures de distance telles que la distance euclidienne ou la similarité cosinus.
  • Recherche sémantique – La recherche sémantique fonctionne en considérant le contexte et la signification de la requête d’entrée ainsi que sa pertinence par rapport au contenu recherché. Les intégrations vectorielles sont un moyen efficace de capturer et de conserver la signification contextuelle du texte et des images. Dans notre solution, lorsqu'une application souhaite effectuer une recherche sémantique, le document de recherche est d'abord converti en un embedding. La base de données vectorielles avec le contenu pertinent est ensuite interrogée pour trouver les intégrations les plus similaires.

Au cours du processus d'étiquetage, un échantillon de documents commerciaux tels que des factures, des relevés bancaires ou des ordonnances sont convertis en intégrations à l'aide du modèle Amazon Titan Multimodal Embeddings et stockés dans une base de données vectorielle par rapport à des étiquettes prédéfinies. Le modèle Amazon Titan Multimodal Embedding a été formé à l'aide de l'algorithme euclidien L2 et, par conséquent, pour de meilleurs résultats, la base de données vectorielles utilisée doit prendre en charge cet algorithme.

Le diagramme d'architecture suivant illustre comment vous pouvez utiliser le modèle Amazon Titan Multimodal Embeddings avec des documents dans un Service de stockage simple Amazon (Amazon S3) pour la création de galerie d'images.

Le flux de travail comprend les étapes suivantes :

  1. Un utilisateur ou une application télécharge un exemple d'image de document avec des métadonnées de classification dans une galerie d'images de document. Un préfixe S3 ou des métadonnées d'objet S3 peuvent être utilisés pour classer les images de la galerie.
  2. Un événement de notification d'objet Amazon S3 appelle l'intégration AWS Lambda la fonction.
  3. La fonction Lambda lit l'image du document et traduit l'image en intégrations en appelant Amazon Bedrock et en utilisant le modèle Amazon Titan Multimodal Embeddings.
  4. Les intégrations d'images, ainsi que la classification des documents, sont stockées dans la base de données vectorielles.

Il s'agit du diagramme d'architecture qui illustre comment Titan Multimodal Embeddings peut être utilisé avec des documents dans un compartiment Amazon Simple Storage Service (Amazon S3) pour la création et la classification de galeries d'images.

Lorsqu'un nouveau document doit être classé, le même modèle d'intégration est utilisé pour convertir le document de requête en intégration. Ensuite, une recherche de similarité sémantique est effectuée sur la base de données vectorielles à l'aide du query embedding. L'étiquette récupérée par rapport à la correspondance d'intégration supérieure sera l'étiquette de classification du document de requête.

Le diagramme d'architecture suivant illustre comment utiliser le modèle Amazon Titan Multimodal Embeddings avec des documents dans un compartiment S3 pour la classification d'images.

Le flux de travail comprend les étapes suivantes :

  1. Les documents qui nécessitent une classification sont téléchargés dans un compartiment S3 d'entrée.
  2. La fonction de classification Lambda reçoit la notification d'objet Amazon S3.
  3. La fonction Lambda traduit l'image en intégration en appelant l'API Amazon Bedrock.
  4. La base de données vectorielles est recherchée pour un document correspondant à l'aide d'une recherche sémantique. La classification du document correspondant est utilisée pour classer le document d'entrée.
  5. Le document d'entrée est déplacé vers le répertoire ou le préfixe S3 cible à l'aide de la classification extraite de la recherche dans la base de données vectorielles.

Il s'agit du diagramme d'architecture qui illustre comment Titan Multimodal Embeddings peut être utilisé avec des documents dans un compartiment Amazon Simple Storage Service (Amazon S3) pour la classification d'images.

Pour vous aider à tester la solution avec vos propres documents, nous avons créé un exemple de notebook Python Jupyter, disponible sur GitHub.

Pré-requis

Pour exécuter le notebook, vous avez besoin d'un Compte AWS avec approprié Gestion des identités et des accès AWS (IAM) pour appeler Amazon Bedrock. De plus, sur le Accès au modèle de la console Amazon Bedrock, assurez-vous que l'accès est accordé pour le modèle Amazon Titan Multimodal Embeddings.

Implémentation

Dans les étapes suivantes, remplacez chaque espace réservé de saisie utilisateur par vos propres informations :

  1. Créez la base de données vectorielles. Dans cette solution, nous utilisons une base de données FAISS en mémoire, mais vous pouvez utiliser une base de données vectorielle alternative. La taille des dimensions par défaut d'Amazon Titan est de 1024 XNUMX.
index = faiss.IndexFlatL2(1024)
indexIDMap = faiss.IndexIDMap(index)

  1. Une fois la base de données vectorielles créée, énumérez les exemples de documents, en créant des intégrations de chacun et stockez-les dans la base de données vectorielles.
  1. Testez avec vos documents. Remplacez les dossiers du code suivant par vos propres dossiers contenant des types de documents connus :
DOC_CLASSES: list[str] = ["Closing Disclosure", "Invoices", "Social Security Card", "W4", "Bank Statement"]

getDocumentsandIndex("sampleGallery/ClosingDisclosure", DOC_CLASSES.index("Closing Disclosure"))
getDocumentsandIndex("sampleGallery/Invoices", DOC_CLASSES.index("Invoices"))
getDocumentsandIndex("sampleGallery/SSCards", DOC_CLASSES.index("Social Security Card"))
getDocumentsandIndex("sampleGallery/W4", DOC_CLASSES.index("W4"))
getDocumentsandIndex("sampleGallery/BankStatements", DOC_CLASSES.index("Bank Statement"))

  1. À l'aide de la bibliothèque Boto3, appelez Amazon Bedrock. La variable inputImageB64 est un tableau d'octets codé en base64 représentant votre document. La réponse d'Amazon Bedrock contient les intégrations.
bedrock = boto3.client(
service_name='bedrock-runtime',
region_name='Region’
)

request_body = {}
request_body["inputText"] = None # not using any text
request_body["inputImage"] = inputImageB64
body = json.dumps(request_body)
response = bedrock.invoke_model(
body=body, 
modelId="amazon.titan-embed-image-v1", 
accept="application/json", 
contentType="application/json")
response_body = json.loads(response.get("body").read()) 

  1. Ajoutez les intégrations à la base de données vectorielles, avec un ID de classe qui représente un type de document connu :
indexIDMap.add_with_ids(embeddings, classID)

  1. Avec la base de données vectorielles alimentée en images (représentant notre galerie), vous pouvez découvrir des similitudes avec de nouveaux documents. Par exemple, voici la syntaxe utilisée pour la recherche. Le k=1 indique à FAISS de renvoyer le premier match.
indexIDMap.search(embeddings, k=1)

De plus, la distance euclidienne L2 entre l’image disponible et l’image trouvée est également renvoyée. Si l'image correspond exactement, cette valeur serait 0. Plus cette valeur est grande, plus les images sont similaires.

Considérations supplémentaires

Dans cette section, nous abordons des considérations supplémentaires pour une utilisation efficace de la solution. Cela inclut la confidentialité des données, la sécurité, l’intégration avec les systèmes existants et les estimations de coûts.

Confidentialité et sécurité des données

L'AWS modèle de responsabilité partagée s'applique à protection des données dans le substrat rocheux amazonien. Comme décrit dans ce modèle, AWS est responsable de la protection de l'infrastructure mondiale qui exécute l'ensemble du cloud AWS. Les clients sont responsables de garder le contrôle de leur contenu hébergé sur cette infrastructure. En tant que client, vous êtes responsable des tâches de configuration et de gestion de la sécurité pour les services AWS que vous utilisez.

Protection des données dans Amazon Bedrock

Amazon Bedrock évite d'utiliser les invites et les continuations des clients pour entraîner les modèles AWS ou les partager avec des tiers. Amazon Bedrock ne stocke ni n'enregistre les données des clients dans ses journaux de service. Les fournisseurs de modèles n'ont pas accès aux journaux Amazon Bedrock ni aux invites et suites des clients. Par conséquent, les images utilisées pour générer des intégrations via le modèle Amazon Titan Multimodal Embeddings ne sont pas stockées ni utilisées dans la formation des modèles AWS ou dans la distribution externe. De plus, d'autres données d'utilisation, telles que les horodatages et les identifiants de compte enregistrés, sont exclues de la formation du modèle.

Intégration avec les systèmes existants

Le modèle Amazon Titan Multimodal Embeddings a subi une formation avec l'algorithme euclidien L2, la base de données vectorielle utilisée doit donc être compatible avec cet algorithme.

Prix ​​estimé

Au moment de la rédaction de cet article, selon Tarification du substrat rocheux d’Amazon pour le modèle Amazon Titan Multimodal Embeddings, voici les coûts estimés en utilisant la tarification à la demande pour cette solution :

  • Coût d'indexation unique – 0.06 $ pour une seule exécution d'indexation, en supposant une galerie de 1,000 XNUMX images
  • Coût du classement – 6 $ pour 100,000 XNUMX images d’entrée par mois

Nettoyer

Pour éviter de devoir payer des frais futurs, supprimez les ressources que vous avez créées, telles que Instance de bloc-notes Amazon SageMaker, lorsqu'il n'est pas utilisé.

Conclusion

Dans cet article, nous avons exploré comment utiliser le modèle Amazon Titan Multimodal Embeddings pour créer une solution peu coûteuse pour la classification des documents dans le flux de travail IDP. Nous avons montré comment créer une galerie d'images de documents connus et effectuer des recherches de similarité avec de nouveaux documents pour les classer. Nous avons également discuté des avantages de l'utilisation de l'intégration d'images multimodales pour la classification de documents, notamment de leur capacité à gérer divers types de documents, de leur évolutivité et de leur faible latence.

À mesure que de nouveaux modèles et types de documents apparaissent dans les flux de travail métier, les développeurs peuvent appeler l'API Amazon Bedrock pour les vectoriser de manière dynamique et les ajouter à leurs systèmes IDP afin d'améliorer rapidement les capacités de classification des documents. Cela crée une couche de classification peu coûteuse et infiniment évolutive, capable de gérer même les documents d'entreprise les plus divers et non structurés.

Dans l'ensemble, cet article fournit une feuille de route pour créer une solution peu coûteuse pour la classification des documents dans le flux de travail IDP à l'aide d'Amazon Titan Multimodal Embeddings.

Comme prochaines étapes, consultez Qu'est-ce que le substrat rocheux d'Amazon pour commencer à utiliser le service. Et suivre Amazon Bedrock sur le blog AWS Machine Learning pour vous tenir au courant des nouvelles fonctionnalités et des cas d'utilisation d'Amazon Bedrock.


À propos des auteurs

Sumit Bhati est Senior Customer Solutions Manager chez AWS, spécialisé dans l'accélération du parcours cloud pour les entreprises clientes. Sumit se consacre à aider ses clients à chaque phase de leur adoption du cloud, de l'accélération des migrations à la modernisation des charges de travail et à la facilitation de l'intégration de pratiques innovantes.

David Girling est un architecte senior de solutions IA/ML avec plus de 20 ans d'expérience dans la conception, la direction et le développement de systèmes d'entreprise. David fait partie d'une équipe de spécialistes qui s'efforce d'aider les clients à apprendre, à innover et à utiliser ces services hautement performants avec leurs données pour leurs cas d'utilisation.

Ravi Avula est un architecte de solutions senior chez AWS se concentrant sur l'architecture d'entreprise. Ravi possède 20 ans d'expérience en génie logiciel et a occupé plusieurs postes de direction en génie logiciel et en architecture logicielle dans le secteur des paiements.

Georges Belsian est architecte d'applications cloud senior chez AWS. Il a pour passion d'aider les clients à accélérer leur parcours de modernisation et d'adoption du cloud. Dans son rôle actuel, George travaille aux côtés des équipes clients pour élaborer des stratégies, concevoir et développer des solutions innovantes et évolutives.

spot_img

Dernières informations

spot_img