Remix.run Logo
gardnr 16 hours ago

pgVector is great and so is FAISS, but those are just a subset of what you get from Milvus. If all you need to do is RAG over 50Mb of documents then pick the right tool for the job. I use Chroma for a lot of projects.

Then, what if you want hybrid search, or different IVF variants, or disk-based search, or horizontal scaling, or something that leverages SIMD, or sparse vectors? Milvus is great.

jankovicsandras 12 hours ago | parent | next [-]

You can do hybrid search in Postgres.

Shameless plug: https://github.com/jankovicsandras/plpgsql_bm25 BM25 search implemented in PL/pgSQL ( Unlicense / Public domain )

The repo includes plpgsql_bm25rrf.sql : PL/pgSQL function for hybrid search ( plpgsql_bm25 + pgvector ) with Reciprocal Rank Fusion; and Jupyter notebook examples.

pietz 12 hours ago | parent | prev | next [-]

You start by underselling what can be done with Postgres and then follow up with the upper end of requirements that most projects won't need. My argument is exactly what you conveniently left out: The big bulk between the two.

kgeist 14 hours ago | parent | prev [-]

How does Milvus compare to OpenSearch/ElasticSearch for hybrid search?