UNPKG

n8n-nodes-neo4j

Version:

n8n node for Neo4j with LangChain integration, supporting vector stores and graph operations

30 lines 1.36 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createNeo4jVectorStore = createNeo4jVectorStore; exports.searchNeo4jVectorStore = searchNeo4jVectorStore; const neo4j_vector_1 = require("@langchain/community/vectorstores/neo4j_vector"); async function createNeo4jVectorStore(embeddings, config) { const storeConfig = { url: config.credentials.uri, username: config.credentials.username, password: config.credentials.password, database: config.credentials.database, indexName: config.indexName || 'vector', embeddingNodeProperty: "embedding", textNodeProperties: ["text"], retrievalQuery: config.retrievalQuery, distanceMetric: config.distanceMetric || 'COSINE', searchType: "vector", }; return await neo4j_vector_1.Neo4jVectorStore.fromExistingIndex(embeddings, storeConfig); } async function searchNeo4jVectorStore(vectorStore, query, embeddings, metadataFilter = {}, k = 4) { const queryEmbedding = await embeddings.embedQuery(query); const results = await vectorStore.similaritySearchVectorWithScore(queryEmbedding, k, '', metadataFilter); return results.map(([doc, score]) => ({ content: doc.pageContent, score: score, metadata: doc.metadata })); } //# sourceMappingURL=Neo4jVectorStore.js.map