Skip to content
RU

What people actually install to build RAG in 2026: a two-registry measurement

TL;DR. No survey exists on "the share of teams using RAG pattern X" — but download counters do.

No survey exists on "the share of teams using RAG pattern X" — but download counters do. We queried them directly, and the first thing visible is that the two most popular packages in this stack have nothing to do with RAG.

The second is more interesting: an extension to ordinary PostgreSQL is nearly as prevalent as every dedicated vector store combined — 37.3M against 38.0M. And JavaScript and Python have entirely different orchestrators.

Check your site's headers →

What people actually install when building RAG

No survey exists on "the share of teams using approach X", but something else does exist and can be counted: how many times each package was downloaded. On 27 August 2026 we queried the counters directly. Python, per month:

PackageDownloadsWhat it is
openai451,887,712provider client
tiktoken277,006,017token counting
langchain254,529,872orchestrator
anthropic208,158,062provider client
weaviate-client111,389,183vector store
langgraph70,260,618orchestrator
pgvector37,344,467vectors inside PostgreSQL
sentence-transformers32,957,395embedding generation
qdrant-client18,335,690vector store
faiss-cpu15,244,489in-memory vector search
chromadb12,674,715vector store
llama-index7,309,271orchestrator
pinecone7,002,703vector store
haystack-ai831,964orchestrator

The first thing that stands out: the two most-downloaded packages in this list have nothing to do with RAG. A provider client and a token counter are needed by anyone calling a model at all, regardless of whether they are building document search.

Postgres alone nearly equals every dedicated store combined

Add up the dedicated vector databases and compare against an extension to ordinary PostgreSQL:

ApproachDownloads per month
Qdrant + Chroma + Pinecone combined38,013,108
pgvector — vectors inside PostgreSQL37,344,467

Under two percent apart. That is, the approach of "put the vectors in the database you already have" is comparable in prevalence to every dedicated vector store combined.

It fits our driver measurement too: PostgreSQL leads both ecosystems by a wide margin. If the database is already running and already maintained, adding an extension costs less than standing up and operating a second storage system.

A caveat on the weaviate row. Its Python client shows 111 million downloads a month while its JavaScript client shows 32 thousand a week. A ratio in the thousands is not explained by popularity alone; more likely the package arrives as somebody else’s dependency or is installed repeatedly in builds. We excluded it from the comparison above and do not treat that figure as a measure of use.

JavaScript and Python have different orchestrators

The same measurements in npm, per week:

PackageDownloads
openai36,526,755
@anthropic-ai/sdk35,921,466
ai (the Vercel toolkit)23,121,339
@ai-sdk/openai11,359,334
@langchain/core5,616,436
langchain2,967,570
@pinecone-database/pinecone919,445
@qdrant/js-client-rest744,676
pgvector452,820
chromadb274,852

Two differences between the ecosystems matter.

The orchestrator is different. Python is dominated outright by LangChain. In JavaScript its version draws three million a week against the Vercel toolkit’s twenty-three — eight times more. Anyone writing in both languages should know the "standard" tool is not shared.

The provider balance is different. In JavaScript Anthropic’s client has drawn essentially level with OpenAI’s — 35.9 million against 36.5. In Python it trails twofold: 208 million against 452. The same pair of providers, a different ratio.

What these numbers do not say

Downloads are not projects and not users. The bulk comes from build pipelines. A package pulled on every build outranks one installed once.

A week and a month are not directly comparable. The npm and PyPI figures come from different windows and differently sized ecosystems; comparing across them is invalid, comparing within one list is fine.

Downloading a client does not mean RAG. The openai package is installed both by someone building document search and by someone simply asking a model to rewrite text. The counter cannot separate them.

No survey of the patterns in use exists. No vendor and no researcher publishes what share of teams uses reranking, hybrid search or semantic chunking. Anything of the form "85% of teams apply…" has no source.

What these numbers do show is the relative weight of approaches within one ecosystem. And the most practical point: before standing up a separate vector store, check whether an extension to the database you already run would do. By prevalence that route gives up nothing.

To check what database answers for you and how fast, use the port checker.

Learn more

Frequently Asked Questions

pgvector or a dedicated DB?

pgvector: < 1M vectors, simplicity. Qdrant: > 1M, speed. Weaviate: native hybrid. For 90% of use cases — pgvector.

Best embedding model?

OpenAI text-embedding-3-small ($0.02/1M) — cheapest + good. text-embedding-3-large — best quality. Open: bge-m3 multilingual free.

How to measure RAG quality?

Ragas: answer_relevancy, context_precision, faithfulness. LlamaIndex evals. Manual eval of 50+ examples.

Pure long context vs RAG?

LC: simpler code, higher cost + latency. RAG: cheaper, scales. Hybrid: RAG for retrieval + LC for reasoning.

Try the live tool that powered this guide

Free plan — 10 monitors, checks every 5 min, no card required. Upgrade for 1-minute interval and multi-region monitoring.