vespa-engine/vespa

The AI search platform

Vespa – Large‑scale Search & AI serving platform

What it is – Vespa is an open‑source, high‑performance platform for serving search, recommendation, personalization and other AI‑driven workloads. It lets you store and query massive collections of vectors, tensors, text and structured data, run machine‑learning models at query time, and aggregate results—all within tens of milliseconds and at any scale.

Why it matters – Modern AI applications (semantic search, vector similarity, ranking, real‑time personalization) need to combine fast retrieval with on‑the‑fly model inference. Vespa provides the plumbing to do this on a distributed cluster with high availability, without you having to stitch together separate databases, feature stores, and inference servers.

Key capabilities

  • Vector & tensor indexing – store high‑dimensional embeddings and perform approximate nearest‑neighbor search.
  • Model inference at serving time – run Java or C++ ML models directly inside the query pipeline.
  • Rich query language – combine keyword, semantic, and structured filters; compute custom ranking functions.
  • Scalable, low‑latency architecture – designed for sub‑100 ms response times even on large, continuously changing data sets.
  • Hybrid cloud & on‑premise deployment – run on Vespa Cloud (free trial) or self‑hosted on Linux (AlmaLinux 8) with Docker support.
  • Extensible Java components – add custom ranking, ranking functions, or data processors.

Getting started

  1. Try the cloud service – sign up at vespa.ai/free-trial and deploy a sample application.
  2. Run locally – follow the Getting Started guide in the docs to install a single‑node Vespa instance.
  3. Build from source (optional) – the repo contains all C++ and Java code. Use the provided Docker dev image or set up a local AlmaLinux 8 environment, then run ./bootstrap.sh java && mvn install.
  4. Explore sample apps – the sample-apps repository shows typical use‑cases such as semantic search and recommendation.

Documentation & community

Contributing – Contributions are welcomed. See CONTRIBUTING.md for the process, Code‑map.md for the code layout, and TODO.md for open improvement ideas.

License – Apache 2.0 (see LICENSE).

Related

  • Project
  • Project
  • Project
  • Project
  • Project