comet

(β˜… 131)

A Vector Store written in Go - Supports hybrid retrieval over BM25, Flat, HNSW, IVF, PQ and IVFPQ Index with Quantization, Metadata Filtering, Reranking, Reciprocal Rank Fusion, Soft Deletes, Index Rebuilds and much much more

  • .gitattributes
  • .gitignore
  • aggregation.go
  • aggregation_test.go
  • bm25_index.go
  • bm25_index_document_filter_test.go
  • bm25_index_search.go
  • bm25_index_search_test.go
  • bm25_index_test.go
  • clustering.go
  • clustering_test.go
  • distance.go
  • distance_test.go
  • doc.go
  • document_filter.go
  • document_filter_test.go
  • flat_index.go
  • flat_index_document_filter_test.go
  • flat_index_search.go
  • flat_index_search_test.go
  • flat_index_test.go
  • fusion.go
  • fusion_test.go
  • go.mod
  • go.sum
  • hnsw_index.go
  • hnsw_index_document_filter_test.go
  • hnsw_index_search.go
  • hnsw_index_search_test.go
  • hnsw_index_test.go
  • hybrid_search_index.go
  • hybrid_search_index_test.go
  • index.go
  • index_search.go
  • ivf_index.go
  • ivf_index_document_filter_test.go
  • ivf_index_search.go
  • ivf_index_search_test.go
  • ivf_index_test.go
  • ivfpq_index.go
  • ivfpq_index_document_filter_test.go
  • ivfpq_index_search.go
  • ivfpq_index_search_test.go
  • ivfpq_index_test.go
  • LICENSE
  • limiter.go
  • limiter_test.go
  • Makefile
  • metadata_index.go
  • metadata_index_search.go
  • metadata_index_search_test.go
  • metadata_index_test.go
  • node.go
  • node_test.go
  • pq_index.go
  • pq_index_document_filter_test.go
  • pq_index_search.go
  • pq_index_search_test.go
  • pq_index_test.go
  • quantizer.go
  • quantizer_test.go
  • README.md
  • reranker_test.go
  • storage.go
  • storage_compaction.go
  • storage_compaction_test.go
  • storage_memtable.go
  • storage_memtable_test.go
  • storage_merge.go
  • storage_merge_test.go
  • storage_provider.go
  • storage_provider_test.go
  • storage_segment.go
  • storage_segment_test.go
  • storage_test.go

# Installation Guide

1. Get the code
git clone https://github.com/0xnyn/comet

Downloads the entire project code from GitHub to your computer.

cd comet

Moves into the project folder you just downloaded.

2. Go

Medium Recommended
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Go The Go compiler and toolchain.
go build ./...

Compiles the Go program into an executable.

go run .

Runs the Go program directly without a separate build step.

βœ… If the build finishes without errors, it worked. If you used go run ., check the terminal output.

3. Make

Medium
Prerequisites
  • Git Needed to download the project code from GitHub.
  • Make Usually pre-installed on Linux/macOS. On Windows, install separately (e.g. via MSYS2 or WSL).
make deps

Compiles the code based on the generated build configuration to produce an executable.

make test

Compiles the code based on the generated build configuration to produce an executable.

make lint

Compiles the code based on the generated build configuration to produce an executable.

make check

Compiles the code based on the generated build configuration to produce an executable.

βœ… If it finishes without errors, it worked. Try running the generated executable directly.

Pulled directly from this repo's README.

// repository documentation