Neighborly 0.0.1

There is a newer version of this package available.
See the version list below for details.
dotnet add package Neighborly --version 0.0.1
                    
NuGet\Install-Package Neighborly -Version 0.0.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Neighborly" Version="0.0.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Neighborly" Version="0.0.1" />
                    
Directory.Packages.props
<PackageReference Include="Neighborly" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Neighborly --version 0.0.1
                    
#r "nuget: Neighborly, 0.0.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Neighborly@0.0.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Neighborly&version=0.0.1
                    
Install as a Cake Addin
#tool nuget:?package=Neighborly&version=0.0.1
                    
Install as a Cake Tool

Neighborly

An Open-Source Vector database

neighborly-header

Neighborly is an open-source vector database that efficiently stores and retrieves vector data. Built with C#, it provides functionality for handling high-dimensional vectors, making it ideal for machine learning, data science applications, and more.

Features

  • Disk-backed Storage: Efficiently store large volumes of vector data with disk-backed lists.
  • High Performance: Optimized for fast read and write operations.
  • Unit Testing: Comprehensive test suite to ensure reliability and stability.

Code Overview

DiskBackedList

This class implements a list backed by disk storage, allowing for efficient handling of large data sets that exceed memory capacity. It provides methods for adding, retrieving, and managing vectors stored on disk.

VectorDatabase

The core class of Neighborly, VectorDatabase manages the vector data. It includes methods for inserting, updating, deleting, and querying vectors. The class ensures high performance through optimized indexing and retrieval algorithms.

Search Algorithms

Neighborly uses advanced search algorithms to query vector data efficiently:

  • k-Nearest Neighbors (k-NN): Finds the k closest vectors to a given query vector based on a specified distance metric (e.g., Euclidean distance).
  • Approximate Nearest Neighbor (ANN): Uses techniques like locality-sensitive hashing (LSH) to quickly find approximate nearest neighbors, providing a balance between speed and accuracy.
  • Range Search: Retrieves all vectors within a specified distance from a query vector.
  • Cosine Similarity Search: This method finds vectors that have the highest cosine similarity to the query vector. It is useful for applications involving text and other high-dimensional data.

Usage

To use Neighborly in your project, add a reference to the compiled DLL and utilize the provided classes and methods for managing vector data.

Contributing

We welcome contributions! If you have ideas for new features or have found bugs, please open an issue or submit a pull request. For major changes, please discuss them in an issue first.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contact

For any questions or further assistance, feel free to contact GitHub .

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.0.2 200 5/30/2024
0.0.1 170 5/22/2024