vearch

vearch/vearch

Distributed vector search for AI-native applications

2.3k
Stars
362
Forks
170
Open issues
73
Watchers
Go Apache-2.0Last pushed Jul 7, 2026

Overview

Vearch is a cloud-native distributed vector database designed for efficient similarity search of embedding vectors in AI applications, offering hybrid search capabilities, high performance, and scalability.

Categories

Tags

Similar tools

Install

go get github.com/vearch/vearch

README

Overview

Vearch is a cloud-native distributed vector database for efficient similarity search of embedding vectors in your AI applications.

Key features

  • Hybrid search: Both vector search and scalar filtering.

  • Performance: Fast vector retrieval - search from millions of objects in milliseconds.

  • Scalability & Reliability: Replication and elastic scaling out.

Document

Restful APIs

OpenAPIs

SDK

SDKDescription
Python SDKPython client for Vearch
Go SDKGo client for Vearch
Java SDKJava client for Vearch
Rust SDKRust client for Vearch

Usage Cases

Use Vearch as a Memory Backend

Vearch integrates with popular AI frameworks:

FrameworkIntegration
LangchainUse Vearch as vector store in Langchain
LlamaIndexIntegrate with LlamaIndex for knowledge bases
LangchaingoGo implementation of Langchain with Vearch support
LangChain4jJava implementation with Vearch integration

Real world Demos

  • VisualSearch: Vearch can be leveraged to build a complete visual search system to index billions of images. The image retrieval plugin for object detection and feature extraction is also required.

Quick start

Kubernetes Deployment

# Via Helm Repository
$ helm repo add vearch https://vearch.github.io/vearch-helm
$ helm repo update && helm install my-release vearch/vearch

# Or from Local Charts
$ git clone https://github.com/vearch/vearch-helm.git && cd vearch-helm
$ helm install my-release ./charts -f ./charts/values.yaml

Docker Compose Deployment

# Standalone Mode
$ cd cloud && cp ../config/config.toml .
$ docker-compose --profile standalone up -d

# Cluster Mode
$ cd cloud && cp ../config/config_cluster.toml .
$ docker-compose --profile cluster up -d

Other Deployment Methods

  • DeployByDocker: Deploy Vearch by Docker
  • SourceCompileDeployment: Compile Vearch from source code

Components

Vearch Architecture

Master: Responsible for schema management, cluster-level metadata, and resource coordination.

Router: Provides RESTful API: upsert, delete, search and query; request routing, and result merging.

PartitionServer (PS): Hosts document partitions with raft-based replication. Gamma is the core vector search engine implemented based on faiss. It provides the ability of storing, indexing and retrieving the vectors and scalars.

Technical Reference

Academic Citation

When using Vearch in academic or research projects, please cite our paper:

@misc{li2019design,
      title={The Design and Implementation of a Real Time Visual Search System on JD E-commerce Platform},
      author={Jie Li and Haifeng Liu and Chuanghua Gui and Jianyu Chen and Zhenyun Ni and Ning Wang},
      year={2019},
      eprint={1908.07389},
      archivePrefix=