Búsqueda vectorial de LanceDB Node.js
Una implementación de Node.js para la búsqueda vectorial utilizando LanceDB y el modelo de incrustación de Ollama.
Descripción general
Este proyecto demuestra cómo:
- Conectarse a una base de datos LanceDB
- Cree funciones de incrustación personalizadas con Ollama
- Realizar una búsqueda de similitud vectorial en los documentos almacenados
- Procesar y mostrar los resultados de la búsqueda
Prerrequisitos
- Node.js (v14 o posterior)
- Ollama ejecutándose localmente con el modelo
nomic-embed-text
- Ubicación de almacenamiento de LanceDB con permisos de lectura y escritura
Instalación
- Clonar el repositorio
- Instalar dependencias:
Dependencias
@lancedb/lancedb
: Cliente LanceDB para Node.jsapache-arrow
: para manejar datos en columnasnode-fetch
: para realizar llamadas API a Ollama
Uso
Ejecute el script de prueba de búsqueda de vectores:
O ejecutar directamente:
Configuración
El script se conecta a:
- LanceDB en la ruta configurada
- API de Ollama en
http://localhost:11434/api/embeddings
Configuración de MCP
Para integrarse con Claude Desktop como un servicio MCP, agregue lo siguiente a su JSON de configuración de MCP:
Reemplace las rutas con sus rutas de instalación reales:
/path/to/lancedb-node/dist/index.js
- Ruta al archivo index.js compilado/path/to/your/lancedb/storage
- Ruta a su directorio de almacenamiento de LanceDB
Función de incrustación personalizada
El proyecto incluye una OllamaEmbeddingFunction
personalizada que:
- Envía texto a la API de Ollama
- Recibe incrustaciones con 768 dimensiones
- Los formatea para usarlos con LanceDB
Ejemplo de búsqueda de vectores
El ejemplo busca "cómo definir criterios de éxito" en la tabla "ai-rag" y muestra los resultados con sus puntajes de similitud.
Licencia
Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Una implementación de Node.js para la búsqueda vectorial utilizando LanceDB y el modelo de incrustación de Ollama.
Related MCP Servers
- -securityFlicense-qualityEnables efficient vector database operations for embedding storage and similarity search through a Model Context Protocol interface.Last updated -6Python
- -securityFlicense-qualityA Python-based local indexing server that creates semantic search capabilities for codebases using ChromaDB, allowing Cursor IDE to perform vector searches on your code without sending data to external services.Last updated -22Python
Lindorm MCP Serverofficial
-securityAlicense-qualityAn example server that enables interaction with Alibaba Cloud's Lindorm multi-model NoSQL database, allowing applications to perform vector searches, full-text searches, and SQL operations through a unified interface.Last updated -3PythonApache 2.0- -securityAlicense-qualityEnables semantic code search across codebases using Qdrant vector database and OpenAI embeddings, allowing users to find code by meaning rather than just keywords through natural language queries.Last updated -PythonMIT License