← all repositories
lanterndata/lantern

Postgres vector search that builds its indexes somewhere else

Lantern adds HNSW vector search and embedding generation to PostgreSQL, letting you build search indexes outside the database server to avoid production noise.

889 stars Rust RAG · SearchData Tooling
lantern
Not currently ranked — collecting fresh signals.
star history

What it does

Lantern is a PostgreSQL extension that stores vector data, generates embeddings via models like CLIP and Hugging Face, and runs approximate nearest-neighbor search using a custom lantern_hnsw index. It wraps the single-header usearch HNSW library into a standard Postgres extension, exposing L2 squared, cosine, and Hamming distance operators through familiar SQL query syntax.

The interesting bit

The standout feature is an external indexer that can construct the HNSW graph outside the database—even on a separate instance—so heavy CREATE INDEX workloads don’t starve your production primary of CPU or I/O. It also claims to speak pgvector’s vector type natively, which avoids a schema migration circus for existing pgvector users.

Key highlights

  • Built on usearch, a single-header HNSW implementation, exposed as a native Postgres index type with tunable M, ef, and ef_construction parameters.
  • Supports parallel, out-of-band index creation to avoid blocking or overloading production database servers.
  • Provides embedding generation helpers for popular models, though the README focuses more on search mechanics than the embedding pipeline.
  • Claims to match or outperform pgvector and pg_embedding (Neon) on index build time, query throughput, and latency, per self-published benchmark charts.
  • Compatible with pgvector’s data type, suggesting a drop-in migration path for existing vector schemas.

Caveats

  • Performance comparisons against pgvector and pg_embedding are presented as self-published charts without disclosed hardware, dataset, or methodology, so treat the “outperforms” claims as marketing material until independently verified.
  • Several advertised capabilities—such as hardware-accelerated distance metrics, autotuned index parameters, and 1-byte/2-byte vector element support—live on the roadmap and are not yet available.

Verdict

Postgres shops that need vector search and are chafing against pgvector’s index-build overhead should test Lantern, particularly if the external indexer fits their ops workflow. If you are not running Postgres, this extension offers no compelling reason to start.

Frequently asked

What is lanterndata/lantern?
Lantern adds HNSW vector search and embedding generation to PostgreSQL, letting you build search indexes outside the database server to avoid production noise.
Is lantern open source?
Yes — lanterndata/lantern is open source, released under the AGPL-3.0 license.
What language is lantern written in?
lanterndata/lantern is primarily written in Rust.
How popular is lantern?
lanterndata/lantern has 889 stars on GitHub.
Where can I find lantern?
lanterndata/lantern is on GitHub at https://github.com/lanterndata/lantern.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.