Overview
The NeighborNearest library is an innovative solution designed for efficient nearest neighbor searches within various database environments, including Postgres, MariaDB, MySQL, and SQLite. This versatile tool supports rich vector functionalities, allowing users to perform searches based on different distance metrics and handle complex datasets seamlessly. Whether you’re working with high-dimensional data or need to optimize search performance, NeighborNearest offers a robust toolkit for your application.
With compatibility across major database systems, NeighborNearest enables developers to implement advanced vector search capabilities easily. By leveraging built-in extensions for Postgres, as well as experimental support for SQLite and other storage solutions, this library is well-equipped to tackle diverse search requirements, ensuring accurate and fast retrieval of nearest neighbors.
Features
- Multi-Database Support: Works with Postgres, MariaDB, MySQL, and SQLite, offering a comprehensive solution for different database preferences.
- Dynamic Distance Metrics: Offers various distance options including Euclidean, cosine, Hamming, and more, allowing flexibility based on search needs.
- High-Dimensional Vectors: Supports vectors with dimensions up to 16,000, accommodating complex data structures for improved accuracy in searches.
- Approximate Indexing: Utilize HNSW and IVFFlat indexing methods to enhance query speed, effectively managing large datasets without sacrificing performance.
- Half-Precision and Binary Vectors: Enables storage of half-precision and binary vectors to optimize space usage, with dedicated indexing for each type.
- Custom Distance and Indexing Configuration: Users can fine-tune their configurations with support for different types of distance and custom indexing strategies, catering to specific application requirements.
- Neighbor Distance Attribute: Each returned record includes a neighbor_distance attribute, providing insight into proximity and relevance of results.