Cómo extraer metadatos de distintos tipos de documentos con AI Builder - Itequia

¿Cómo extraer metadatos con AI Builder?

¿Qué es AI Builder? 

Durante los últimos años, especialmente el último año, se ha notado un gran aumento en el interés sobre la automatización de procesos y la inteligencia artificial.  

Gracias a la Power Platform, Microsoft nos ha dado varias herramientas, como Power Automate y Power Automate Desktop para ayudarnos a definir flujos automatizados que nos permitan eliminar de nuestro día a día esos procesos repetitivos que nos hacen perder productividad. 

La mayoría de los procesos que nos podemos encontrar día a día, están relacionados con la extracción de datos, de distintos tipos de documentos, para imputarlos en distintos sistemas. 

Es aquí donde entra en juego AI Builder, un servicio dentro de la Power Platform que nos proporciona distintas funcionalidades de inteligencia artificial, no sólo relacionada con la extracción de datos de un documento, si no con por ejemplo funcionalidades de reconocimiento de objetos en imágenes, detección de opiniones positivas o negativas sobre un texto o detectar el idioma de un texto y traducirlo automáticamente. 

Pero en este artículo, vamos a centrarnos en las funcionalidades que trabajan sobre documentos. 

Modelos-IA-Power-Platform-Itequia

¿Qué modelos predefinidos podemos encontrar en AI Builder? 

Para la extracción de datos de documentos, existen una serie de modelos predefinidos. Pero ¿Qué son estos modelos predefinidos y cuáles son? Vamos a pasar a ver cada uno de ellos e intentar definirlos: 

Extraer Información de facturas 

Esta funcionalidad nos permite pasarle una factura cualquiera y que nos extraiga la siguiente información: 

  • Dirección del cliente 
  • Destinatario de la dirección de cliente 
  • Id del cliente 
  • Nombre de cliente 
  • Fecha de vencimiento 
  • Fecha de factura 
  • Id de la factura 
  • Subtotal 
  • Impuesto total 
  • Dirección del proveedor 
  • Destinatario de la dirección del proveedor 
  • Nombre del proveedor 
  • Elementos de línea 
Extraer-Información-de-facturas-AI-Builder-Itequia

Extraer todo el texto en fotos y documentos PDF 

Esta funcionalidad nos permite, como bien dice el título, extraer todo el texto de una imagen o de un documento PDF. 
Podéis verlo más claro en la imagen de ejemplo: 

Extraer-todo-el-texto-en-fotos-y-documentos-PDF-AI-Builder-Itequia

Extraer información de recibos 

Esta funcionalidad nos permite pasarle un recibo cualquiera y que nos extraiga la siguiente información: 

  • Nombre del comerciante 
  • Dirección del comerciante 
  • Número de teléfono del comerciante 
  • Fecha de la transacción 
  • Hora de la transacción 
  • Artículos adquiridos 
  • Subtotal 
  • Impuestos 
  • Total 
Extraer-información-de-recibos-AI-Builder-Itequia

Extraer información de documentos de identidad 

Esta funcionalidad nos permite pasarle una imagen de un documento de identidad cualquiera y que nos extraiga la siguiente información: 

  • Apellidos 
  • Nombre de pila 
  • País 
  • Fecha de nacimiento 
  • Fecha de vencimiento del documento de identidad 
  • Número de documento de identidad 
  • Zona de lectura mecánica 
  • Nacionalidad 
  • Género 
Extraer-información-de-documentos-de-identidad-AI-Builder-Itequia

Extraer información de tarjetas de visita 

Esta funcionalidad nos permite pasarle una imagen de una tarjeta de visita cualquiera y que nos extraiga la siguiente información: 

  • Nombre completo 
  • Apellidos 
  • Nombre de pila 
  • Puesto 
  • Correo electrónico 
  • Dirección completa 
  • Nombre de la empresa 
  • Teléfono de trabajo 
  • Teléfono móvil 
  • Fax 
  • Calle de la dirección 
  • Ciudad de la dirección 
  • Código postal de la dirección 
  • País o región de la dirección 
Extraer-información-de-tarjetas-de-visita-AI-Builder-Itequia

Modelos Personalizados 

En el punto anterior hemos visto que existen una serie de modelos predefinidos que nos sacan cierta información sobre distintos tipos de documentos, pero existen dos situaciones que normalmente se presentan cuando queremos utilizar estos modelos. 

La primera de ellas es la mala calidad de las respuestas para algunos documentos en concreto, hay veces que por ejemplo nos damos cuenta de que algunos documentos con cierta estructura no nos devuelven los datos esperados o directamente nos devuelve los datos vacíos. 

Otro caso muy común es que queramos obtener algún dato distinto a los que nos devuelven estos modelos predefinidos, por ejemplo, en un recibo de un taxi los KMs que se han recorrido. 

En estos casos, AI Builder nos da la posibilidad de definir nuestro propio modele personalizado, vamos a hacer un recorrido en la creación de estos: 

¿Cómo crear Modelos Personalizados? 

Lo primero que haremos será definir los campos que vamos a querer obtener de los documentos, estos campos pueden ser de 3 tipos diferentes: 

  • Campo: Un texto 
  • Casilla 
  • Tabla con sus respetivas columnas 
Seleccionar-información-para-extraer-AI-Builder-Itequia

En la siguiente página podremos añadir colecciones, es posible que, si estamos haciendo un modelo de facturas, tengamos facturas con diferentes estructuras, en este caso podemos crear distintas colecciones para entrenar a continuación. 

En la imagen a continuación podemos ver que se han generado una colección para dos tipos de facturas diferentes: 

Agregar-colecciones-de-documentos-AI-Builder-Itequia

En el siguiente paso vamos a utilizar los documentos subidos a las colecciones para marcar los distintos datos dentro de cada uno de los documentos: 

Colecciones-de-datos-en-documentos-AI-Builder-Itequia

Por últimos, entrenaremos al modelo para que se pueda utilizar con los conectores de AI Builder

Resumen-Modelo-AI-Builder-Itequia

Una vez entrenado veremos el resumen de nuestro modelo con algunas métricas de confianza. 

Metricas-AI-Builder-Itequia

En el botón de “Prueba rápida” podremos hacer pruebas, pasándole algún documento de nuestro dispositivo y viendo los resultados que este devuelve. 

Puedes conocer más detalles sobre cómo crear modelos personalizados de procesamiento de documentos aquí.

¿Cómo integrar AI Builder con Power Automate? 

Ahora que ya conocemos tanto los modelos predefinidos como los modelos personalizados, veamos cómo podemos utilizar cada uno de ellos dentro de un flujo de Power Automate. 

Al agregar una acción en un flujo de Power Automate nos encontraremos el siguiente conjunto de acciones de AI Builder: 

Conjunto-acciones-AI-Builder-integración-Power-Automate-Itequia

Veamos, por ejemplo, la acción de “Extraer información de facturas” (Modelo predefinido), en ella tendremos que pasarle el contenido de un documento y el intervalo de páginas que queremos pasarle del documento. Si lo dejamos vacío, por defecto, enviará todas. 

Extraer-Información-de-facturas-AI-Builder-integración-Power-Automate-Itequia

Fijémonos que el contenido del archivo lo podemos obtener de distintas formas, si es un documento que tenemos guardado en la nube, ya sea en una biblioteca de Sharepoint Online o en Onedrive, ya disponemos de distintas acciones que nos extraen el contenido de un fichero concreto: 

Obtener-contenido-archivo-AI-Builder-integración-Power-Automate-Itequia

En caso de conocer la extensión del archivo y el contenido en Base64 de un archivo, también podríamos generar una variable que acepte el AI Builder con la acción Redactar, generando un Json con el tipo de contenido del archivo y el contenido en base64. 

Redactar-AI-Builder-Integración-Power-Automate-Itequia

Veamos a continuación el resultado de ejecutar la acción de AI Builder: 

Ejecutar-acción-AI-Builder-Integración-Power-Automate-Itequia

Vemos todos los datos que nos sacan y además nos da un valor de confianza en el resultado obtenido, permitiéndonos así aplicar una lógica de aceptación de los resultados en función de este valor. 

Veamos ahora cómo utilizar un modelo personalizado. 

Existe otra acción llamada “Extraer información de documentos”, donde podremos pasarle el Modelo personalizado que queramos utilizar, la extensión del archivo y el contenido del archivo, además, podremos indicarle que páginas queremos procesar: 

Extraer-información-de-documentos-modelos-personalizados-AI-Builder-Itequia

Como podemos ver, los resultados son devueltos de la misma manera. 

¿Qué conclusiones podemos sacar del uso de AI Builder y su integración con Power Automate? 

Con estas nuevas funcionalidades que nos brinda AI Builder, podemos integrarnos con Power Automate para automatizar procesos, por ejemplo, la recepción de ciertos documentos, extraer sus datos utilizando AI Builder e imputarlos en cualquier tipo de origen de datos, ahorrando así tiempo y el realizar tareas repetitivas a distintos usuarios, que podrían emplear ese tiempo en tareas que aporten un mayor valor a nuestra empresa. 

Adrian Cano Esteban – Lead Developer at Itequia