Weaviate: A Complete Guide
Weaviate

What is Weaviate?

AI-native vector database with hybrid search and built-in model integration

6-min readUpdated Aug 2026

Weaviate in 60 seconds

WHAT IT IS

An open-source, AI-native vector database that stores objects and their embeddings together and searches them by meaning.

WHY IT'S USED

Teams use it to power semantic search and RAG, with hybrid keyword-plus-vector ranking and embeddings built in.

STRENGTHS
  • +Hybrid search blends BM25 keyword scoring with HNSW vector matching
  • +Built-in vectorizer modules embed your data on import, no glue code
  • +Stores objects and vectors together with filters on structured fields
LIMITATIONS
  • Not a system of record: no ACID transactions and no relational joins
  • HNSW indexes sit in memory, so big datasets need real RAM budgeting
  • GraphQL-first query API has a steeper curve than plain SQL for newcomers
BEST KNOWN FOR
Semantic searchRAG pipelinesRecommendationMultimodal searchAI agents
Jump to at a glance, how it works, or quick start for the full picture on Weaviate.

At a glance

CategoryVector
PronunciationPronounced "wee-vee-eight," a play on "weave" plus the "-ate" suffix.
First released2019
Latest release1.39.0 (Aug 2026)
LicenseBSD-3-Clause
Written inGo
Runs onLinux, Macos, Windows
DeploymentSelf-hosted, Managed, Embedded
Wire protocolhttp, grpc
Query dialectgraphql
Consistencyeventual
ACID supportno
JSON supportnative
Full-text searchnative
Vector supportnative
HA modelraft
Managed byweaviate-cloud

What is Weaviate?

Weaviate is an open-source vector database built for AI applications. Instead of storing rows and running exact-match queries, it stores objects together with their vector embeddings and finds the ones closest in meaning to a query. You load JSON data into collections, Weaviate turns each object into a vector, and a search for "laptop" can surface a document about "notebook computers" even when the words never match. It also keeps the structured fields alongside each object, so you can filter by price or category while ranking by similarity.

The project started in Amsterdam and had its first open-source release in 2019. It is developed by Weaviate B.V., the company formerly known as SeMI Technologies, founded by Bob van Luijt, Etienne Dilocker, and Micha Verhagen. Weaviate is written in Go and licensed under the permissive BSD-3-Clause license. The company follows an open-core model: the core engine is free to self-host, and Weaviate Cloud offers the same engine as a managed service.

Adoption climbed as retrieval-augmented generation became the standard way to ground large language models in private data. Weaviate now backs search and AI features at companies like Morningstar, Instabase, Stack AI, Neople, and Finster AI, and its own case studies show clusters serving millions of queries. The appeal is a single engine that handles embeddings, keyword search, and vector search without stitching several systems together.

How Weaviate works

Weaviate runs as a standalone server you talk to over REST, GraphQL, and gRPC. When an object arrives, a vectorizer module turns it into an embedding, either by calling a model provider like OpenAI or Cohere or by using vectors you supply yourself. The object and its vector are stored together, and the vector is added to the index that makes similarity search fast.

That index is HNSW, a graph of vectors where each search walks from node to node toward the nearest neighbors instead of scanning everything. HNSW is approximate, trading a little recall for a large speed gain, and it lives in memory, which is why RAM planning matters at scale. Weaviate also keeps an inverted index for BM25 keyword scoring, so a hybrid query can run both and fuse the two rankings into one result set.

For durability and scale, Weaviate persists data with an LSM-tree storage engine and shards collections across nodes. A Raft consensus layer manages schema and cluster membership, and replication keeps copies of each shard on multiple nodes so the cluster survives a node loss. Multi-tenancy isolates each tenant into its own shard, which is how single clusters serve thousands of separate users without mixing their data.

Key concepts

Collections and objects

Data lives in collections, the rough equivalent of a table, and each object is a JSON record with typed properties plus one or more vectors. A collection defines its properties, its vectorizer, and its index settings up front. Objects carry both the structured fields you filter on and the embeddings you search by, kept together in one place.

Vectorizer modules

Weaviate embeds data through pluggable modules. A text2vec module calls a provider such as OpenAI, Cohere, or Hugging Face at import time, or you can bring your own precomputed vectors. Because embedding is built in, the same query text is vectorized the same way on write and on read, which keeps results consistent without extra glue code.

HNSW vector index

Similarity search runs on an HNSW graph, where each query walks the graph toward its nearest neighbors rather than scanning every vector. The index is approximate, trading a little recall for a large speed gain, and it is held in memory. Quantization options like product and binary compression shrink that footprint when datasets grow large.

Hybrid search

Weaviate keeps an inverted index for BM25 keyword scoring alongside the vector index. A hybrid query runs both, then fuses the two ranked lists with a weighting you control through an alpha value. This catches exact terms like product codes that pure vector search can miss, while still ranking by meaning for everything else in the query.

Filtering and multi-tenancy

Because structured properties sit next to each vector, you can filter by price, date, or category in the same request that ranks by similarity. Multi-tenancy takes this further by isolating each tenant into its own shard. One cluster can host thousands of tenants with their data kept fully separate, the common pattern for SaaS applications.

Replication and sharding

Collections shard across nodes so a dataset can outgrow a single machine. A Raft consensus layer manages the schema and cluster membership, while replication keeps copies of each shard on several nodes. Reads can be served from any replica, and the cluster keeps answering queries when a node drops, with tunable consistency per request.

Weaviate by the numbers

Live GitHub adoption, updated daily

#4 of 11 open-source vector databases by GitHub stars
GitHub stars
16.7k
+117 in 30d
Forks
1.4k
Weekly growth
+15
stars in the last 7 days
Last commit
today
Aug 2026

Who uses Weaviate

A handful of the companies running it in production

MorningstarInstabaseStack AIkapa.aiNeopleFinster AIDocsBot

When to use Weaviate

Best for

Semantic search over text

Search that matches meaning rather than exact words, so a query finds relevant documents even when the phrasing differs. Built-in embeddings and HNSW make this the core job Weaviate is designed for.

Retrieval for RAG

Grounding a language model in your own data by retrieving the most relevant chunks for each prompt. Hybrid search plus generative modules let Weaviate fetch context and call the model in one pipeline.

Recommendation and multimodal

Finding items similar to a product, image, or user profile by comparing their vectors. Weaviate handles text, images, and other media through the matching vectorizer modules for each data type.

Multi-tenant AI features

Serving many customers from one cluster with each tenant isolated in its own shard. This keeps per-tenant data separate while sharing infrastructure, the usual pattern for AI features inside a SaaS product.

Not ideal for

System-of-record storage

Weaviate has no ACID transactions and is meant to index data whose source of truth lives elsewhere. Keep canonical writes in Postgres or a similar database and sync objects into Weaviate for search.

Relational joins and analytics

There are no multi-table joins, group-bys, or heavy aggregations here. For reporting, rollups, and column scans over billions of rows, a relational or analytics engine fits that work far better.

Datasets far larger than RAM

The HNSW index sits in memory, so a corpus that dwarfs your RAM budget gets expensive fast. Quantization and disk-based indexes help, but memory-bound scaling is still the main cost to plan around.

Simple exact-match lookups

If you only ever fetch rows by an exact key or a plain filter, a vector database is overkill. A key-value store or relational table answers those lookups with less operational weight and less memory.

Weaviate vs alternatives

Head-to-head specs against the top 5 alternatives

Weaviate vs Pinecone
Weaviate
Pinecone
Identity
License
BSD-3-Clause
Proprietary
First released
2019
2021
Capabilities
ANN algo
HNSW
proprietary
Hybrid search
Native
Native
Vector
Native
Native
Ecosystem
Managed providers
1
1
Integrations
4
4
Use cases
Best for
Semantic search, RAG pipelines, and AI-native applications requiring hybrid vector and keyword search
Production-scale vector search with zero infrastructure management and enterprise security requirements
Not ideal for
Traditional relational workloads, complex transactions, or use cases requiring strong ACID guarantees
Self-hosted deployments, on-premise requirements, cost-sensitive prototyping, or workloads needing open-source flexibility
Weaviate vs Qdrant
Weaviate
Qdrant
Identity
License
BSD-3-Clause
Apache-2.0
First released
2019
2021
Capabilities
ANN algo
HNSW
hnsw
Hybrid search
Native
Native
Vector
Native
Native
Ecosystem
Managed providers
1
1
Integrations
4
11
Use cases
Best for
Semantic search, RAG pipelines, and AI-native applications requiring hybrid vector and keyword search
Semantic search, RAG pipelines, recommendation engines, image similarity, and AI agent memory with advanced filtering
Not ideal for
Traditional relational workloads, complex transactions, or use cases requiring strong ACID guarantees
Traditional relational queries, OLTP workloads, time-series data, or use cases not involving vector embeddings
Weaviate vs Milvus
Weaviate
Milvus
Identity
License
BSD-3-Clause
Apache-2.0
First released
2019
2019
Capabilities
ANN algo
HNSW
hnsw, ivf, diskann, scann
Hybrid search
Native
Native
Vector
Native
Native
Ecosystem
Managed providers
1
1
Integrations
4
7
Use cases
Best for
Semantic search, RAG pipelines, and AI-native applications requiring hybrid vector and keyword search
Large-scale vector similarity search, RAG applications, and AI-powered recommendations
Not ideal for
Traditional relational workloads, complex transactions, or use cases requiring strong ACID guarantees
Traditional relational data, OLTP workloads, or applications not using embeddings
Weaviate vs Chroma
Weaviate
Chroma
Identity
License
BSD-3-Clause
Apache-2.0
First released
2019
2022
Capabilities
ANN algo
HNSW
hnsw
Hybrid search
Native
Native
Vector
Native
Native
Ecosystem
Managed providers
1
1
Integrations
4
4
Use cases
Best for
Semantic search, RAG pipelines, and AI-native applications requiring hybrid vector and keyword search
AI/LLM applications, RAG pipelines, semantic search, and rapid prototyping of embedding-based apps
Not ideal for
Traditional relational workloads, complex transactions, or use cases requiring strong ACID guarantees
General-purpose data storage, OLTP, analytics, or production workloads requiring high availability
Weaviate vs OpenSearch
Weaviate
OpenSearch
Identity
License
BSD-3-Clause
Apache-2.0
First released
2019
2021
Capabilities
ANN algo
HNSW
Hybrid search
Native
Native
Vector
Native
Native
Ecosystem
Managed providers
1
3
Integrations
4
7
Use cases
Best for
Semantic search, RAG pipelines, and AI-native applications requiring hybrid vector and keyword search
Full-text search, log analytics, observability, and security analytics at scale
Not ideal for
Traditional relational workloads, complex transactions, or use cases requiring strong ACID guarantees
OLTP workloads, strong consistency requirements, or relational data modeling

Quick start

Run Weaviate with Docker, connect with the Python client, create a collection, and run your first semantic search. A few minutes end to end.

Start Weaviate with Docker (fastest)
docker run -p 8080:8080 -p 50051:50051 \
  cr.weaviate.io/semitechnologies/weaviate:1.39.0
Install the Python client
pip install -U weaviate-client
Connect and create a collection
import weaviate
from weaviate.classes.config import Configure

client = weaviate.connect_to_local()

client.collections.create(
    "Article",
    vectorizer_config=Configure.Vectorizer.text2vec_openai(),
)
Add data and search by meaning
articles = client.collections.get("Article")
articles.data.insert({"title": "A guide to notebook computers"})

results = articles.query.near_text(query="laptop", limit=3)
for obj in results.objects:
    print(obj.properties)

client.close()

The search for "laptop" finds the article about notebook computers because Weaviate matches on meaning. Swap in your own vectorizer or bring precomputed vectors, or browse and manage collections visually in a GUI.

Frequently asked questions

What is Weaviate used for?
Weaviate is used to add semantic and vector search to applications: retrieval for RAG pipelines, recommendation systems, image and multimodal search, and search boxes that match on meaning rather than exact keywords. Because it stores objects together with their embeddings and offers hybrid keyword-plus-vector ranking, teams reach for it when a language model needs to be grounded in private data, or when a plain keyword search misses results that are relevant but phrased differently.
Is Weaviate free and open source?
Yes. The Weaviate core engine is open-source software under the permissive BSD-3-Clause license, free to self-host, modify, and run in production with no license fees. The company behind it, Weaviate B.V., follows an open-core model and also offers Weaviate Cloud, a managed service that runs the same engine and charges for hosting rather than for the software. You can start self-hosted and move to the managed service later, or the other way around.
Is Weaviate a vector database?
Yes. Weaviate is a purpose-built vector database. It stores each object alongside one or more vector embeddings and indexes those vectors with HNSW for fast approximate nearest-neighbor search. What sets it apart from a bare vector index is that it also keeps the structured properties next to each object and maintains a keyword index, so you can filter, run BM25 keyword search, and rank by vector similarity in a single query rather than bolting several systems together.
Who makes Weaviate and where is it from?
Weaviate is developed by Weaviate B.V., a company based in Amsterdam that was formerly known as SeMI Technologies. It was founded by Bob van Luijt, Etienne Dilocker, and Micha Verhagen, and had its first open-source release in 2019. The engine is written in Go. The company funds ongoing development through Weaviate Cloud, its managed hosting service, while keeping the core database fully open source under the BSD-3-Clause license.
How is Weaviate different from a keyword search engine?
A keyword engine matches the literal terms in a query, while Weaviate ranks results by the meaning of the query, using vector embeddings so that related wording still matches. In practice you rarely have to choose: Weaviate keeps a BM25 keyword index too and can run a hybrid query that fuses keyword and vector scores. That combination catches exact terms like product codes that pure vector search can miss, while still surfacing results that are relevant but worded differently.

Skip the config files

Connect to Weaviate in 30 seconds. Browse tables, run queries, and edit rows visually, on localhost, self-hosted, or cloud.

Open Weaviate in 1bench