Mejora la interactividad de las aplicaciones bancarias usando MongoDB Atlas búsqueda vectorial y grandes modelos de lenguaje.
caso de uso: Gen AI, Búsqueda inteligente, Gestión de contenido
Industrias: Servicios financieros
Productos: MongoDB Atlas, MongoDB Atlas búsqueda vectorial, Voyage IA
Socios: Amazon Bedrock, LangChain
Resumen de la solución
En esta solución, puedes aprender a aprovechar la inteligencia documental utilizando IA agéntica potenciada por MongoDB. Este enfoque desbloquea perspectivas a partir de datos estructurados, semi-estructurados y no estructurados provenientes 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 utilizando un sistema de orquestación multiagente. Está impulsado por el modelo orientado a documentos flexible de MongoDB, MongoDB Atlas búsqueda vectorial, y el de VoyageAI voyage-context-3y la IA agente.
Esta solución explora cinco casos de uso de inteligencia documental en servicios financieros:
Calificación de crédito de la empresa
Gestión de excepciones en el procesamiento de pagos
Investigación de inversiones
Onboarding del cliente (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 Supervisora de Multiagentes
Un Agente supervisor coordina un equipo de agentes especializados. A cada agente se le asignan sus propios avisos 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 pertinencia de los documentos en función del sector y del contexto del caso de uso.
Extractor Agent utiliza Vision AI (Claude 3.5 Sonnet v2) para interpretar textos y elementos visuales, como gráficas o tablas, y convertirlos en markdown.
El agente de procesamiento divide el contenido en fragmentos semánticamente significativos, genera incrustaciones usando VoyageAI y los almacena en las 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 de asistencia documental.
Utiliza generación de query, evaluación de documentos y bucles de reescritura de query para refinar automáticamente las respuestas.
Utiliza voyage-context-3 embedding, lo que permite que fragmentos de documentos conserven un contexto más amplio para obtener respuestas precisas y fundamentadas.
Nota
Agentic RAG tiene las siguientes cualidades:
Toma decisiones inteligentes: sabe cuándo es necesaria la recuperación frente a la respuesta directa.
Autocorrige: Si los documentos recuperados no son relevantes, reformula la query y lo intenta de nuevo
Mantiene el contexto: Usa el punto de control de MongoDB para conversaciones multiturno
Proporciona transparencia: rastrea los pasos del flujo de trabajo y las decisiones de calificación
Parte 3. Generación de reportes y perspectivas
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.
Incluir mecanismos de respaldo para garantizar la confiabilidad, incluso en contextos con poca información.
Enfoque de 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.documentsalmacena metadatos del documento, que rastrean el estado de procesamiento y la información de origen.assessments:Contiene resultados de evaluación de documentos, como puntuaciones de relevancia y decisiones de procesamiento.workflowsalmacena el seguimiento del flujo de trabajo de ingestión, que supervisa el estado de procesamiento multi-agente.
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 colecciones correspondientes, como:
Interacción de aviso y memoria:
gradingsincluye calificación de relevancia de documento, como puntuaciones binarias provenientes de evaluaciones de recuperación de preguntas y respuestas.logs_qa: Rastrea los pasos y decisiones del flujo de trabajo agentic RAG, incluidos los registros de sesiones de interacción con prompts.agent_personas:define indicaciones y capacidades por industria, adaptadas a configuraciones de IA específicas para cada caso de uso.checkpoint_writes_aioGestiona la persistencia asíncrona para el estado de la conversación, específicamente para los guardados del estado de LangGraph.checkpoints_aio: gestiona el historial de diálogos basados en hilos, funcionando como memoria de conversación.
Informes:
scheduled_reportsrastrea ubicaciones de PDFs 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 encuentran en la estructura de documentos flexibles de MongoDB.
Compilar 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 compila mediante la composición de tres patrones arquitectónicos primarios. A continuación se presentan los pasos sobre cómo se implementa cada componente:
Implementar el sistema supervisor multiagente
Esta es la tubería de ingestión principal que coordina múltiples agentes de IA especializados.
Define agentes especializados: en primer lugar, se define cada agente utilizando un framework 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.
Compilar 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 Agentic RAG con MongoDB (agente Asistente de documentos).
Crear el índice de búsqueda vectorial: crea un índice de búsqueda vectorial en tu colección
chunks. Esto le permite a la aplicación realizar búsquedas semánticas rápidas en las incrustaciones de documentos.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 la persistencia conversacional: Implementar un sistema de puntos de control de MongoDB para proporcionar memoria conversacional y conversaciones de varios turnos. Esto guarda y carga automáticamente el estado de la conversación desde una colección dedicada de MongoDB, dando a la memoria del agente persistencia.
Cree el generador de informes automatizados
Este módulo automatiza la generación de informes PDF programados.
Almacenar plantillas de informes: Aproveche el esquema flexible de MongoDB para crear una colección
report_templates. Esto almacena la estructura, los títulos de las secciones y los avisos de búsqueda semántica específicos para cada tipo de informe, como los informes de calificación de crédito y de investigación de inversiones.Implementa una generación específica para cada sección: crea un script que recorra cada sección de una plantilla. Este script ejecuta una consulta independiente de Atlas búsqueda vectorial. Utiliza el prompt para esa sección específica y acumula el contenido.
Programar y rastrear las salidas de informes: Este script es ejecutado por un programador. Después de generar el PDF, el script escribe sus metadatos, como la ruta del archivo y la fecha de generación, en una colección
scheduled_reportsen MongoDB para su seguimiento.
Lecciones 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.
Implementa un patrón de orquestación multiagente supervisado para gestionar flujos de trabajo complejos y de varios pasos. Este patrón permite dividir las herramientas entre agentes de trabajo especializados para garantizar una experiencia y conocimientos centrados.
Implementa RAG Agentico con mecanismos de autocorrección para mejorar la precisión de las queries. Esto permite a los agentes decidir de forma inteligente cuándo recuperar el contexto, reformular queries y evaluar la relevancia de los documentos.
Implementa los checkpointers de MongoDB para la memoria persistente de agentes y establece un seguimiento robusto de las conversaciones y el flujo de trabajo. Esto garantiza un estado de conversación persistente y un historial de diálogo para interacciones de varios turnos.
Realiza una búsqueda semántica utilizando MongoDB Atlas búsqueda vectorial para la generación de contenidos específicos, como la generación de reportes automatizados. Esto permite que las consultas recuperen contenido por significado, no solo por palabras clave, para una salida más precisa.
Autores
Peyman Parsi, CTO de Campo de Servicios Financieros, MongoDB
Ainhoa Mugica, consultor, soluciones sectoriales, MongoDB
Julian Boronat, Especialista Sénior, Soluciones Industriales, MongoDB
Andrea Alaman Calderón, Especialista Senior, Soluciones de Industria, MongoDB
Obtén más información
Descubre cómo implementar nuestro Marco para la rápida implementación de agentes de IA
Profundiza en la memoria del agente con nuestra guía "¿Qué es la memoria del agente? Una guía para mejorar el aprendizaje y la recordación de la IA
Obtén más información sobre voyage-context-3: Detalles enfocados a nivel de fragmento con contexto global del documento