Mejore la interactividad de las aplicaciones bancarias mediante el uso de MongoDB Atlas Vector Search y modelos de lenguaje de gran tamaño.
Casos de uso: Gen AI, Búsqueda inteligente, Gestión de contenido
Industrias: Servicios financieros
Productos: MongoDB Atlas, MongoDB Atlas Vector Search, Voyage AI
Socios: Amazon Bedrock, LangChain
Resumen de la solución
En esta solución, puede aprender a aprovechar la inteligencia documental mediante la IA de Agentic, impulsada por MongoDB. Este enfoque permite extraer información de datos estructurados, semiestructurados y no estructurados de diversas fuentes, como repositorios locales, contenedores en la nube y servicios de almacenamiento en la nube.
Las instituciones financieras y los proveedores de tecnología financiera gestionan volúmenes masivos de documentos y datos fragmentados de múltiples fuentes. Las tareas manuales, como la recopilación, la búsqueda y el análisis de esta información, ralentizan las operaciones y aumentan el riesgo de errores.
Esta solución aborda estos desafíos mediante un sistema de orquestación multiagente. Se basa en el modelo de documentos flexible de MongoDB, MongoDB Atlas Vector Search y VoyageAI. voyage-context-3y una IA agente.
Esta solución explora cinco casos de uso de inteligencia documental en servicios financieros:
Calificación crediticia de la empresa
Manejo de excepciones en el procesamiento de pagos
Investigación de inversiones
Incorporación de clientes (KYC)
Originación de préstamos
La siguiente sección explica cómo transformar documentos estáticos en fuentes dinámicas de información operativa y estratégica.
Arquitecturas de Referencia
Esta solución se compone de tres componentes modulares principales:
Figura 1. Arquitectura de procesamiento inteligente de documentos con MongoDB.
1. Orquestación multiagente de supervisor
Un Agente Supervisor coordina un equipo de agentes especializados. Cada agente recibe sus propias instrucciones y herramientas específicas para realizar tareas específicas:
Scanner Agent descubre y cataloga los documentos disponibles de múltiples fuentes (archivos locales, AWS3 S, Google Drive).
El agente evaluador evalúa la relevancia del documento según el contexto de la industria y el caso de uso.
Extractor Agent utiliza Vision AI (Claude 3.5 Sonnet2 v) para interpretar texto y elementos visuales como gráficos o tablas y convertirlos a Markdown.
El agente procesador divide el contenido en fragmentos semánticamente significativos, genera incrustaciones utilizando VoyageAI y las almacena en colecciones de MongoDB Atlas.
Parte 2. Sistema Agentic RAG
Una vez que se ingieren los datos, este flujo de trabajo RAG:
Permite la interacción en tiempo real con un agente asistente de documentos.
Utiliza generación de query, evaluación de documentos y bucles de reescritura de query para refinar automáticamente las respuestas.
Utiliza incrustaciones voyage-context-, lo que permite que los fragmentos de documentos conserven un contexto más amplio para obtener respuestas precisas y 3 fundamentadas.
Nota
Agentic RAG tiene las siguientes cualidades:
Toma decisiones inteligentes: sabe cuándo es necesaria la recuperación frente a la respuesta directa.
Se corrige automáticamente: si los documentos recuperados no son relevantes, reescribe la consulta y vuelve a intentarlo.
Mantiene el contexto: utiliza puntos de control de MongoDB para conversaciones de múltiples turnos
Proporciona transparencia: realiza un seguimiento de los pasos del flujo de trabajo y las decisiones de calificación.
Parte 3. Informes y generación de información
Este módulo utiliza búsquedas vectoriales específicas y generación de contenido basada en LLM para automatizar informes periódicos, realizando las siguientes tareas:
Procesamiento de información para generar informes personalizados.
Compilar hallazgos relevantes y datos contextuales.
Exportar salidas estructuradas, como archivos PDF.
Incluyendo mecanismos de respaldo para garantizar la confiabilidad, incluso en escenarios de bajo contexto.
Enfoque del modelo de datos
El modelo de datos de la solución agrupa sus colecciones por función:
Procesamiento de documentos básicos:
chunks: almacena segmentos de texto con vectoresvoyage-context-3.documents: almacena metadatos del documento, que rastrean el estado del procesamiento y la información de la fuente.assessments:Contiene resultados de evaluación de documentos, como puntuaciones de relevancia y decisiones de procesamiento.workflows: almacena el seguimiento del flujo de trabajo de ingestión, que monitorea el estado del procesamiento de múltiples agentes.
El siguiente documento es un ejemplo de la colección chunks:
{ "_id": { "$oid": "68e7d4cd77c8fbfb9abdf878" }, "document_id": "doc_ef5b1da6", "document_name": "Payment_Investigation_Ticket.pdf", "chunk_index": 2, "chunk_text": "Contacted cardholder to confirm receipt of temporary credit and advise on investigation timeline. Cardholder confirmed satisfaction with temporary resolution...", "embedding": [ 0.02789805270731449, 0.0045435624197125435, -0.06760358065366745, ... ], "has_visual_references": false, "metadata": { "name": "Payment_Investigation_Ticket.pdf", "path": "@s3@.../document-intelligence/fsi/payment_processing_exception/Payment_Investigation_Ticket.pdf", "processed_at": { "$date": "2025-10-09T15:29:17.741Z" }, "chunk_count": 3, "chunk_metadata": { "chunk_index": 2, "total_chunks": 3, "section_start": "Contacted cardholder", "section_end": "ion_ticket.html*\n4/5", "document_id": "doc_ef5b1da6", "document_name": "Payment_Investigation_Ticket.pdf", "contains_images": false } } }
El siguiente documento es un ejemplo de la colección documents:
{ "_id": { "$oid": "68e7d4cb5fc2bb6e17eaedb8" }, "document_id": "doc_ef5b1da6", "document_name": "Payment_Investigation_Ticket.pdf", "document_path": "@s3.../document-intelligence/fsi/payment_processing_exception/Payment_Investigation_Ticket.pdf", "file_extension": "pdf", "file_size_mb": 0.3242454528808594, "source_type": "s3", "source_path": "@s3@fsi/payment_processing_exception", "page_count": 4, "created_at": { "$date": "2025-10-09T15:29:15.041Z" }, "updated_at": { "$date": "2025-10-09T15:29:18.267Z" }, "status": "completed", "chunk_count": 3, "has_visual_references": true, "metadata": { "markdown_length": 5592, "processing_timestamp": { "$date": "2025-10-09T15:29:15.041Z" } } }
El siguiente documento es un ejemplo de la colección assessments:
{ "_id": { "$oid": "68e7d2b35fc2bb6e17eaedb2" }, "document_id": "doc_ef5b1da6", "document_name": "Payment_Investigation_Ticket.pdf", "document_path": "@s3.../document-intelligence/fsi/payment_processing_exception/Payment_Investigation_Ticket.pdf", "file_size_mb": 0.3242454528808594, "assessment": { "main_entity": "Payment Investigation Ticket", "document_category": "Banking Investigation Document", "key_topics": [ "merchant chargeback investigation", "payment dispute resolution", "cardholder dispute handling" ], "relevance_score": 95, "reasoning": "This document is highly relevant to both the financial services industry and exception handling in payment processing. It is an official payment investigation ticket from First National Bank's Payment Investigation Department, specifically dealing with a cardholder dispute and merchant non-response case. The document contains formal banking investigation details, dispute resolution tracking, and payment processing exception handling elements.", "should_process": true }, "assessed_at": { "$date": "2025-10-09T15:20:19.060Z" }, "workflow_id": "fsi_payment_processing_exception_1760023126468" }
El siguiente documento es un ejemplo de la colección workflows:
{ "_id": { "$oid": "68e7d25d5fc2bb6e17eaedad" }, "workflow_id": "fsi_payment_processing_exception_1760023126468", "endpoint": "/api/ingestion/start", "source_paths": [ "@local@/docs/fsi/payment_processing_exception", "@s3@fsi/payment_processing_exception", "@gdrive@fsi/payment_processing_exception" ], "triggered_at": { "$date": "2025-10-09T15:18:53.563Z" } }
Además de las colecciones principales de procesamiento de documentos, la solución incluye otras funciones y sus correspondientes colecciones, como:
Interacción y memoria rápidas:
gradings:incluye calificación de relevancia del documento, como puntuaciones binarias de evaluaciones de recuperación de preguntas y respuestas.logs_qa: rastrea los pasos y decisiones del flujo de trabajo de RAG de la agencia, incluidos los registros de sesiones de interacción rápida.agent_personas:define indicaciones y capacidades por industria, adaptadas a configuraciones de IA específicas para cada caso de uso.checkpoint_writes_aio: maneja la persistencia asincrónica para el estado de la conversación, específicamente para las escrituras del estado LangGraph.checkpoints_aio: administra el historial de diálogo basado en hilos y funciona como memoria de conversación.
Informes:
scheduled_reports: rastrea las ubicaciones de los PDF y el historial de generación, incluidos los metadatos de los informes generados.report_templates: define secciones y prompts según el caso de uso, sirviendo como plantillas de estructura de reporte.
Este enfoque de modelo de datos crea un diseño intuitivo que simplifica el desarrollo, ya que todos los datos relacionados con una tarea específica se ubican dentro de la estructura de documentos flexible de MongoDB.
Construir la solución
Para la implementación completa y el código, sigue las instrucciones en el README en este repositorio de GitHub.
Esta solución se construye mediante la composición de tres patrones arquitectónicos principales. A continuación, se detallan los pasos para la implementación de cada componente:
Implementar el sistema supervisor multiagente
Esta es la tubería de ingestión principal que coordina múltiples agentes de IA especializados.
Definir agentes especializados: primero, define cada agente utilizando un marco LangGraph.
Implementar el agente supervisor: Luego, se implementa un
supervisor agentque gestiona el flujo de trabajo general. Esto sigue el patrón de supervisor de LangGraph.
Construir el sistema RAG agentico
Este sistema proporciona un flujo de trabajo RAG autocorrectivo de Agentic. Cuenta con un agente de recuperación que decide de forma inteligente si recuperar el contexto de MongoDB Atlas Vector Search o responder directamente al usuario.
Figura 2. Arquitectura RAG agentica con MongoDB (Agente Asistente de Documentos).
Crear el índice de búsqueda vectorial: Cree un índice de búsqueda vectorial en su
chunkscolección. Esto permite que la aplicación realice búsquedas semánticas rápidas en las incrustaciones del documento.Construya el grafo RAG autocorrector: Cree un grafo cíclico con aristas condicionales usando LangGraph. Este grafo incluye un agente de recuperación, un calificador de documentos y un reescritor de consultas. El propósito del reescritor de consultas es reintentar si los resultados no son relevantes.
Habilitar lapersistencia conversacional: Implementar el sistema de puntos de control de MongoDB para proporcionar memoria de conversación y conversaciones multi-turno. Esto guarda y carga automáticamente el estado de la conversación desde una colección dedicada de MongoDB, lo que proporciona persistencia de memoria al agente.
Crear el generador de informes automatizado
Este módulo automatiza la generación de informes PDF programados.
Almacenarplantillas de informes: Aproveche el esquema flexible de MongoDB para crear una
report_templatescolección. Esta almacena la estructura, los títulos de las secciones y las solicitudes de búsqueda semántica específicas para cada tipo de informe, como los de calificación crediticia e investigación de inversiones.Implementar la generación específica de secciones: Crear un script que recorra cada sección de una plantilla. Este script ejecuta una consulta de búsqueda vectorial de Atlas independiente. Utiliza el indicador de esa sección específica y acumula el contenido.
Programar y rastrear la salida de los informes: Este script se ejecuta mediante un programador. Tras generar el PDF, el script escribe sus metadatos, como la ruta del archivo y la fecha de generación, en una
scheduled_reportscolección de MongoDB para su seguimiento.
Aprendizajes clave
Utilice MongoDB Atlas como su plataforma de datos unificada para almacenar metadatos estructurados, documentos no estructurados, incrustaciones vectoriales y el estado operativo. Esto elimina los silos de datos y reduce la complejidad arquitectónica.
Implemente un patrón de orquestación multiagente de supervisor para gestionar flujos de trabajo complejos de varios pasos. Este patrón permite dividir las herramientas entre agentes de trabajo especializados para garantizar una experiencia enfocada.
Implemente Agentic RAG con mecanismos de autocorrección para mejorar la precisión de las consultas. Esto permite a los agentes decidir de forma inteligente cuándo recuperar el contexto, reformular las consultas y evaluar la relevancia de los documentos.
Implemente los puntos de control de MongoDB para la memoria persistente del agente a fin de establecer un seguimiento robusto de las conversaciones y el flujo de trabajo. Esto garantiza la persistencia del estado de las conversaciones y el historial de diálogos para interacciones multiturno.
Realice búsquedas semánticas con MongoDB Atlas Vector Search para generar contenido específico, como informes automatizados. Esto permite que las consultas recuperen contenido por significado, no solo por palabras clave, para obtener resultados más precisos.
Autores
Peyman Parsi, director de tecnología de campo de Servicios Financieros, MongoDB
Ainhoa Mugica, Consultora, Soluciones Industriales, MongoDB
Julian Boronat, Especialista Sénior, Soluciones Industriales, MongoDB
Andrea Alaman Calderón, Especialista Sénior, Soluciones Industriales, MongoDB
Obtén más información
Descubra cómo implementar nuestro marco para la implementación rápida de agentes de IA
Profundice en la memoria del agente con nuestra guía "¿Qué es la memoria del agente? Una guía para mejorar el aprendizaje y la recuperación de la IA".
Obtenga más información sobre voyage-context-:3 Detalles a nivel de fragmento enfocados con contexto de documento global