Docs Menu
Docs Home
/ /

Integrar MongoDB con LangGraph.js

Puede integrar MongoDB con LangGraph.js para construir agentes de IA y avanzados Aplicaciones RAG. Esta página ofrece una descripción general de la integración de MongoDB con LangGraph.js y cómo usar MongoDB para la persistencia y recuperación del estado del agente en sus flujos de trabajo de LangGraph.

Para crear un agente de IA de muestra que utilice todos los componentes de esta página, consulte tutorial.

Nota

Para la integración de Python, consulte LangGraph.

LangGraph es un marco especializado dentro del ecosistema LangChain diseñado para desarrollar agentes de IA y flujos de trabajo complejos de múltiples agentes. Grafos son los componentes principales de LangGraph, que representan el flujo de trabajo de su agente. La integración de MongoDB LangGraph permite las siguientes capacidades:

  • Checkpointer de MongoDB LangGraph: Puede mantener el estado de los agentes LangGraph en MongoDB, proporcionando memoria a corto plazo.

  • Herramientas de recuperación: se puede utilizar la integración de MongoDB LangChain para crear rápidamente herramientas de recuperación para los flujos de trabajo de LangGraph.

La integración de las aplicaciones LangGraph que se usan con MongoDB permite consolidar tanto las capacidades de recuperación como la memoria del agente en una única base de datos, simplificando la arquitectura usada y reduciendo la complejidad operativa.

El MongoDB LangGraph Checkpointer permite persistir el estado del agente en MongoDB para implementar una memoria a corto plazo. Esta característica permite la intervención humana, la memoria, el viaje en el tiempo y la tolerancia a fallos para los agentes LangGraph que se usan.

Para instalar el paquete de este componente:

npm install @langchain/langgraph-checkpoint-mongodb
import { MongoDBSaver } from "@langchain/langgraph-checkpoint-mongodb";
import { MongoClient } from "mongodb";
// Connect to your MongoDB cluster
const client = new MongoClient("<connection-string>");
// Initialize the MongoDB checkpointer
const checkpointer = new MongoDBSaver(client);
// Instantiate the graph with the checkpointer
const app = graph.compile(checkpointer);

Puede utilizar recuperadores sin problemas como herramientas en su flujo de trabajo LangGraph para recuperar datos relevantes de MongoDB.

  1. Para crear una herramienta de recuperación básica con la búsqueda vectorial de MongoDB y LangChain:

    import { MongoDBAtlasVectorSearch } from "@langchain/mongodb";
    import { MongoClient } from "mongodb";
    import { VoyageAIEmbeddings } from "@langchain/community/embeddings/voyage";
    import { createRetrieverTool } from "langchain/tools/retriever";
    // Instantiate the vector store
    const client = new MongoClient("<connection-string>");
    const collection = client.db("<databaseName>").collection("<collectionName>");
    const embeddingModel = new VoyageAIEmbeddings();
    const vectorStore = new MongoDBAtlasVectorSearch(embeddingModel, {
    collection: collection,
    indexName: "vector_index", // Name of the index
    textKey: "text", // Name of the collection field containing the raw content
    embeddingKey: "embedding", // Name of the collection field containing the embedded text
    });
    // Create a retriever tool
    const retriever = vectorStore.asRetriever();
    const retrieverTool = createRetrieverTool(
    retriever,
    {
    name: "vector_search_retriever", // Tool name
    description:
    "Retrieve relevant documents from the collection" // Tool description
    },
    );
  2. Para añadir la herramienta como un nodo en LangGraph:

    1. Convertir la herramienta en un nodo.

    2. Añada el nodo al grafo.

    import { StateGraph } from "@langchain/langgraph";
    import { ToolNode } from "@langchain/langgraph/prebuilt";
    // Convert the retriever tool into a node
    const retrieverNode = new ToolNode([retrieverTool]);
    // Define the graph
    const workflow = new StateGraph(SomeGraphState)
    // Add the tool as a node in the graph
    .addNode("vector_search_retriever", retrieverNode);
    const graph = workflow.compile();

Volver

Compila un agente de IA

Obtén una insignia de habilidad

¡Domine "Gen IA" gratis!

Más información

En esta página