OpenViSTAI · Agents · Blockchain · Crypto
Menu
AI Infrastructure & Serving

Rostam

Rostam is an open-source Go database engine that combines vector search and a key-value store, and can run as an embedded library, standalone server, or Raft-replicated cluster.

Independent OpenViST project profile, based on linked sources.

Rostam — OpenViST project profile in AI Infrastructure & Serving.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use Rostam when an application needs vector or hybrid retrieval together with key-value storage, and its Go library, standalone server, or Raft-cluster deployment matches the intended architecture.

Who it is for

  • Go developers embedding retrieval or key-value storage in an application.
  • Teams building vector, keyword, or hybrid search services.
  • Operators seeking a server-based or Raft-replicated retrieval backend.

Documented uses

  • Index and retrieve embeddings with HNSW, IVF, or Vamana indexes.
  • Combine dense, sparse, and BM25 retrieval for hybrid search.
  • Store and update key-value data alongside vector-search workloads.
  • Provide an MCP server for persistent agent memory and vector-database tools.
  • Cache eligible repeated chat-completions requests through an OpenAI-compatible proxy.
Before you choose

Requirements & limits

The repository is public and identifies the project as open source under the Apache-2.0 license. Its README labels the project beta and notes that APIs may change before a 1.0 release.

  • The engine can be embedded in a Go binary or run as a standalone server; cluster mode uses per-shard Raft.
  • Server interfaces include REST, gRPC, and binary TCP; the key-value store is documented through TCP and the Go library.
  • A Python client is documented, while direct library embedding is a Go use case.
  • The RAG CLI works with BM25 retrieval; hybrid dense-and-BM25 retrieval requires an OpenAI-compatible embedder configuration.
  • The published server quick start requires authentication when binding to a reachable address, and the container image requires an API key.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Run Rostam locally and add a vector-search collection

Start the standalone HTTP server on loopback, then create a collection, insert a point, and search it.

Before you start

  • A Rostam server executable named rostam-server.
  • A shell with curl available.

Steps

  1. Start the server bound to loopback: rostam-server -http 127.0.0.1:8080 -data ./data.

  2. Create a collection with a four-dimensional cosine vector: the command below.

    Documented command
    curl -s localhost:8080/v1/collections -d '{"name":"docs","config":{"dim":4,"metric":"cosine"}}'
  3. Insert a point: the command below.

    Documented command
    curl -s localhost:8080/v1/collections/docs/points -d '{"id":1,"vector":[0.1,0.2,0.3,0.4],"content":"hello rostam","upsert":true}'
  4. Search the collection: the command below.

    Documented command
    curl -s localhost:8080/v1/collections/docs/points/search -d '{"query":[0.1,0.2,0.3,0.4],"k":3}'

Expected outcome

A local HTTP server with a `docs` collection containing a point, followed by a vector-search request.

Guide limitations

  • Without an authenticator, the server refuses to bind a reachable address; this recipe deliberately binds only to loopback.
  • The example uses four-dimensional vectors; inserted and query vectors must match the collection dimension.
  • Rostam is identified as beta, and APIs may change before a 1.0 release.
COMPARE OPTIONS

Compare options for Vector search

These projects document a common task and share a project role. This is a source-based comparison, not an execution benchmark or a guarantee of interchangeability.

ProjectDocumented purposePlatformAccess and requirements
RostamIndex and retrieve embeddings with HNSW, IVF, or Vamana indexes.Linux, Self-hosted, ServerThe repository is public and identifies the project as open source under the Apache-2.0 license. Its README labels the project beta and notes that APIs may change before a 1.0 release.
LlmakerProvision a model together with vector search, embeddings, caching or observability services.CLI, Docker, Self-hostedThe README requires Docker and lists Linux and macOS for prebuilt binaries. It also documents installation through Go or from source. The project is labeled alpha.
Weaviate — weaviateStore application objects alongside vectors and retrieve similar items.Cloud, Self-hosted, ServerThe repository describes Weaviate as open source and lists Docker, Kubernetes and Weaviate Cloud deployment options.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
14 October 2026
Original website title
rostamlabs/rostam · Official homepage title · retained in its source language