Cree procesamiento de documentos financieros con Pulse AI y Amazon Bedrock

Las instituciones financieras procesan miles de documentos complejos diariamente. Los errores de reconocimiento óptico de caracteres (OCR) en datos financieros pueden propagarse a través de cálculos interconectados, afectando la precisión analítica. Si bien un solo error de OCR en un documento legal estándar puede requerir solo una rápida corrección manual, el mismo error en los datos financieros puede generarse en cascada a través de cálculos interconectados, lo que lleva a errores sistemáticos en el análisis y potencialmente costosos para las organizaciones.

Las herramientas tradicionales de OCR son muy deficientes a la hora de procesar los complejos documentos financieros que las instituciones manejan a diario: balances, declaraciones de ingresos, presentaciones ante la SEC, informes de investigación y materiales de auditoría. Estos documentos presentan estructuras de tablas intrincadas con celdas fusionadas y datos jerárquicos, diseños de varias columnas con referencias interconectadas e información dependiente del contexto que requiere comprensión semántica. Los enfoques tradicionales de OCR tratan estos documentos como imágenes, sin tener en cuenta las relaciones estructurales y los matices contextuales que hacen que los documentos financieros tengan significado. El resultado es una cascada de correcciones manuales, retrasos en la entrada de datos y errores analíticos sistemáticos.

Esta publicación demuestra cómo crear un proceso de extracción de documentación y ajuste de modelos que aborde estos desafíos críticos. Al combinar las capacidades avanzadas de comprensión de documentos de Pulse AI con los potentes servicios de IA de Amazon Bedrock, las organizaciones pueden lograr una precisión de nivel empresarial y extraer información financiera contextualmente relevante a escala. Amazon Bedrock ofrece personalización de modelos totalmente administrada sin gastos generales de operaciones de aprendizaje automático (ML), implementación bajo demanda sin planificación de capacidad, y la familia de modelos Nova ofrece sólidas características de costo-rendimiento, para que los equipos puedan centrarse en la innovación en lugar de la infraestructura.

A diferencia de los canales de OCR monolíticos tradicionales, Pulse integra modelos de lenguaje de visión con componentes de aprendizaje automático clásicos diseñados específicamente para la comprensión de documentos, creando una solución inteligente que extrae datos estructurados con conciencia semántica, genera conjuntos de datos de ajuste fino supervisados ​​mejorados para modelos de dominio financiero y permite la implementación de modelos de lenguaje grande (LLM) personalizados entrenados en sus datos financieros específicos. Pulse se implementa en empresas globales, incluidas Samsung, Cloudera, Howard Hughes y Fortune 500, instituciones financieras y firmas líderes de capital privado que procesan grandes volúmenes de documentos financieros y operativos.

En una implementación, un lote de alrededor de 1000 documentos financieros complejos que anteriormente requerían una entrega de varios días se procesó en menos de tres horas, generando resultados estructurados y auditables listos para análisis posteriores y aplicaciones de inteligencia artificial.

Fig 1: Flujos de trabajo de procesamiento de documentos: tradicional versus pulso

En resumen, Pulse AI y Amazon Bedrock juntos proporcionan:

Pulse AI extrae datos estructurados y semánticamente conscientes de documentos financieros complejos que manejan tablas intrincadas, diseños de varias columnas y datos jerárquicos. Amazon Bedrock perfecciona los modelos de Amazon Nova con esos datos de alta calidad para crear inteligencia específica de dominio para las convenciones financieras de su organización. Luego, los modelos personalizados procesan nuevos documentos con una comprensión específica de la organización, lo que reduce la revisión manual de días a horas.

El siguiente flujo de trabajo demuestra un enfoque para crear aplicaciones financieras inteligentes. Comenzando con documentos financieros sin procesar, el proceso organiza una serie sofisticada de pasos (desde el procesamiento y ajuste de documentos hasta la implementación) para crear una solución de IA personalizada adaptada al análisis y la información de datos financieros.

Fig. 2: representa un flujo de trabajo de arquitectura de referencia de procesamiento de documentos que demuestra cómo Pulse AI, integrado con los servicios de AWS, crea modelos específicos de dominio para el procesamiento inteligente de documentos (IDP).

El sistema comienza (paso 1) ingiriendo los documentos en el contenedor Pulse en su VPC o oferta de software como servicio (SAAS) Pulse. El modelo Pulse procesa los documentos financieros (paso 2). La salida de los datos extraídos se convierte al formato de ajuste fino supervisado de Amazon Bedrock Nova Micro y luego se almacena en un Amazon Simple Storage Service (Amazon S3) (paso 3).

Luego, el flujo de trabajo utiliza otras funciones extendidas de Amazon Bedrock:

Se ejecuta un trabajo de ajuste supervisado utilizando Amazon Nova Micro (amazon.nova-micro-v1:0) y un modelo rentable diseñado para tareas de extracción basadas en texto con una ventana de contexto de 128 KB (pasos 5 y 6). Nova Micro ofrece un rendimiento de precio competitivo. Una vez finalizado el trabajo, implemente el modelo resultante para realizar inferencias bajo demanda. También puede utilizar el rendimiento aprovisionado para cargas de trabajo de misión crítica que requieren un rendimiento constante. Utilice Test in Playground para evaluar y comparar respuestas. El modelo personalizado resultante se importa a Amazon Bedrock (paso 8) y se implementa con rendimiento aprovisionado (paso 9) para impulsar una aplicación de usuario final escalable (paso 10). Esta arquitectura combina el conjunto de datos financieros específicos del dominio con el modelo personalizado supervisado y ajustado, para que las organizaciones puedan crear aplicaciones de IA listas para producción que comprendan el contexto financiero y al mismo tiempo mantengan el rendimiento y la rentabilidad.

Requisitos previos

Debe tener los siguientes requisitos previos para seguir esta publicación.

Nota: Este tutorial crea recursos de AWS que generan cargos, que incluyen: instancia EC2 (por hora), almacenamiento S3 (por GB-mes), ajuste de Amazon Bedrock (por hora de capacitación), implementación de rendimiento aprovisionado (por hora) y AWS Secrets Manager (por secreto por mes).

Implementación paso a paso

Siga estos pasos para instalar y configurar su canal de procesamiento de documentos financieros utilizando Pulse AI y Amazon Bedrock.

Navegue a la consola Pulse y cree una cuenta. Inicie una instancia EC2 mediante la consola de AWS. Navegue hasta la consola EC2. Elija Iniciar instancia. En la pantalla de selección de AMI, busque la AMI de Amazon Linux 2023. Seleccione la AMI de Amazon Linux 2023. En la pantalla de tipo de instancia, seleccione t3.medium. Cree un nuevo par de claves para el acceso SSH a la instancia de Linux. En la configuración del grupo de seguridad, agregue una regla para permitir SSH (puerto 22) desde su dirección IP. Elija Iniciar. Guarde el ID de instancia que aparece en el mensaje de éxito. Cree su clave API desde RunPulse. Para encontrar el DNS público de su instancia, navegue hasta la consola EC2. Seleccione su instancia. Copie el valor DNS IPv4 público de la pestaña Detalles. Para conectarse a su instancia EC2, ejecute el siguiente comando SSH. Reemplace YOUR_KEY_FILE.pem con el nombre de archivo del par de claves real y YOUR_INSTANCE_DNS con el valor de DNS IPv4 público del paso 4a: ssh -i YOUR_KEY_FILE.pem ec2-user@YOUR_INSTANCE_DNS Ejemplo: ssh -i my-keypair.pem ec2-user@ec2-54-123-45-67.compute-1.amazonaws.com En su La instancia EC2 configura sus credenciales de AWS ejecutando aws configure. Cuando se le solicite, ingrese su ID de clave de acceso, clave de acceso secreta, Región (us-east-1) y formato de salida (json). Guarde su clave Pulse API en AWS Secrets Manager utilizando el comando proporcionado: aws secretsmanager create-secret –name pulse-api-key –secret-string "your-api-key" Anote el ARN, tal como lo requiere la política de permisos

Nota: La versión 2 de AWS Command Line Interface (AWS CLI) viene preinstalada en las AMI de Amazon Linux 2023 de forma predeterminada.

En su instancia EC2, instale el SDK runpulse. Instale pip: sudo yum install pip Instale el SDK de Pulse Python: pip install pulse-python-sdk En su instancia EC2, cree un archivo llamado bedrock-trust-policy.json en su directorio de trabajo actual con la configuración que se muestra en la siguiente sección. Puede utilizar un editor de texto como nano o vi: nano bedrock-trust-policy.json. Crear bedrock-trust-policy.json { "Versión": "2012-10-17", "Declaración": [ { "Efecto": "Permitir", "Principal": { "Servicio": "bedrock.amazonaws.com" }, "Acción": "sts:AssumeRole", "Condición": { "StringEquals": { "aws:SourceAccount": "su-ID-de-cuenta-aws" }, "ArnLike": { "aws:SourceArn": "arn:aws:bedrock:us-east-1:your-aws-account-ID:model-customization-job/*" } } } ] } Create bedrock-permissions.json { "Version": "2012-10-17", "Statement": [ { "Sid": "S3AccessForFineTuning", "Efecto": "Permitir", "Acción": [ "s3:GetObject", "s3:PutObject", "s3:ListBucket" ], "Recurso": [ "arn:aws:s3:::nombre-de-depósito", "arn:aws:s3:::nombre-de-depósito/*" ] }, { "Sid": "SecretsManagerAccess", "Efecto": "Permitir", "Acción": [ "secretsmanager:GetSecretValue", "secretsmanager:PutSecretValue", "secretsmanager:CreateSecret", "secretsmanager:UpdateSecret", "secretsmanager:DescribeSecret" ], "Recurso": [ "arn:aws:secretsmanager:us-east-1:your-aws-account-ID:secret:your-secret-name-*" ] } ] } Luego cree el rol: aws iam create-role –role-name AmazonBedrock-FineTuning-S3-Role –assume-role-policy-document file://bedrock-trust-policy.json –description "Rol para ajuste fino de Bedrock con acceso a S3 y Secrets Manager"

Resultado esperado: JSON con rol ARN, ID y marca de tiempo de creación. Próximo,

Cree la política de permisos: aws iam put-role-policy –role-name AmazonBedrock-FineTuning-S3-Role –policy-name Bedrock-S3-Access-Policy –policy-document file://bedrock-permissions.json Vea el rol y la política de confianza: aws iam get-role –role-name AmazonBedrock-FineTuning-S3-Role Para extraer el conjunto de datos de la referencia financiera documento, ejecute el siguiente comando en la instancia EC2

# Recuperar la clave API de Secrets Manager. Mejores prácticas de seguridad: no codifique las credenciales. Recuperar de AWS Secrets Manager.

curl -X POST https://api.runpulse.com/extract -H "x-api-key: $(aws secretsmanager get-secret-value –secret-id pulse-api-key –query SecretString –output text)" -H "Tipo de contenido: aplicación/json" -d '{ "file_url": "https://www.impact-bank.com/user/file/dummy_statement.pdf", "figureProcessing": {"descripción": verdadero}, "extensiones": {"altOutputs": {"returnHtml": verdadero}} }'> pulse_output.json

Fragmento json extraído de la muestra de Pulse AI:

{"bounding_boxes":{"Header":[{"average_word_confidence":0.9940000000000001,"bounding_box":[0.7418,0.04248181818181818,0.89015294 11764706,0.042281818181818184,0.8901764705882352,0.0552818181818 1818,0.741835294117647,0.05548181818181818],"content":"0a-Cuenta # 12345678","id":"txt-8","original_content":"Cuenta # 12345678","page_number":2}],"Página Número":[{"average_word_confidence":0.99425,"bounding_box":[0.8071411764705881,0.24754545454545454,0.88963529 4117647,0.2474909090909091,0.8896588235294117,0.2616454545454545,0.8071529411764706,0.2617],"content":"0a-Page 1 de 2","id":"txt-3","original_content":"Página 1 de 2","page_number":1},{"average_word_confidence":0.9925,"bounding_box":[0.8076235294117646,0.057600000000000005,0.8898 117647058823,0.05738181818181818,0.8898705882352942,0.0704,0.8076823529411765,0.07061818181818182],"content":"0a-Page 2 de 2","id":"txt-9","original_content":"Página 2 de 2","page_number":2}],"Tablas":[{"cell_data":[{"confidence":0.9772562500000003,"loc ación":{"coordenadas":[0.0906,0.44435454545454545,0.8865647058823529,0.44499090909 090905,0.8865647058823529,0.4685,0.0906,0.4678636363636363],"página":1},"posición":{ "columna":0,"fila":0},"properties":{"spans_columns":4,"type":"header"},"text":"0t-"}, Verifique que la extracción se haya realizado correctamente comprobando que el archivo existe y contiene JSON válido jq vacío pulse_output.json && echo "JSON válido" || echo " JSON no válido" A continuación, convierta los datos extraídos en un conjunto de datos de entrenamiento de Nova. Cree un nuevo archivo llamado convert_to_nova.py y pegue el siguiente código. import jsonINPUT_FILE = "pulse_output.json" OUTPUT_FILE = "nova_dataset.jsonl"MAX_TOKENS = 30000 # Búfer por debajo de 32,768 limitdef estima_tokens(texto): """Estimación aproximada del token: ~4 caracteres por token""" return len(text) // 4def create_truncated_samples(data): """Creates muestras de entrenamiento más pequeñas dentro de los límites del token""" muestras =[]# Ejemplo 1: encabezado y número de página solo si "bounding_boxes" en los datos: if "Encabezado" en los datos["bounding_boxes"] y "Número de página" en los datos["bounding_boxes"]: header_sample = { "Header": data["bounding_boxes"]["Header"], "Número de página": data["bounding_boxes"]["Número de página"] } samples.append({ "document": header_sample, "extracted_data": header_sample }) # Ejemplos 2-4: Tablas individuales (truncadas a 20 celdas) if "Tablas" en datos["bounding_boxes"]: para i, tabla en enumerate(data["bounding_boxes"]["Tables"][:3]): truncated_table = { "table_info": table.get("table_info", {}), "cell_data": table.get("datos_celda",[])[:20] } samples.append({ "document": {"Tables": [truncated_table]}, "extracted_data": {"Tables": [truncated_table]} }) # Ejemplos 5-7: fragmentos de texto (3 elementos cada uno) si "Texto" en datos["bounding_boxes"]: text_items = datos["bounding_boxes"]["Text"] chunk_size = 3 para i en range(0, min(9, len(text_items)), chunk_size): text_chunk = {"Text": text_items[i:i+chunk_size]} samples.append({ "document": text_chunk, "extracted_data": text_chunk }) # Ejemplo 8: Título solo si "Título" en datos["bounding_boxes"]: title_sample = {"Title": data["bounding_boxes"]["Title"]} samples.append({ "document": title_sample, "extracted_data": title_sample }) return samplesdef convert_to_nova_format(sample): """ Convierte al formato Nova con indicaciones instructivas para el aprendizaje específico del dominio. Esta función crea ejemplos de capacitación que enseñan al modelo: 1. Reconocimiento de la estructura de documentos financieros (encabezados, tablas, transacciones) 2. Estandarización del tipo de datos (fechas a ISO 8601, equivale a números) 3. Preservación de la relación jerárquica (cuentas → transacciones → detalles) 4. Detección fuera de secuencia (elementos marcados con *) 5. Convenciones del dominio financiero (números de cheques, ID de terminales, datos del comerciante)""" doc_str = json.dumps(sample["document"]) extract_str = json.dumps(sample["extracted_data"]) total_tokens = estimación_tokens(doc_str) + estimación_tokens(extract_str) if total_tokens > MAX_TOKENS: print(f"Advertencia: Muestra demasiado grande ({total_tokens} tokens), omitiendo…") return Ninguno return { "schemaVersion": "bedrock-conversation-2024", "messages": [ { "role": "user", "content": [{"text": doc_str}] }, { "role": "assistant", "content": [{"text": extract_str}] } ] }# Leer entrada con open(INPUT_FILE, "r") como f: pulse_data = json.load(f)if isinstance(pulse_data, dict): pulse_data = [pulse_data]# Generar muestras truncadasall_samples =[]saltado = 0para registro en pulse_data: truncated_samples = create_truncated_samples(record) para muestra en truncated_samples: nova_record = convert_to_nova_format(sample) if nova_record: all_samples.append(nova_record) else: saltado += 1# Escribir en JSONL con open(OUTPUT_FILE, "w") como f: para nova_record en all_samples: f.write(json.dumps(nova_record) + "n")print(f" ✓ Creó {len(all_samples)} muestras de entrenamiento")print(f" ✓ Omitió {omitió} muestras que eran demasiado grandes")print(f" ✓ Salida guardada en: {OUTPUT_FILE}")print(f"Todas las muestras están bajo {MAX_TOKENS} tokens (límite: 32,768)")print(f"Siguientes pasos:")print(f"1. Verificar: wc -l {OUTPUT_FILE}")print(f"2. Cargar: aws s3 cp {OUTPUT_FILE} s3://anypulse/training-data/nova_dataset.jsonl")print(f"3. Crear un nuevo trabajo de ajuste fino")"""EXPLICACIÓN DEL FORMATO DE ENTRENAMIENTO:Qué es esto El ajuste fino enseña a Nova Micro: este script de conversión crea muestras de capacitación en un formato que enseña a Nova Micro la comprensión de documentos financieros específicos del dominio a través del aprendizaje de patrones. Mientras que las muestras de capacitación utilizan un mapeo directo de JSON a JSON (el mensaje del usuario contiene JSON extraído por Pulse, el mensaje del asistente contiene el mismo JSON estructurado), el modelo aprende varias capacidades clave: 1. RECONOCIMIENTO DE LA ESTRUCTURA DEL DOCUMENTO – Relaciones jerárquicas: Encabezados → Tablas → Texto → Números de página – Comprensión espacial del cuadro delimitador: sistemas de coordenadas y elementos. posicionamiento – Manejo de documentos de varias páginas: seguimiento de números de página y referencias entre páginas 2. PATRONES DE DATOS FINANCIEROS – Preservación de la estructura de la tabla: semántica de filas/columnas, extracción a nivel de celda – Interpretación de la puntuación de confianza: campos de alta confianza (0,99+) versus menor confianza – Coherencia del tipo de datos: números de cuentas, fechas, montos monetarios, números de cheques 3. CONSISTENCIA ESTRUCTURAL – Convenciones de nomenclatura de campos: "contenido", "confianza", "page_number", "bounding_box" – Relaciones de objetos anidados: las tablas contienen matrices de datos de celda con metadatos de posición – Preservación de metadatos: contenido original junto con valores normalizados para pistas de auditoría4 – Secciones de documentos financieros: encabezados, pies de página, tablas de transacciones, secciones de resumen – Detección fuera de secuencia: elementos marcados con asterisco.en números de cheques – Extracción de datos del comerciante: ID de terminal, información de ubicación, referencias de transacciones MECANISMO DE APRENDIZAJE: El modelo aprende a través de la exposición a los patrones de extracción estructurados de alta calidad de Pulse AI. Al ver cientos de ejemplos de cómo Pulse estructura los datos de los documentos financieros (con puntuaciones de confianza, cuadros delimitadores y relaciones jerárquicas), Nova Micro internaliza estos patrones y puede aplicarlos a nuevos documentos financieros. Este enfoque es eficaz porque: – Pulse AI proporciona datos de entrenamiento de alta calidad y estructurados consistentemente – El esquema JSON se autodocumenta (los nombres de los campos indican el propósito) – La repetición entre muestras refuerza los patrones estructurales – Las puntuaciones de confianza le enseñan al modelo qué extracciones son confiables ENFOQUES ALTERNATIVOS: Para implementaciones de producción Si requiere un marco de tareas más explícito, considere agregar indicaciones instructivas a los ejemplos de capacitación: instrucción_prompt = f''Usted es un especialista en extracción de documentos financieros. Extraiga información estructurada del siguiente documento financiero y devuélvala como JSON válido. Requisitos: – Extraer todos los datos financieros clave (cuentas, saldos, transacciones, fechas) – Usar nombres de campos consistentes (formato Snake_case) – Convertir fechas al formato ISO 8601 (AAAA-MM-DD) – Representar montos monetarios como números con metadatos de moneda – Preservar relaciones jerárquicas – Detectar elementos fuera de secuencia (marcados con *) Documento financiero: {doc_str} Devuelve solo el JSON extraído sin explicaciones.''Este enfoque instructivo proporciona requisitos explícitos y contexto de la tarea, que puede mejorar la generalización a tipos de documentos que no se ven durante la capacitación. Sin embargo, para los flujos de trabajo en los que Pulse AI maneja la extracción y el modelo aprende principalmente a replicar la estructura de salida de Pulse, el enfoque de mapeo directo actual es suficiente y evita la sobrecarga de tokens debido a instrucciones largas. CONSIDERACIONES DE PRODUCCIÓN: – Tamaño del conjunto de datos de entrenamiento: 100 a 500 muestras para el piloto, 5000 a 10 000 para producción – Métricas de evaluación: compare la salida del modelo ajustada con la línea de base de Pulse – Mejora iterativa: vuelva a capacitarse trimestralmente con nuevos tipos de documentos y borde casos: Monitoreo de calidad: realice un seguimiento de las puntuaciones de confianza y las tasas de revisión manual después de la implementación"""

Ejecute el script de conversión: python3 convert_to_nova.py

Esto generará un archivo jsonl: nova_dataset.jsonl

Nova Micro debería aprender a hacer lo siguiente de manera diferente después del ajuste fino, el reconocimiento completo de la estructura del documento, la extracción integral de tablas, la integración de datos entre documentos y las convenciones de documentos financieros.

Cree el depósito S3 para los datos de entrenamiento (si aún no lo ha creado): aws s3 mb s3://your-unique-bucket-name –region us-east-1

Habilite el control de versiones para la protección de datos:

aws s3api put-bucket-versioning –bucket your-unique-bucket-name –versioning-configuration Status=Enabled Escriba el conjunto de datos de entrenamiento de Nova en su depósito de entrenamiento S3 para el ajuste fino de Amazon Bedrock Nova aws s3 cp nova_dataset.jsonl s3:///training-data/

Nota: Los trabajos de ajuste de Amazon Bedrock y las implementaciones de modelos personalizados generan cargos. Revise los precios de Amazon Bedrock en https://aws.amazon.com/bedrock/pricing/ antes de continuar.

A continuación, ejecute el trabajo de capacitación de Amazon Bedrock aws bedrock create-model-customization-job –job-name my-fine-tuning-job-nova-micro –custom-model-name my-custom-pulse-model-nova-micro –role-arn arn:aws:iam:::role/AmazonBedrockNovaFineTuningRole –base-model-identifier amazon.nova-micro-v1:0:128k –training-data-config s3Uri=s3:///training-data/nova_dataset.jsonl –output-data-config s3Uri=s3:///output/ –hyper-parameters '{"epochCount":"2","learningRate":"0.00001","learningRateWarmupSteps":"10"}' Puede monitorear el progreso del entrenamiento usando la consola

O ejecutando el siguiente comando

export CUSTOM_MODEL_ARN=$(aws bedrock get-model-customization-job –job-identifier "" –region us-east-1 –query 'outputModelArn' –output text) echo "Su ARN de modelo personalizado: $CUSTOM_MODEL_ARN"

jobArn se puede recuperar desde la consola o desde la salida del trabajo ejecutado.

Una vez completado, la consola reflejará el estado.

Para implementar el nuevo modelo personalizado, ejecute: aws bedrock create-custom-model-deployment –model-deployment-name "my-custom-pulse-model-deployment" –model-arn "$CUSTOM_MODEL_ARN" –region us-east-1 Para verificar el estado de la implementación del modelo personalizado aws bedrock get-custom-model-deployment –custom-model-deployment-identifier "su-nombre-o-arn-de-implementación" –región us-east-1

El estado "Activo" confirma la implementación completa

Verifique que el modelo esté listo:

aws bedrock get-provisioned-model-throughput –provisioned-model-id –region us-east-1

Confirme que el estado muestra "En servicio" antes de continuar con la prueba. Pruebas utilizando el área de juegos de Amazon Bedrock.

Mensaje utilizado para la prueba:

Extraiga información detallada de la transacción de este extracto bancario: MUESTRA Estado de cuenta 12345678 Detalles de la transacción: 10/02 – POS PURCHASE TERMINAL 24349201 WAL-MART #3492 WICHITA KS 00-00-00 00:00 PM 0000000000000000 – $4.23 10/04 – POS TERMINAL DE COMPRA 443565 PLAYERS SPORTS BAR AND GRILL WICHITA KS 00-00-00 00:00 PM 0000000000000000 – $11.68 10/05 – CHEQUE 1234 – $9.98 10/05 – POS TERMINAL DE COMPRA 422443 KWAN COURT WICHITA KS 00-00-00 00:00 PM 00000000000000000 – $25.50 10/12 – CHEQUE 1236* – $69.00 10/14 – CHEQUE 1237 – $180.63 Tabla de cheques pagados: Cheque # | Fecha | Cantidad | Marcar # | Fecha | Importe 1234 | 10/05 | $9,98 | 1238 | 28/10 | $91,06 1236* | 10/12 | $69.00 | 1239 | 30/10 | $451,20 1237 | 14/10 | $180,63 | 1246* | 30/10 | $37,07 Para cada compra en POS, extraiga: 1. ID de terminal 2. Nombre del comerciante 3. Ubicación (ciudad, estado) 4. Número de referencia de la transacción 5. Monto Para cada cheque, extraiga: 1. Número de cheque 2. Fecha de liquidación 3. Monto 4. Estado de secuencia (normal o fuera de secuencia marcado con *) Proporcione resultados como JSON estructurado con objetos anidados para los detalles de la transacción.

Resultados:

Comparación de rendimiento

Comparación de modelos: evaluación del conocimiento del dominio

Métrica Nova Micro (Base) my-custom-pulse-model-nova-micro-v5 Latencia 540,508 ms (~9 min) 543,600 ms (~9 min 3.6 seg) Cheques extraídos 3 de 6 6 de 6 Compras POS extraídas 3 de 3 3 de 3 Organización de transacciones Separado por tipo Orden cronológico Integridad 50% de los datos del cheque 100% de datos de cheques Secuencia Estado Precisión Parcial (3 controles) Completo (los 6 controles) Estructura JSON Formato segmentado Lista de transacciones unificada Conocimiento del dominio Extracción básica Comprensión integral de documentos

Descargo de responsabilidad: estas métricas son específicas del conjunto de datos del documento de muestra. Tus resultados variarán

Limpieza

Complete las siguientes tareas de limpieza para evitar incurrir en cargos.

Elimine el perfil de instancia: aws iam delete-instance-profile –instance-profile-name BedrockTutorialProfile Termine la instancia EC2: aws ec2 terminate-instances –instance-ids Elimine el grupo de seguridad: aws ec2 delete-security-group –group-id –region us-east-1 Elimine el par de claves: aws ec2 delete-key-pair –key-name –region us-east-1 Elimine la implementación del modelo personalizado: aws bedrock delete-custom-model-deployment –custom-model-deployment-identifier –region us-east-1 Eliminar el modelo personalizado: aws bedrock delete-custom-model –model-identifier $CUSTOM_MODEL_ARN –region us-east-1

Advertencia: riesgo de pérdida de datos: los siguientes comandos eliminarán permanentemente todos los datos y resultados del entrenamiento.

Antes de continuar: 1) Verifique que el depósito de S3 contenga solo datos del tutorial, 2) Haga una copia de seguridad de los archivos que necesite conservar, 3) Confirme que haya anotado el nombre del depósito correctamente.

aws iam delete-role-policy –role-name AmazonBedrock-FineTuning-S3-Role –policy-name Bedrock-S3-Access-Policy Elimina el secreto de Secrets Manager: aws secretsmanager delete-secret –secret-id pulse-api-key –force-delete- without-recovery –region us-east-1 Elimina el trabajo de ajuste fino: aws bedrock stop-model-customization-job –identificador-de-trabajo –región us-east-1

Este blog de AWS proporciona instrucciones detalladas para realizar ajustes iterativos, de modo que pueda desarrollar modelos previamente personalizados para lograr una mejora continua sin comenzar desde cero. Pulse convierte documentos no estructurados en resultados estructurados y alineados con esquemas. Estos resultados se pueden exportar mediante programación a conjuntos de datos JSONL compatibles con los requisitos de ajuste de Amazon Bedrock para modelos de texto y visión. Básicamente, esto permite a Pulse manejar el trabajo pesado de la extracción y la calidad de los datos, al tiempo que simplifica la generación de los conjuntos de datos de entrenamiento necesarios para la personalización del modelo en Amazon Bedrock.

Conclusión

Al combinar la comprensión avanzada de documentos de Pulse AI con las capacidades de aprendizaje automático de AWS, puede crear sistemas de procesamiento de datos financieros que sean más rápidos, precisos y escalables que los enfoques tradicionales. Esta arquitectura demuestra un enfoque listo para producción para el procesamiento de documentos financieros utilizando Amazon Bedrock y Pulse AI. Comenzar a utilizar Pulse AI es sencillo.

Regístrese para obtener una cuenta Pulse AI Standard para comenzar a utilizar modelos optimizados para sus flujos de trabajo financieros. Si es nuevo en el sistema, la documentación de inicio rápido de Pulse AI proporciona orientación paso a paso para ayudarle a configurar su primer trabajo de ajuste e implementar modelos personalizados adaptados a las necesidades de su organización. Para obtener asistencia personalizada o preguntas sobre la implementación de ajustes a escala, comuníquese con el equipo en hello@runpulse.com; están listos para ayudarlo a desbloquear todo el potencial de la IA de dominio específico.

El verdadero poder del ajuste surge cuando complementa los modelos básicos (FM) con los conjuntos de datos financieros únicos de su organización. Al entrenar modelos en sus documentos, terminología y procesos comerciales de propiedad exclusiva, crea capacidades especializadas que los modelos genéricos normalmente no pueden igualar. Este enfoque transforma la IA de una herramienta de uso general a un activo estratégico que comprende los matices de su dominio financiero específico.

Recursos adicionales

Para profundizar su comprensión del ajuste supervisado y explorar estrategias de implementación avanzadas, consulte la Guía de ajuste fino de AWS Nova y la documentación sobre la personalización de modelos de Amazon Nova. Estos recursos proporcionan detalles técnicos sobre mejoras de hiperparámetros, mejores prácticas de preparación de datos y patrones de implementación. La documentación de Pulse API proporciona una guía completa para integrar capacidades de extracción de documentos de nivel de producción en sus flujos de trabajo existentes.

Sobre los autores

Sid Manchkanti

Sid es cofundador y director ejecutivo de Pulse AI, una plataforma de inteligencia documental para empresas de servicios financieros, seguros y otras industrias reguladas. Antes de fundar Pulse, Sid trabajó en infraestructura de inteligencia artificial a gran escala en NVIDIA y en sistemas cuantitativos en DE Shaw. Se centra en crear IA de nivel empresarial que cumpla con los estándares operativos, de gobernanza y de precisión requeridos por las organizaciones reguladas.

Ritvik Pandey

Ritvik es cofundador y director de tecnología de Pulse AI, donde dirige el desarrollo de los modelos de lenguaje de visión y la infraestructura de procesamiento de documentos patentados de la empresa. Antes de Pulse, Ritvik trabajó en investigación de IA aplicada en Tesla. Se centra en ofrecer la precisión, velocidad y confiabilidad que las industrias reguladas requieren a escala.

ND Ngoka

ND Ngoka

ND es arquitecto senior de soluciones en AWS con un enfoque especializado en IA/ML y tecnologías de almacenamiento. Guía a los clientes a través de decisiones arquitectónicas complejas, permitiéndoles crear soluciones resilientes y escalables que impulsen los resultados comerciales.

Jim Fratantoni

Jim es gerente de cuentas de GenAI en AWS y se centra en ayudar a las nuevas empresas de IA a escalar y realizar ventas conjuntas con AWS. Le apasiona trabajar con fundadores para salir al mercado de forma conjunta e impulsar el éxito de los clientes empresariales.

Greg Fina

Greg es arquitecto principal de soluciones de startups para IA generativa en Amazon Web Services, donde capacita a las startups para acelerar la innovación mediante la adopción de la nube. Se especializa en modernización de aplicaciones, con un fuerte enfoque en arquitecturas sin servidor, contenedores y soluciones de almacenamiento de datos escalables. Le apasiona utilizar herramientas de IA generativa para orquestar y optimizar implementaciones de Kubernetes a gran escala, así como promover las prácticas de GitOps y DevOps para equipos de alta velocidad. Fuera de su función de atención al cliente, Greg contribuye activamente a proyectos de código abierto, especialmente aquellos relacionados con Backstage.