Docs Menu
Docs Home
/

Implementación rápida de agentes de IA

MongoDB Atlas permite el desarrollo rápido de agentes de IA en todas las industrias.

Casos de uso: Análisis impulsado por aplicaciones, Gen AI

Industrias: Servicios financieros, atención médica, seguros, manufactura y movilidad, comercio minorista, telecomunicaciones

Productos: MongoDB Atlas, Base de datos MongoDB Atlas, Búsqueda vectorial MongoDB Atlas

Asociados: AWS Bedrock, Cohere, LangChain

Empresas de todo el mundo están incorporando agentes de IA en sus flujos de trabajo. El uso más común de un agente de IA es asistir en el análisis de investigación o la programación.Según una encuesta reciente de LangChain, De más de 1,000 profesionales de múltiples industrias, se demostró que más del 51% ya han implementado agentes en producción.

Los agentes de IA de producción enfrentan tres desafíos clave al escalar más allá de las tareas básicas:

  • Integración y gestión de datos complejos: Los agentes de IA dependen de fuentes de datos dispares, como registros estructurados, texto no estructurado y flujos de sensores. Esto dificulta la unificación de datos para la toma de decisiones en tiempo real. Almacenar todos los datos relevantes en una sola base de datos agiliza el desarrollo.

  • Alta concurrencia y baja latencia: Los agentes deben gestionar grandes volúmenes de solicitudes y responder con rapidez. Esto puede saturar las bases de datos que no tienen un alto rendimiento. Si bien la inferencia LLM añade latencia, el rendimiento de la base de datos sigue siendo importante a medida que los agentes escalan. Los agentes de producción se ejecutan en paralelo, realizan múltiples llamadas a herramientas y se basan en datos actualizados para tomar decisiones. Las bases de datos lentas crean cuellos de botella que aumentan el tiempo de respuesta y reducen la capacidad en tiempo real.

  • Gobernanza y seguridad de datos: Los agentes de IA deben almacenar y acceder a los datos de forma segura, manteniendo el cumplimiento normativo. MongoDB Atlas ofrece controles de seguridad integrados, como cifrado a nivel de campo del lado del cliente, cifrado consultable y funciones de auditoría. Estas funciones garantizan que los agentes solo accedan a los datos autorizados y mantienen la trazabilidad.

Esta solución presenta un marco de trabajo de agentes que ofrece una base flexible para acelerar el desarrollo de flujos de trabajo basados ​​en IA. En lugar de ofrecer un conjunto fijo de herramientas o funcionalidades, este marco proporciona un punto de partida para crear agentes adaptados a casos de uso específicos.

Utilice esta solución para crear agentes con flujos de trabajo lineales mediante MongoDB Atlas y LangGraph. Para casos de uso complejos, puede ampliar el marco añadiendo nuevas herramientas, nodos, condiciones o flujos de trabajo.

La figura 1 muestra los componentes principales de un agente, que incluyen:

  • Recibir tareas de los usuarios o activadores automatizados

  • Utilizar un LLM para generar respuestas o seguir flujos de trabajo

  • Uso de diversas herramientas y modelos para almacenar y recuperar datos de MongoDB Atlas

Diagnóstico de aerogeneradores en tiempo real

Figura 1. Componentes básicos de un agente de IA

Este marco de trabajo de agencia ejecuta flujos de trabajo de diagnóstico de varios pasos mediante LangGraph y genera información útil. El marco realiza las siguientes operaciones:

  • Lee datos de series temporales de archivos CSV o MongoDB Atlas

  • Genera incrustaciones de texto

  • Realiza búsquedas vectoriales para identificar consultas pasadas similares

  • Persiste sesiones y ejecuta datos.

  • Produce recomendaciones diagnósticas

MongoDB Atlas almacena perfiles de agentes, recomendaciones históricas, datos de series temporales y registros de sesiones. Esto garantiza una trazabilidad completa y permite consultas eficientes y la reutilización de información pasada.

Diagnóstico de aerogeneradores en tiempo real

Figura 2. Arquitectura de referencia de IA de Agentic

MongoDB facilita la IA con agentes gracias a su flexibilidad, rendimiento y escalabilidad. El modelo de documentos almacena datos estructurados, semiestructurados y no estructurados de forma nativa y gestiona diversos conjuntos de datos. MongoDB permite a los agentes de IA reaccionar a nueva información, mantener estados internos en tiempo real y aprender continuamente.

  • Modelo de datos flexible: MongoDB almacena datos como registros de series temporales, perfiles de agentes y resultados de recomendaciones en un formato unificado. Su esquema flexible elimina la necesidad de rediseñar la base de datos cuando cambian los requisitos de datos. Los agentes de IA pueden almacenar estados jerárquicos con documentos anidados que se adaptan a características y contextos cambiantes. MongoDB admite el control de versiones y el seguimiento de la evolución de los agentes, con la capacidad de pausar y reanudar los contextos de los agentes.

  • Búsqueda vectorial: MongoDB Atlas admite la búsqueda vectorial nativa para búsquedas de similitud en incrustaciones vectoriales. Esta función compara las consultas actuales con datos históricos, mejora la precisión diagnóstica y ofrece recomendaciones relevantes. La búsqueda vectorial permite el reconocimiento de patrones y la recuperación contextual, lo que reduce la alucinación LLM. MongoDB gestiona la coincidencia semántica, las búsquedas contextuales y el análisis de datos multidimensionales para los flujos de trabajo de agentes de IA.

  • Escalabilidad y rendimiento: con MongoDB, los agentes de IA pueden escalar horizontalmente para manejar grandes volúmenes de datos en tiempo real, distribuir el almacenamiento y la carga computacional, y mantener una alta disponibilidad a través de conjuntos de réplicas de MongoDB.

  • Colecciones de series temporales: Las colecciones de series temporales de MongoDB procesan grandes volúmenes de datos de forma eficiente. Estas colecciones permiten a los agentes de IA rastrear interacciones secuenciales, patrones de aprendizaje y cambios de estado a lo largo del tiempo. Esta capacidad mantiene el contexto e implementa la toma de decisiones adaptativa. Las optimizaciones de series temporales incluyen la compresión automática de datos, una mayor eficiencia de almacenamiento y consultas rápidas basadas en el tiempo. Con MongoDB, los agentes de IA pueden mantener registros actuales e históricos sin comprometer el rendimiento ni la integridad de los datos.

  • Integración: MongoDB se integra con frameworks de agentes como LangGraph mediante documentos tipo JSON, esquemas dinámicos y capacidades de indexación. Esta integración permite a los agentes de IA mantener las estructuras de datos y memoria, rastrear procesos de razonamiento de varios pasos e implementar una gestión de estados persistente entre sesiones.

Siga los siguientes pasos para configurar el marco de trabajo de Agentic con MongoDB Atlas y LangGraph. Para obtener explicaciones más detalladas, consulte el repositorio de GitHub.

1
  1. Los datos deben ser relevantes para su caso de uso y cumplir con las siguientes pautas:

    • En el archivo CSV, agregue una fila de encabezado con los nombres de las columnas.

    • Nombra la primera columna timestamp y poner las marcas de tiempo en el formato YYYY-MM-DDTHH:MM:SSZ. Por ejemplo, 2025-02-19T13:00:00Z.

    • Llene las columnas restantes con datos relevantes para su caso de uso.

    • Para realizar pruebas de marco, mantenga el tamaño de los datos lo más pequeño posible.

    Datos de muestra:

    timestamp,gdp,interest_rate,unemployment_rate,vix
    2025-02-19T13:00:00Z,2.5,1.75,3.8,15
    2025-02-19T13:05:00Z,2.7,1.80,3.7,18
    2025-02-19T13:10:00Z,2.6,1.85,3.9,22
    2025-02-19T13:15:00Z,2.4,1.70,4.0,10
    2025-02-19T13:20:00Z,2.3,1.65,4.1,20
  2. En la misma carpeta, agregue un archivo de consultas. Este archivo contiene las consultas que utiliza para mostrar las funciones de búsqueda vectorial como parte del flujo de trabajo de Agentic. En su archivo, siga las siguientes pautas:

    • En el archivo CSV, agregue una fila de encabezado con los nombres de las columnas.

    • Nombra la primera columna query y rellénala con las consultas.

    • Nombra la segunda columna recommendation y rellénala con las recomendaciones esperadas.

    • Para realizar pruebas de marco, mantenga el tamaño de los datos lo más pequeño posible.

    Datos de muestra:

    query,recommendation
    GDP growth slowing,Consider increasing bond assets to mitigate risks from potential economic slowdown.
    GDP showing strong growth,Increase equity assets to capitalize on favorable investment conditions.
    Interest rates rising,Shift focus to bond assets as higher rates may impact borrowing-sensitive sectors.
    Interest rates falling,Increase real estate assets to take advantage of lower borrowing costs.
    Unemployment rate increasing,Reduce equity assets to account for potential economic weakness and reduced consumer spending.
    Unemployment rate decreasing,Increase equity assets to benefit from improved economic conditions and corporate profits.
    VIX above 20,Reduce equity assets to manage risks associated with high market volatility.
    VIX below 12,Increase equity assets to capitalize on low market volatility and investor confidence.
    VIX within normal range (12-20),Maintain current asset allocation as market conditions are stable.
    Combination of rising interest rates and high VIX,Focus on bond assets to hedge against market volatility and borrowing cost impacts.
2

En MongoDB Atlas, cree una base de datos llamada agentic_<your-use-case>. Por ejemplo, agentic_macro_indicators. Incluya el nombre en las variables de entorno.

Crea las siguientes colecciones:

  • Agent_profiles, para almacenar perfiles de agentes: puede importar algunos datos de muestra a esta colección usando este archivo.

  • Queries, para almacenar consultas: importe las consultas desde el archivo queries.csv que creó en el paso 1.

3

Vaya a la carpeta de configuración y cree o actualice el archivo JSON config.json. El archivo debe contener la siguiente estructura:

{
"CSV_DATA": "data/csv/<YOUR_FILE_NAME>.csv",
"MDB_DATABASE_NAME": "<YOUR_MONGODB_DATABASE_NAME>",
"MDB_TIMESERIES_COLLECTION": "<YOUR_MONGODB_TIMESERIES_COLLECTION_NAME>",
"DEFAULT_TIMESERIES_DATA": [
{
"timestamp": "<DEFAULT_TIMESTAMP_IN_YYYY-MM-DDTHH:MM:SSZ>"
// Your default data here, check config_example.json for better understanding
}
],
"CRITICAL_CONDITIONS": {
// Below is an example of a critical condition for GDP growth
"gdp": {"threshold": 2.5, "condition": "<", "message": "GDP growth slowing: {value}%"}
// Other critical conditions for your use case here, check config_example.json for better understanding
},
"MDB_TIMESERIES_TIMEFIELD": "<YOUR_TIMESTAMP_FIELD_NAME>",
"MDB_TIMESERIES_GRANULARITY": "<YOUR_TIMESERIES_GRANULARITY>",
"MDB_EMBEDDINGS_COLLECTION": "queries", // Using "queries" collection name for storing queries
"MDB_EMBEDDINGS_COLLECTION_VS_FIELD": "query_embedding", // Using "query_embedding" field for storing embeddings
"MDB_VS_INDEX": "<YOUR_MONGODB_DATABASE_NAME>_queries_vs_idx", // Replace <YOUR_MONGODB_DATABASE_NAME> with your MongoDB database name
"MDB_HISTORICAL_RECOMMENDATIONS_COLLECTION": "historical_recommendations", // Using "historical_recommendations" collection name for storing recommendations
"SIMILAR_QUERIES": [
// Below is an example of default similar queries for GDP growth
{
"query": "GDP growth slowing",
"recommendation": "Consider increasing bond assets to mitigate risks from potential economic slowdown."
}
// Other similar queries for your use case here, check config_example.json for better understanding
// This ones are going to be used for the vector search tool in case something is not found in the queries collection
],
"MDB_CHAT_HISTORY_COLLECTION": "chat_history", // Using "chat_history" collection name for storing chat history
"MDB_CHECKPOINTER_COLLECTION": "checkpoints", // Using "checkpoints" collection name for storing checkpoints
"MDB_LOGS_COLLECTION": "logs", // Using "logs" collection name for storing logs
"MDB_AGENT_PROFILES_COLLECTION": "agent_profiles", // Using "agent_profiles" collection name for storing agent profiles
"MDB_AGENT_SESSIONS_COLLECTION": "agent_sessions", // Using "agent_sessions" collection name for storing agent sessions
"AGENT_PROFILE_CHOSEN_ID": "<YOUR_AGENT_PROFILE_ID>", // Replace <YOUR_AGENT_PROFILE_ID> with the agent profile ID you want to use, check config_example.json for better understanding
// Below is an example default agent profile for Portfolio Advisor
"DEFAULT_AGENT_PROFILE": {
"agent_id": "DEFAULT",
"profile": "Default Agent Profile",
"role": "Expert Advisor",
"kind_of_data": "Specific Data",
"motive": "diagnose the query and provide recommendations",
"instructions": "Follow procedures meticulously.",
"rules": "Document all steps.",
"goals": "Provide actionable recommendations."
},
"EMBEDDINGS_MODEL_NAME": "Cohere Embed English V3 Model (within AWS Bedrock)", // Describing the embeddings model used for creating the chain of thought
"EMBEDDINGS_MODEL_ID": "cohere.embed-english-v3", // Model ID for the embeddings model
"CHATCOMPLETIONS_MODEL_NAME": "Anthropic Claude 3 Haiku (within AWS Bedrock)", // Describing the chat completions model used for generating responses
"CHATCOMPLETIONS_MODEL_ID": "anthropic.claude-3-haiku-20240307-v1:0", // Model ID for the chat completions model
// Below is a sample agent workflow graph that uses the tools defined in the agent_tools.py file
// PLEASE BE CAREFUL WHEN MODIFYING THIS GRAPH, CONSIDER THAT THE TOOLS DEFINED IN THE AGENT TOOLS FILE ARE USED HERE AS WELL AS THE IMPORTS
"AGENT_WORKFLOW_GRAPH": {
"nodes": [
{"id": "reasoning_node", "tool": "agent_tools.generate_chain_of_thought_tool"},
{"id": "data_from_csv", "tool": "agent_tools.get_data_from_csv_tool"},
{"id": "process_data", "tool": "agent_tools.process_data_tool"},
{"id": "embedding_node", "tool": "agent_tools.get_query_embedding_tool"},
{"id": "vector_search", "tool": "agent_tools.vector_search_tool"},
{"id": "process_vector_search", "tool": "agent_tools.process_vector_search_tool"},
{"id": "persistence_node", "tool": "agent_tools.persist_data_tool"},
{"id": "recommendation_node", "tool": "agent_tools.get_llm_recommendation_tool"}
],
"edges": [
{"from": "reasoning_node", "to": "data_from_csv"},
{"from": "data_from_csv", "to": "process_data"},
{"from": "process_data", "to": "embedding_node"},
{"from": "embedding_node", "to": "vector_search"},
{"from": "vector_search", "to": "process_vector_search"},
{"from": "process_vector_search", "to": "persistence_node"},
{"from": "persistence_node", "to": "recommendation_node"},
{"from": "recommendation_node", "to": "END"}
],
"entry_point": "reasoning_node"
}
}

Una vez que actualice el archivo de configuración:

  1. Configurar las variables de entorno.

  2. Crear incrustaciones vectoriales.

  3. Crear el índice de búsqueda vectorial.

Diagnóstico de aerogeneradores en tiempo real

Figura 3. Arquitectura lógica

La IA agenética introduce software que procesa los datos de forma diferente a las aplicaciones tradicionales. Para aprovechar los agentes en las aplicaciones empresariales, los equipos de entrega de software deben comprender:

  • Cómo reciben los agentes instrucciones para flujos de trabajo predeterminados

  • Cómo los agentes acceden e interactúan con las API y las bases de datos

  • Cómo los agentes persisten y gestionan el estado

Estas actividades forman la configuración base para que los equipos de entrega de software implementen agentes, independientemente del caso de uso, el flujo de trabajo o el contexto de la industria.

Los marcos abstraen tareas y componentes comunes para acelerar el desarrollo y la implementación, a la vez que reducen la complejidad del mantenimiento. Este marco agentístico ayuda a los equipos de entrega de software a construir y mantener soluciones agentísticas mediante componentes comunes y configurables, a la vez que les enseña a desarrollar patrones y componentes repetibles para lograr escalabilidad y mantenimiento a largo plazo.

  • Julián Boronat, MongoDB

  • Peyman Parsi, MongoDB

  • Jeff Needham, MongoDB

  • Luca Napoli, MongoDB

  • Humza Akthar, MongoDB

  • RAG contextual para Docs técnicos

  • Mantenimiento predictivo con IA multiagente y MongoDB

  • Excelencia en el mantenimiento predictivo con MongoDB Atlas

Volver

Construya un centro de datos de IoT

En esta página